Solved Suggestions for a calendar software.

Greetings to everyone.

I was a long time user of google calendar. But I recently encountered some issue with. Indeed I lost all my data linked to my google calendar due to some bug in the app. Hopefully it was not a crucial lost, I mostly use calendar as a lifesaver in case I forgot an important event. But since I got a good memory it is not that problematic.

So, since I use FreeBSD 13 as my primary system on my workstation, I open this topic to ask users of this forum about calendar software they use in FreeBSD. My purpose here, is to see different opinions about the software folks on this forum use, in order to help me choose one. Note that I do not care if the software uses GUI or CLI. I just want something that is convenient to use.

Thank you in advance for your responses.
 
What functionality are you expecting?
Notifications of events is a big feature of google calendar (push notifications to your phone), sharing of calendars with others is a useful feature.
 
Thanks for your replies.

Thunderbird has a calender function

I will keep Thunderbird in my mind, but I expect a software a bit less ressource-heavy and a more specialized one.

What functionality are you expecting?
Notifications of events is a big feature of google calendar (push notifications to your phone), sharing of calendars with others is a useful feature.

Indeed, it would be a plus if the software can send notification on my system, for instance using FreeBSD "mail" command.

Some of the basic calendars I found useful:
deskutils/remind/
deskutils/calcurse

Calcurse may be CLI but it seems very neat I will surely give it a try !
 
I used Orage/Xfce in the past, it's simple and can sync ical but not upstream. I can't find it in the ports at the moment. You can always store a local copy and still rely on cloud calendars.
 
I use normal unix calendar (1) command. I run it also in .tcshrc, so that I see the
entries at login or when I have a new xterm.

I have a calendar file for things that occur each year, and each year I do a new
that includes the former.

To avoid errors, I generate with a script a template calendar file with lines for
each day of the year of the form:

Code:
/* SEPTEMBER */

9/1     %
9/2     %
9/3     %
9/4     %
9/5     %
9/6     %
9/7     %
9/8     %
9/9     %
9/10    %
9/11    %

Then, I only need to edit lines.

Synchronizing is carefully done by hand.

BTW, see "calendar -a" for mailing entries, but I never used it.
 
Here is my script for generating the template. It takes one argument: number of lines per day.
You need to edit the first line (must point to tcl interpreter) and the nineth non empty line that
includes the calendar file for all years.

Code:
#!/usr/opt/bin/tclsh

set usage "Usage:
$argv0 num
Outputs to stdout generic template with given num of entries per day"

if {$argc!=1} {puts stderr $usage; exit}
set N [lindex $argv 0]
if {![string is integer -strict $N] || $N<1} {puts stderr $usage; exit}

# Edit this
puts "#include \"/usr/home/user/allyearsfile\""

proc mname {num} {
set loc en_US
set date [clock scan 1970-[format %02d $num]-01 -format %Y-%m-%d]
return [string toupper [clock format $date -format %B -locale $loc]]}

set ndays [list 31 31 29 31 30 31 30 31 31 30 31 30 31] ;# 0 = 12 = Dec

for {set m 1} {$m <= 12} {incr m} {
puts ""
puts "/* [mname $m] */"
puts ""
for {set d 1} {$d <= [lindex $ndays $m]} {incr d} {
  set M $N
  while {$M} {puts "$m/$d\t% "; incr M -1}
  puts ""
}}
 
Indeed, it would be a plus if the software can send notification on my system, for instance using FreeBSD "mail" command.
I also vote for calendar(1). First thing I do over coffee in the morning is read my email:
Code:
[ritz.401] $ crontab -l | grep calendar
0 5 * * * calendar -A 7 | mailx -s "Calendar for $(date +\%Y-\%m-\%d)" phil

[ritz.402] $ ls -lad $HOME/*calendar*
-rw-r--r--  1 phil  wheel  1742 Jun 30 12:12 /home/phil/calendar
-rw-r--r--  1 phil  wheel  3126 Aug  2  2020 /home/phil/calendar.2019.2020
-rw-r--r--  1 phil  wheel   656 Dec 25  2020 /home/phil/calendar.birthdays
-rw-r--r--  1 phil  wheel  1185 Apr  2 07:47 /home/phil/calendar.perennial

[ritz.403] $ head -4 $HOME/calendar
LANG=en_AU.ISO8859-1
#include </usr/home/phil/calendar.perennial>
#include </usr/home/phil/calendar.birthdays>
#include </usr/share/calendar/calendar.australia>

I have to confess that I also selectively add appointments to my smart phone, manually. But it's not cluttered with birthdays, anniversaries, and trivia.

I'm guessing that Mac fans start chuckling, and feeling aloof right here....
 
"calendar: can't open calendar file "/usr/home/user/allyearfile"
.................................................................................
This error occurs in the system or port calendar after creating suitable calendar files as the posts immediately above... manual pages hints don't hint how to bring up the user-created rather than existing or desired ones...
 
Google Calendar is able to synchronize its stuff amongst several devices. So it might be also that you'd like to do the same with your replacement.

Enter: CalDAV. This is the internet standard to store calendar data amongst several frontends, like e.g. Thunderbird, Android devices and so on.

A lightweight server for that is Radicale. If you want to have a little bit more control but still lightweight, Baikal might fit your need. Of course if you want to have cross device synchronization it requires to have the server component at least somewhere being exposed in your home network. Or to the internet, if you want to be able to access it as a road warrior.

On top of that you then can use e.g. Thunderbird, Evolution or Calcurse, basically anything which supports that standard.
 
  • Like
Reactions: mtu
"calendar: can't open calendar file "/usr/home/user/allyearfile"
I do not understand the context of your posting, but that filename has something to do with my script.
It does not only generate lines for each day, but also a line:
#include "/usr/home/user/allyearsfile"

If that file does not exist, calendar will output an error. In the script I wrote that this must be edited:
to a filename of a real existent file. You can also delete the line with the include line in the result,
for example for using the result as a allyearsfile to be included in all new generated templates.
 
Google Calendar is able to synchronize its stuff amongst several devices. So it might be also that you'd like to do the same with your replacement.

Enter: CalDAV. This is the internet standard to store calendar data amongst several frontends, like e.g. Thunderbird, Android devices and so on.

A lightweight server for that is Radicale. If you want to have a little bit more control but still lightweight, Baikal might fit your need. Of course if you want to have cross device synchronization it requires to have the server component at least somewhere being exposed in your home network. Or to the internet, if you want to be able to access it as a road warrior.

On top of that you then can use e.g. Thunderbird, Evolution or Calcurse, basically anything which supports that standard.
I've used radicale intensely for 6 or 7 years now, and I still love it. Syncing across different platforms and applications (Android, Thunderbird, KDE Organizer etc.) used to be flaky, but I think it's gotten better over the years.

Above all, I like the fact that all your data sits in plaintext files on your own filesystem, which make it very robust and easy to backup, maintain or diagnose. Also, radicale is a well-behaved piece of software that's never eaten my data (although it sometimes silently failed to sync in the past). Also, I've always liked the developer's attitude and maintenance of the software.

Fun fact: All of my calendar data of the last 6 or 7 years takes 30MiB on disk (zfs with ashift=12 and recsize=4K), 15MiB logically, and less than 700KiB when .tar.xz-ed to the max ;)
 
Fun fact: All of my calendar data of the last 6 or 7 years takes 30MiB on disk (zfs with ashift=12 and recsize=4K), 15MiB logically, and less than 700KiB when .tar.xz-ed to the max
And you find that a small file?!

One can also archive and sync calendar (1) files using git, fossil or something like that.
 
Greetings to everyone.

So after days of testing, I think that, finally, Thunderbird fits my needs. In fact I opted firstly for calcurse, but it seems that some infos were missing when exporting calendars on other computers, so I will finally stick to Thunderbird. Nevertheless the default Unix calendar seems really great, I did not know it existed before this thread, so thanks. I will probably give it a try in the future.
 
Back
Top