I had known for a while that I was going to have to eventually do something with my Exchange server, 2010 was old and getting older all the time. I did have a newer version of Exchange, but for the few mailboxes I host, it always seemed like overkill.
The big issue with moving from Exchange had never been mail per say, IMAP servers and clients are plentiful and fully function, but contacts and calendar had always been another story.
I knew CalDav and CardDav had come along to try and solve the issue so I decided to look around and see what state things were in. It turns out, much better than I had expected.
There were several good CardDav/CalDav server implementations around but the one that really stood out to me was NextCloud.
Not only is NextCloud a full CardDav/CalDav server, it’s a full file sync (ala OneDrive) server as well. That ticked off another check box for me as the convince of OneDrive is huge.
Of course installing such a complicated piece of software can be daunting, fortunately, there’s an easy solution, they have a VM image with everything setup for you (they even have a step by step walk through on how to set it up).
Once the VM was up and running, logging in to the web interface is easy enough (after you of course accept the self sign cert of course).
I’ll go in to how to resolve the certificate issue in a future post, but obviously Let’s Encrypt will be involved.
NextCloud has a host of features, both the ones that come standard, and those that are found in the store.
The ones that I have installed are:
- Files, Contacts and Calendar (obviously)
- Phone Sync
- External Storage
At first I connected Mail to my existing Exchange server, but in another article I’ll go in to the details of how I setup DoveCot on the NextCloud server and decommissioned my Exchange server completely.
This is another feature that really caught my attention, for many years I have been using a perl script to pull RSS feeds from various sources and add them to a folder on my Exchange server via IMAP. That way, once an article had been read, it synced across all of my mail clients.
Outlook has always worked well with this system, but other clients have always struggled and I suspected to replace Exchange, I’d have to find another way to read my RSS feeds.
News solved the problem.
It is an RSS feed aggregator and has support for updating the read/unread status across clients that support it.
This was an unexpected surprise, an SMS sync client for Android. It’s a little buggy, but better than nothing.
I’ve always hated being tied to one browser, I tend to move across devices and browsers pretty fluidly and so I seldom use the built-in bookmark features of a browser. Instead I created a bookmark web app several years ago that manages all my bookmarks for me and I use it as my home page.
That app uses a MySQL database to store the bookmarks but NextCloud’s UI is better and so I’ve started to look at porting my app over to NextCloud as there are plugin’s for every major browser available for NextCloud’s bookmark feature.
I installed this to sync up my phone’s tasks, I don’t use them often, but it’s kind of nice to have them available online and backed up.
This was another big feature that I like quite a lot. As I’ve mentioned before, I have a large library of software on my Windows file server, but that means I have to be connected to my local network to get access to them.
With NextCloud and the External Storage plugin, I can expose that file share as part of the NextCloud web interface and get to my library from anywhere.
One of the things that really drew me to NextCloud was the availability of clients for just about every OS. Windows, Linux, Android, iOS and Mac.
This broad support really makes the case for NextCloud as a replacement for OneDrive or any other cloud storage provider.
About that VM…
There is one issue with the supplied VM image that I didn’t touch on earlier, the default image only has a 32g partition.
You can download other images that have 500g or 1tb, but those aren’t very granular choices.
Fortunately all of the VM’s come with LVM partitions so adding additional space to the VM is easy… just kidding, it’s a real pain in the butt if your not familiar with LVM.
Unfortunately finding a good tutorial isn’t easy, but this one was the best I found and solved the problem by adding an additional 80g to my VM.
I’ve been very happy with NextCloud, it was an eye-opening find that really solved a lot of issues I knew I was going to have by moving away from Exchange and other services that I had always taken for granted in the Microsoft ecosystem.
Without it my move away from Exchange may not have even been possible and it certainly has made it possible to go beyond what I thought was possible.
At this point, I’m now convinced that moving 100% off of big commercial software and entirely on to open source.
That’s something that just a few months ago I would have said was impossible.