Self-hosted calendar that isn't Nextcloud and can send e-mail reminders, not just pop-ups

chriscrutch@lemm.ee to Selfhosted@lemmy.world – 63 points –

I'm trying to de-Google my life and self-host more. One tricky point with me is calendaring. I can get a CalDav server running and syncing with my Android phone without much hassle, but I haven't yet found a server or client that can send e-mail reminders for events, rather than just pop-up notifications.

I've been told to try Nextcloud. I tried installing it but it's overkill for me, and I don't want to deal with setting up a domain. Surely there can't be exactly one CalDav option that can send email reminders. But I've never heard anyone say anything other than "Nextcloud."

42

I know you said “no nextcloud”, but I often see posts from people who say nextcloud was overkill for them, but they don’t realise that almost every component of nextcloud can be uninstalled if you don’t want it. It can be pretty barebones if you want it to be.

I don’t see how you’re going to get away from the domain requirement, though, unless you’re just going to connect to your raw IP address? (And if you are, I didn’t think that nextcloud required a domain?)

Sorry I can’t be more helpful with a different solution, but hopefully someone out there knows of something that would suit your needs.

My raw IP wouldn't help, my ISP has me behind CGNAT. I can set up a CalDav server and sync it with Tailscale, but can't do that for Nextcloud.

Why can't you sync NC over Tailscale?

Their AIO container straight up fails to work if you don't have a public ipv4 address and ports open to the world, it's bizarre.

Luckily the LSIO nextcloud container should work properly.

Interesting, the one time I tried Nextcloud I was using the AIO version, maybe it'll be slightly less onerous to use the other one. I may give that a shot. Thank you!

Well I may be missing something about how Nextcloud works because I never really fully got it set up. Once I got Nextcloud set up on my domain, how would I go about getting my domain pointed to a Tailscale address?

You don't need to get it set up with your domain. All you need is the IP address of the machine it's running on; either local or Tailscale address. Just type it into the browser URL bar. I.e. http://192.168.0.1:8080/ is a valid URL.

Now, obviously you'd want to have the ability to do things like type a human readable domain name and have SSL certificates but they're not technically necessary. Until I found the time to set up my reverse proxy, I used my Paperless using a bookmark to the IP address and port.

Pointing your domain at a Tailscale address is pretty simple, you just need to add an A record wherever your domain's DNS zone is configured which points at the IP address (e.g. 100.107.42.69).

Personally I run Pi-hole as a DNS server, and add the domain as a custom DNS entry. Then in the Tailscale settings, you can set the DNS server (there is a Tailscale help page for setting up Pi-hole with Tailscale).

Oh, isn't that interesting. I already run a Pi-Hole but I had never thought of doing that with a custom entry. I suppose that would work, wouldn't it?

I really dislike that everything in this thread is pushing towards Nextcloud after all. It seems like it should be easier to get email reminders. It should really be somewhere in-between "use Google" and "run Nextcloud and buy a domain name and use a custom piece of hardware to run your own DNS server to which you have to add even more customizations to be able to run and sync the Nextcloud suite, most of which you'll never use."

I'd guess it's not that the solution doesn't exist, but that Nextcloud is one of the most popular self-hosted service. since so many people are already using it, it's all they know of.

have you looked at awesome-selfhosted at all?

I was about to mention that ;-) Whenever I find myself looking for software in an area where I don't know any of the "competitors", I'll look for the awesome-* lists. At the very least they are always a good starting point.

Yeah, I've tried most of the servers listed there. None of the servers have email functionality (beyond invitations). I haven't found a client that does either. I understand that Thunderbird used to have it, but doesn't any more. Strange that an email application can't email. Hahahaha.

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:

Fewer Letters More Letters
CGNAT Carrier-Grade NAT
DNS Domain Name Service/System
IP Internet Protocol
NAT Network Address Translation
SMTP Simple Mail Transfer Protocol
SSL Secure Sockets Layer, for transparent encryption

5 acronyms in this thread; the most compressed thread commented on today has 5 acronyms.

[Thread #307 for this sub, first seen 28th Nov 2023, 07:25] [FAQ] [Full list] [Contact] [Source code]

Try Baikal, it's a pretty lightweight CalDAV server!

Any client I use it with supports notifications, however it should also be able to send emails for you (e.g. Its scheduling feature).

I had Baikal running for a while, there's no notifications on the server side.

Scheduling is not the same as event notifications. At that link you provided, that refers to sending email invitations to participants in an event. Those get sent immediately at the event's creation, it's kind of an RSVP system.

I need a client that can send an email at a specified time before the event starts.

Oh if you mean event notifications check out Calengoo. It has versions for all major platforms.

I may have to try that one. Just looking on the website, it doesn't explicitly say there's the possibility of emailed event reminders, but it does say that there's an integrated client so it seems like there's a possibility. Thank you!

You are right. I've some experience with tweaking Baikal's code, maybe you can implement that notifications feature yourself? The code isn't perfect and could be simplified... but it doesn't seem very hard to implement what you're looking for given their architecture.

Any coding is well above my skill level. Thank you, though.

You could set up NodeRed and make your own notification flow with a caldav/iCal input and a email or chat service output.

It looks like I'm gonna call that my "second to last resort." I'm not a programmer or developer of any kind, and that looks pretty intense for me.

It uses "visual programming" so it is actually quite easy to do (as long as you use the pre-made modules) even without any prior knowledge. And once you set that up you will likely find many other neat ways to use it 😊

After a lot of alternatives I'm just using Google calendar again, nothing else so far works as easily and syncs everything to my devices properly.

If I ever come up with something, I'll let you know.

Cal.com?

I checked out the documentation for that, I can't find in there anywhere anything about e-mail reminders for events. Additionally, it looks like setting up recurring events (like monthly bills or repeated appointments) isn't possible. It seems more like a business booking solution than a personal calendaring thing. Thank you though!

Nextcloud is definitely overkill if you're just after a calendar / reminder.

I ditched Nextcloud and went for radicale, but I've not looked into sending emails as reminders (I want less emails not more)

Is this for adhoc events like "visit the dentist", or are you trying to automate a regular event like "put out the recycling"?

The latter could be done with cron and sendmail for example

Yeah, the email reminders I'd like would be for both types of events (one-offs and recurring ones). And although it would work, I guess, I'm not crawling around in crontab every time I need to add something to my schedule.

I use SoGo for that.

Cal and task sync. Card dav, Email und calendar in one neat web interface

This looks quite promising, thank you! I'll be trying that.

Sending emails is too old, and requires a full online app to send you the reminder. Only google or other big corps support this because a bounced email is retried many hours later... Heck, just the sending might suppose delays. The current calendar solutions give push notifications to clients (e.g. PC or phone)

There's no better solution to a problem than, "your problem is wrong."

Counterpoint: if you system is configured such that the mere act of trying to send an email results in serious delays and regular bounces, you're doing email wrong. Even push notifications may require third party routing through Google, Apple, or similar to get to the core OS in some cases.

Yes, I recognize that hosting an SMTP server is difficult these days and can't always be done at home due to IP restrictions. But that doesn't mean you have to have an email server at home. I have a third party email on my domain and I can dispatch SMTP which arrives at expected non-delayed times even to Google and Microsoft accounts.

I honestly wish more software would simply speak to an SMTP server of choice rather than defaulting to just hitting the CLI mail send or attempting a direct SMTP connection.

If you don't find anything, I suggest you go the automation route with Active Pieces or N8N

Unless I'm missing something, there doesn't seem to be any functionality for email reminders either on the server side or client side for them. I tried Etesync once, although it has been a bit.

No idea how CalDav runs, but if it's a server, it should be able to run generic scripts, no? Once you are running a generic script, writing one that sends emails though smtp should be possible. Idk.