Calendar synchronization of Ubuntu and Ubuntu Touch

  • Hello @avex ,
    If you don't want to use any "cloud" based solution you can export your calendar as ICS and import it ; though the operation is not automated and could be annoying on the long term.

    Synchronizing calendar might occur using a "cloud" system.
    According to me synchronizing means that any operation on one side is replicated on the other side ; so it must use some kind of service put in the middle of the two systems.

    With UT I use NextCloud, you can use any NextCloud service available or create your own self-hosted solution.

    I hope this will help you find what you want.

  • Hello @AppLee ,

    thank your very much for your answer. I thought about to synchronize via WiFi or even a usb-cable when I'm at my PC. This would be fine for me .... Are they any apps or solution which make this possible?
    Thank you.

  • @avex Installing NextCloud on your desktop will allow you to sync when your phone is connected to your home network.

    If you want mobile sync, than you will have to open a port from internet to your desktop acting as a server.

    But NextCloud is the solution I know, maybe your calendar app on your desktop can sync ICS files or allow synchronizing with other softwares...

    The calendar app in UT is compatible with CalDav protocol, so if your desktop app can work as a CalDav server than you don't need anything else.

    Good luck

  • I am also using a self-hosted NextCloud installation for syncing calendar and contacts between desktop and Ubuntu Touch smartphone.

    I wonder: Has anybody ever tried a direct sync using syncevolution on both sides? and/or

  • This is something I'm very interested in as well. I come from a background of using Palm Pilots, where syncing was done directly between the Palm device and the desktop computer (in the case of my Linux desktop, that was the program jpilot).

    So it drives me crazy that it can't be done with smart phones (Android, LineageOS, or Ubuntu Touch) and a desktop. Instead, a third party, like Google, seems to be required. I'd rather not be forced to share all my daytimer info with the likes of Google.

    Since syncing directly between a Palm Pilot and a desktop was possible, I don't understand why it's not possible with a smart phone and a desktop.

  • @MarkG_108
    You're right, it should be this way. But companies intend to keep their users locked in their ecosystem.

    As for UT, these features are important, but it's not an easy task. Palm was able to build a desktop server to handle their phone. And I'm trying to remember, but I think I needed to use their calendar to be synced....

    Now you have some options, keep us posted about what you will discover. I'm sure many will be interested.

  • Hello Guys,

    thank your for sharing your experience. I made similar experience as Kalle and I get a bit upset when the easiest things become something impossible in this world.

    Anyway, I will make some effort to get this done and would let you know about the results. But don't expect much because I'm not an expert and certainly not with Ubuntu.


  • @avex

    Alfred Neumayer's app GhostCloud makes interacting and downloading files from NextCloud much easier than it used to be, but I agree with you and others: closer integration with NextCloud would be really good.

  • @AppLee For syncing the information from Palm Pilot with the desktop application JPilot, the program pilot-link was used.

    Well, the stuff below about "SyncEvolution" was wrong. Not a solution.

    I notice that Evolution has its own syncing program, called SyncEvolution, which is described as being able to, "Sync personal information data using SyncML and CalDAV/CardDAV (CLI)".

    1.) Ubuntu package for SyncEvolution
    2.) Homepage of SyncEvolution

    Well, I'll give this a try, but I doubt it will work. Likely, as others have said, some sort of "Cloud" service needs to be set up (though I've tried using the localhost on my desktop in the past to set up some sorta syncing thing, and that failed).

  • Hi,
    I used to sync my desktop (thunderbird+lightning) with my ubuntu touch phone through radicale.
    This post of Jonathan, shows the walk-through very well.
    It worked well, but I no longer use it because I needed to have it available even without a phone and finally use the Horde server of our mail system (similar to what is done with Nextcloud).
    At the time, I also could not sync with ssh enabled. But without ssh it worked well.

  • @AppLee With my LineageOS phone, I tried exporting my Calendar entries to my desktop (IE, to Orage, the XFCE calendar, or Lightning, the Thunderbird calendar), and it worked. But, subsequent imports by the desktop calendar programs resulted in duplicate entries. It just looked very sloppy after a while.

  • Warning: what's written below is something I've done on my own phone, but others have suggested it's a bad idea (see following comment from UniSuperBox). For me it's the easiest way to directly have a copy of a calendar on both my desktop computer and my phone, and thus I share it as a possible solution. But, I acknowledge that others with more experience advise against it. And, I also acknowledge that some people hate command-line programs, so what I suggest below may simply not be of interest.

    Command-line Linux programs work on Ubuntu Touch. So, a possible solution would be to install something like calcurse (it's available as a package) on both your Ubuntu phone and (presumably) Ubuntu desktop. Then simply "sync" by replacing the "todo" and "apts" files, via a file manager, as needed (IE, whenever one of these files has been altered on either the phone or desktop). These files are located in the following directory of both the phone and the desktop: ~/.calcurse

    To install it, run the following from your desktop while your phone is plugged in via USB:

    mark@debian:~$ adb shell
    * daemon not running; starting now at tcp:5037
    * daemon started successfully
    phablet@ubuntu-phablet:~$ sudo mount -o remount,rw /
    [sudo] password for phablet: 
    phablet@ubuntu-phablet:~$ sudo apt update
    phablet@ubuntu-phablet:~$ sudo apt install calcurse
    phablet@ubuntu-phablet:~$ sudo mount -o ro,remount /

    And that should install it. The last command is to leave the system as read only (ro), which I gather is important. I obtained the commands to allow for usage of APT from the description on installing Anbox (see here:


    If you don't mind command-line programs, the following are ones that I find useful.
    Midnight Commander (known as "mc") is a recommended command-line file manager. Also, "locate", which helps with finding files after running "sudo updatedb", is also a useful command-line program.

  • No, remounting the system as read-only is not undone after the terminal is closed. It's also more possible to break the system when it is mounted read-write and OTA updates may erase your changes. Overall, I think you'll be very upset with using the system this way.

    The best way to install packages from the Ubuntu archives on your device is with Libertine:

  • @UniSuperBox Thanks for the feedback. I got the commands from the instructions on setting up Anbox. See

    Regarding it not being "undone" after the terminal is closed, yes, I see in these instructions that they do specify explicitly remounting as "ro" before exiting (at least in the "Troubleshooting" section, though odd that the command wasn't included in the prior sections). So yes, best to include this. As you say, best probably to stick with Libertine (though given its failure, at least on my phone, to run GUI applications, I sorta forgot about it). [edited to add] I tried to install a command-line program on Libertine, and there's no way that I can see to run it. Libertine seems to be exclusively for GUI programs.

    Anyway, I'm guessing that given the instructions for Anbox (which does involve installing from APT) that installing a small command-line program can't be any more harmful, provided the system is returned to read-only status. Regardless, I did update my comment above to (a) make sure read-only status was returned to and (b) to include a warning based upon your feedback.

  • @UniSuperBox Just to add, I did try installing xterm on Libertine, and it works. But, there's no keyboard. So, there's no way to enter commands. So, I'm guessing that Libertine as a space to run commandline programs simply will not work.

  • @MarkG_108
    Since you mention synchronizing a Palm Pilot (had one as well!) from the desktop PC, wouldn't it be much simpler to sync the UT phone from the desktop too? I'm thinking of the rsync command. Once the commands are figured out, a simple bash file could be created and a desktop launcher linked to it to make it even quicker to use.

    I'm surprised syncevolution didn't work, I recall reading about it on the forum, although I didn't test it.

  • @MarkG_108 said in Calendar synchronization of Ubuntu and Ubuntu Touch:

    I got the commands from the instructions on setting up Anbox.

    I'm not 100% sure but I think anbox is more deeply integrated that in fact it has to be in the real rootfs and wouldn't work when installed in a libertine container.
    Besides that, anbox is early alpha, so I wouldn't take things necessary there as a pattern/template to do more standard things.
    Once anbox is stable - whenever that might be - all the tampering with the rootfs wouldn't be needed anymore.

  • @normandc Regarding syncevolution, I only briefly dabbled with it. It may be possible to get it working, but that's beyond my capabilities.

  • How to setup Google Calendar synchronization via CalDAV on the Ubuntu smartphone

    Google allows a Google Calendar account to synchronize via the CalDAV service. To add a Google Calendar account using Generic CalDAV perform the following stepssteps:

    Select Accounts > Add New online Account > Generic CalDAV.
    On the CalDAV screen:
    Enter the full email address in the Username fields.
    Enter the password used to access Google Calendar in the Password field.
    In the Server Address field, enter<emailaddress>/events where <emailaddress> is the Google email address.
    Click Save.

Log in to reply