Migrating from Apple: Mail&Calendar

Migrating from Apple: Mail&Calendar

They’re all dead; they just don’t know it yet!

For the last decade Apple have been doing their best in desperate attempts to destroy Steve Jobs's legacy. Hardware became less reliable while every MacOS release became more buggy. I've been witnessing how macbooks transformed from a perfect tool "open lid & just work" to a some kind of an unstable linux distribution that requires more and more attention. So for me the question "whether to move from Mac" turned to "when I'm going to do that" and, apparently, 2022 gave me an answer - "right now!". It became
quite obvious that the moment when all Apple devices turn into a bricks is just a matter of time (or at least it was me thinking that). And the first step I decided to take was the Mail and Calendar App.

My setup

As this is the first article about throwing Apple away, I will take some time to describe the hardware and operating systems I chose.

OS

For the primary OS I'll use Ubuntu LTS as it looks like the most user-friendly Linux desktop distribution at the moment. The reasons behind this decision were:

As for the mobile OS, I chose the HarmonyOS family made by Huawei. When it comes to modern mobile devices and operating systems, an average user found himself in a situation where there is no choice really. If we don't want to use the iOS, then we doomed to stick with the Android. There are very few others, like PureOS or some stillborn clones of SailfishOS, but the problem with using non-mainstream mobile OS is applications. There are NONE. Alright, it's not exactly true, there are SOME, but don't expect to get your favorite browser or messaging app, not to mention e-shop apps, banking apps etc.

In my case, the choice of HarmonyOS was dictated by the mobile devices that I get as a replacement for iPhone and iPad. HarmonyOS claims to be Huawei-developed software, not sure if that is the case, but from the user perspective it looks exactly like a latest Android release. You can install APKs like in any Android, no problems with that. The main difference is that you will not find anything related to Google - looks like Huawei completely stripped it out and installed so-called Huawei Media Services instead - analogue to the GMS. It means, that any android application which relies on GMS for some reason will not work properly (if it even starts). Nevertheless I decided to give it a shot.

Hardware

At first, I wanted to go all-in with Huawei - get laptop, phone and tablet. Since MS Windows is not an option, I started to google any info regarding running Linux on Huawei laptops. In particular, I was interested in Huawei Matebook 16 with Ryzen 7 5800H on board, because it was a top-performace Huawei laptop on RU market at the moment. Unfortunately, I stumbled upon an issue on a GitHub that described problems with sound on similar hardware (Ryzen 5 4600H). I watched the ongoing discussion there (which I found quite entertaining really) and it looked like it was going nowhere.

At the one of my previous jobs a Company-issued alternative to a Macbook was a Thinkpad T or P series, so I just checked out the list of Ubuntu-certified devices and picked this one. It says that p14s was certified for 20.04, but I installed the most recent 22.04 because why not. And, as I expected, everything worked out of the box - touchpad, media keys, wi-fi, even a fingerprint reader.

As for a smartphone - I picked the top 2022 model from Huawei - it was P50 Pro with gorgeous display and fast CPU by Qualcomm.

Tablet of choice was Huawei MatePad Pro GOT-W29 with almost the same CPU as a smartphone.

Software

Since I was an Apple user for a decade, there are certain things that I expect from the Calendar app on all my devices:

And it was not such an easy task to get all these common features on the devices I've chosen. This is where Apple is still kicking - the seamless ecosystem with integrations across apps with the iCloud as a synchronization base. Probably someday I'll consider bringing up my own cloud storage (go check the list of Awesome selfhosted apps), but right now I just wanted to use my mail and calendar on non-apple devices. It was clear that even paid proprietary software cannot give me the drop-in replacement After spending some time looking at the alternatives on the market I ended up with:

Configuration

While the mobile apps configuration is pretty straightforward (just filling in all the credentials and you're good to go), teaching the Ubuntu to show your events in a native Gnome calendar was quite a challenge, mainly because you have to figure out what packages you need to install in order to make Thunderbird-Evolution synchronization work.


Here are the steps on how to do that on Ubuntu 22.04 desktop:

  1. Get rid of default snap-based Firefox installation. We're going to install Thunderbird as a deb package anyway, might as well do that for the browser. After that, install everything from the mozillateam PPA repo:

    $ sudo snap remove firefox
    $ sudo add-apt-repository ppa:mozillateam/ppa
    $ sudo apt update
    

    Also, you need to set up preferences for Mozilla packages by putting this:

    Package: *
    Pin: release o=LP-PPA-mozillateam
    Pin-Priority: 1001
    

    to /etc/apt/preferences.d/mozilla-firefox. And then you can install Firefox and Thunderbird:

    $ sudo apt install -y firefox thunderbird thunderbird-gnome-support
    
  2. Install necessary packages for Evolution integration to work:

    $ sudo apt install -y gnome-calendar evolution-data-server-common evolution-data-server libcamel-1.2-63 libecal-2.0-1 libedata-cal-2.0-1
    
  3. Launch Thunderbird desktop app and add EDS Calendar integration addon.

  4. While in Thunderbird app, go to Calendar tab and hit the New Calendar button. There choose On the Network and fill in your CalDAV server credentials. For most of public email/calendar providers there are official guides on how to do that, just google it (e.g. here).

And that's it! Now your Ubuntu Gnome desktop will show you notifications and calendar events via a nice native app, just on top of your screen.

There are some limitations though: Thunderbird-Evolution sync works only in one direction, meaning you'll have to use Thunderbird if you want to create/modify your calendar events and your Gnome Calendar app will get event updates only when Thunderbird is up, so leave it running all the time.

Unfortunately, I couldn't find a reliable way for creating events from the native Gnome app, but this is the price of any OpenSource software, I guess, a little bit of suffering is inevitable.