An interesting alternative is Radicale [1].
Both are very lightweight.
I mainly chose Radicale over Baïkal because it is written in Python.
On the client side DAVx⁵ [2] do a good job.
I've been using Radicale for a few years now and it has been fantastic. Extremely lightweight but also quite flexible with its permissions model since we have a shared family calendar.
The backend storage is simply ics/vcf files and while I'm sure it's not the most efficient if you had a large number of users, for our small group it's been perfect and very satisfying knowing your data is there in plain text files.
Although if I'm honest I'm just cheap and wanted to get by on the smallest VM offered by my cloud provider and NextCloud was too demanding for that.
I tried Baikal but Radicale was much easier to use and set up. It’s been solid for the last two years for me.
That said I try to avoid self hosted services written in Python, especially if they use Django. I’ve had nothing but issues dockerizing them. I just want a static binary ideally.
I’ve been using radicale for contacts and calendar for quite a few years now. Plays nice with iOS Mail and Contacts as well as Gnome Evolution and has overall been a great experience.
How do you host your email? I figured it would be a pain to not have my contacts and email very tightly integrated, so I just keep it all with Fastmail.
There are plenty of good alternatives for calendar/contact sync servers, but I haven't seen any good, native clients that work on modern BSD (or Linux) desktops. Both Evolution and Thunderbird tend to be slow, clunky, glitchy, generally doing pretty poorly when put side-by-side with e.g. the built-in macOS counterparts.
I'm trying to use an OpenBSD laptop in parallel with a macOS desktop, and while it's perfect for coding and OK for web browsing, the rest of the desktop experience is just... not there.
I went all in ~1 month ago after using on servers since late 2000s. My findings:
1) can't have something like a /var mounted on iscsi. The Rd kernel doesn't support it.
2) help for DEs is patchy. In my example XFCE behaves differently on major linux distributions than mine. Intellij too is slightly different.
3) there are some bugs in upstream software which as an OpenBSD user are simply unacceptable to me. I had to disable compositing.
4) things like Bluetooth for some people (not me) may be a deal breaker. Bluetooth sound works perfectly.
5) if you want to use myfavsoftware X, you may have it in ports. But the reason you want to use it relies on mynotfavsoftware Y which may not be available on OpenBSD.
6) if you use OpenBSD you will become a cynic because of bad documentation most places elsewhere. I mean this seriously, I view rest of the world as moving on to just getting things done without giving thought to underlying correctness. Maybe it's a good thing, maybe not.
That said:
1) it is the easiest thing to operate. Like really easy. You know which file is doing what, when.
2) there are no gotchas. This is a very predictable and consistent system.
3) if it's not there in documentation, you don't have to ask "how to x", be rest assured if it's not there in the docs, it is not available, else it'd have been there.
4) contrary to public opinion, very very helpful community.
I think I am a fanboy. Previously have used (rev chronological order) - pop!os, enso OS, windows 10, snow leopard (another brilliant one), freebsd for a month, Ubuntu, redhat 5, XP, 2000, NT 4, 3.11. By far OpenBSD is something I have loved the most.
I disagree. Some piece of Nextcloud always flies off the rails.
In contrast, with Baikal, every time I get a new phone, I have to remember I self host it, then figure out which machine it's running on. Other than that, it's completely maintenance free.
(Usually I'm nervous that sync broke since I last checked three+ years ago, so I download a backup of the DB and confirm it's actually working!)
I tried using Nextcloud several times in the past, but the experience on Android was always sketchy for me. Contacts and calendar that would randomly (and silently) stop synchronizing, their mobile app stuck on endless spinner when browsing photos and files.
It has pretty web interface, but it was just unusable where it mattered.
Any experience interoping something like this with google calendar? I'd love to use something like this, but I can't fall back to having separate calendar apps for work and personal stuff.
I do, but without Android and {card,cal}dav... Emacs/org-mode/org-agenda/org-contacts for in-Emacs usage (for instance for email/notmuch) and with classic LDAP on the homeserver for my VoIP phones...
Here's what you need to run a small NextCloud server:
* linuxserver.io container
* redis instance (enormous speed-up. Really, do this. Running a redis container is very painless.)
* use SQlite for the backend DB (unless you have a huge number of files)
* disable every module/plugin you don't NEED
Run a cron script that periodically fetches new images, kicks over the container, and purges old images.
Run another script that periodically tries to run updater.phar in the container, or notifies you when there's an update, or subscribe to the nextcloud RSS feed, etc.
I recommend overriding the defaults for deleted file behavior and versioning. Most folks don't want or need deleted files hanging around until 50% of your disk space is used, for example. The versioning defaults are fairly reasonable IMHO, but I decided I didn't care about anything past two months. Some folks who have lots of fast changing files will probably want to tweak the retention policy because it will save second-by-second versions for a few minutes to an hour (I forget exactly) and that could generate a lot of IO and SSD wear unnecessarily.
Done! I was dreading switching over from syncthing but it's been painless, and the NextCloud clients are all pretty slick and Just Work.
Yeah but are calendars and contacts that complex? Or rather, do they have to be complex? Never worked on such things myself, though I'd think the hardest part would be interoperability with the big boys
conaclos|3 years ago
[1] https://radicale.org/v3.html [2] https://www.davx5.com/
cube00|3 years ago
The backend storage is simply ics/vcf files and while I'm sure it's not the most efficient if you had a large number of users, for our small group it's been perfect and very satisfying knowing your data is there in plain text files.
Although if I'm honest I'm just cheap and wanted to get by on the smallest VM offered by my cloud provider and NextCloud was too demanding for that.
andrewzah|3 years ago
That said I try to avoid self hosted services written in Python, especially if they use Django. I’ve had nothing but issues dockerizing them. I just want a static binary ideally.
m82labs|3 years ago
pkulak|3 years ago
rollcat|3 years ago
I'm trying to use an OpenBSD laptop in parallel with a macOS desktop, and while it's perfect for coding and OK for web browsing, the rest of the desktop experience is just... not there.
pseudostem|3 years ago
1) can't have something like a /var mounted on iscsi. The Rd kernel doesn't support it. 2) help for DEs is patchy. In my example XFCE behaves differently on major linux distributions than mine. Intellij too is slightly different. 3) there are some bugs in upstream software which as an OpenBSD user are simply unacceptable to me. I had to disable compositing. 4) things like Bluetooth for some people (not me) may be a deal breaker. Bluetooth sound works perfectly. 5) if you want to use myfavsoftware X, you may have it in ports. But the reason you want to use it relies on mynotfavsoftware Y which may not be available on OpenBSD. 6) if you use OpenBSD you will become a cynic because of bad documentation most places elsewhere. I mean this seriously, I view rest of the world as moving on to just getting things done without giving thought to underlying correctness. Maybe it's a good thing, maybe not.
That said: 1) it is the easiest thing to operate. Like really easy. You know which file is doing what, when. 2) there are no gotchas. This is a very predictable and consistent system. 3) if it's not there in documentation, you don't have to ask "how to x", be rest assured if it's not there in the docs, it is not available, else it'd have been there. 4) contrary to public opinion, very very helpful community.
I think I am a fanboy. Previously have used (rev chronological order) - pop!os, enso OS, windows 10, snow leopard (another brilliant one), freebsd for a month, Ubuntu, redhat 5, XP, 2000, NT 4, 3.11. By far OpenBSD is something I have loved the most.
kingofpandora|3 years ago
ekianjo|3 years ago
deutschepost|3 years ago
hedora|3 years ago
In contrast, with Baikal, every time I get a new phone, I have to remember I self host it, then figure out which machine it's running on. Other than that, it's completely maintenance free.
(Usually I'm nervous that sync broke since I last checked three+ years ago, so I download a backup of the DB and confirm it's actually working!)
pferde|3 years ago
It has pretty web interface, but it was just unusable where it mattered.
dmos62|3 years ago
yoavm|3 years ago
unknown|3 years ago
[deleted]
encryptluks2|3 years ago
rglullis|3 years ago
[0]: https://github.com/39aldo39/DecSync
durazabu|3 years ago
Thunderbird (Linux) - Radicale+Radicale DecSync plugin (Linux/Systemd) - 'DecSync' Folder (Linux) - Syncthing (Linux) - Syncthing-fork (Android/F-droid) - 'DecSync' Folder (Android) - Decsync CC (Android/F-droid) - Simple Calendar Pro (Android/F-droid)
Radicale runs only on localhost. Syncthing runs only on the local network.
The synchronization only happens if the computer and the phone are on the same wifi network.
kkfx|3 years ago
markstos|3 years ago
I believe that’s why the author was avoiding NextCloud.
KennyBlanken|3 years ago
* linuxserver.io container
* redis instance (enormous speed-up. Really, do this. Running a redis container is very painless.)
* use SQlite for the backend DB (unless you have a huge number of files)
* disable every module/plugin you don't NEED
Run a cron script that periodically fetches new images, kicks over the container, and purges old images.
Run another script that periodically tries to run updater.phar in the container, or notifies you when there's an update, or subscribe to the nextcloud RSS feed, etc.
I recommend overriding the defaults for deleted file behavior and versioning. Most folks don't want or need deleted files hanging around until 50% of your disk space is used, for example. The versioning defaults are fairly reasonable IMHO, but I decided I didn't care about anything past two months. Some folks who have lots of fast changing files will probably want to tweak the retention policy because it will save second-by-second versions for a few minutes to an hour (I forget exactly) and that could generate a lot of IO and SSD wear unnecessarily.
Done! I was dreading switching over from syncthing but it's been painless, and the NextCloud clients are all pretty slick and Just Work.
oblak|3 years ago
poidos|3 years ago
aaaaaaaaata|3 years ago
tpoacher|3 years ago
aklemm|3 years ago
baak6|3 years ago
dragonwriter|3 years ago