Calendar management with Sunbird

New Bird on the Block


Mozilla Sunbird may be just what you need to help you manage your appointments and tasks on Linux.

By Erik Bärwaldt

Anneke Schram, Fotolia

The Firefox web browser and the Thunderbird email client are standard applications on Linux. Both programs are developed and maintained by the Mozilla Foundation. Mozilla also has the fairly young and virtually unknown calendar application called Sunbird [1]. The stable 0.5 version is suitable for production use, despite the low version number.

Sunbird is the Mozilla Foundation's second calendar application, and you would be forgiven for mistaking it for its sibling Lightning. Lightning relies on the presence of Thunderbird, whereas Sunbird is a standalone application that will run on almost any Linux system.

Sunbird is currently fairly rare in the online repositories of the major Linux distributions. In fact, the only Linux to include the electronic calendar as part of its standard software package is the Irish Ubuntu derivative, Linux Mint; interestingly, Linux Mint gives you version 0.6rc1, which is still beta, as is the brand new version 0.7. Users with any other distro will need to download the tarball.

According to the Mozilla Foundation, Sunbird will run on older hardware. The minimum configuration is a Pentium II with a clock speed of 233MHz or better, 64MB RAM, and 52MB disk space. The software dependencies are just as modest: A Linux system with kernel 2.2.14, XFree86 3.3.6, and Glibc 2.3.2 are all the calendar application needs.

Installation

Although you don't actually need to build a stable version 0.5 after unpacking the tar.gz archive, don't expect the convenience of an installation script to handle the configuration on your machine automatically; manual steps are needed. Basically, you can launch Sunbird from any directory.

If you prefer a more organized approach, you might want to keep to the conventions defined by the Linux Filesystem Hierarchy Standard [2] when installing Sunbird. To keep to the the standard, first become root and then copy the Sunbird archive to the /opt directory; when you get there, type tar -xzvf sunbird-0.5.de.linux-i686.tar.gz to unpack. This creates a sunbird subdirectory with the files you need.

At this point, you can delete the original archive. To run the program without specifying the path, you could use a trivial script in /usr/bin to point to the unpacked sunbird binary in /opt/sunbird. To do so, launch your favorite editor and type the following three lines:

#!/bin/bash
cd /opt/sunbird
./sunbird

Store the script as sunbird.sh in your /usr/bin directory. Don't forget to make the script executable by running the following command:

# chmod +x /usr/bin/ sunbird.sh

To avoid typing the script name in a quick launch window whenever you want to run Sunbird, you could create an entry in your applications menu. To do so, create a text file named sunbird.desktop in your /usr/share/applications directory. The entries in Listing 1 will give you a starter and an icon for Sunbird in your Application | Office menu; the message shown when you hover the mouse over the icon is Appointments.

Listing 1: Desktop Entry
01 [Desktop Entry]
02 Name=Sunbird
03 Comment=Appointments
04 Exec=sunbird.sh
05 Icon=/opt/sunbird/chrome/icons/default/default.xpm
06 Terminal=false
07 Type=Application
08 Categories=Application;Office;

After navigating this slightly convoluted installation procedure, nothing stops you from launching Sunbird. The program takes a couple of seconds to launch, which is normal for Gecko-based programs. After the delay, Sunbird comes up with a neat user interface; the three-panel window is self-explanatory, and you should be able to use the program without any trouble (Figure 1).

Figure 1: Self-explanatory and learning curve-free: the Sunbird GUI.

The View

The top of the window sports a buttonbar that lets users manage appointments and tasks by pointing and clicking. Various views give users an overview of periods of time. Sunbird distinguishes between fixed appointments and longer term tasks, and the calendar displays the two in a different way.

The left-hand panel shows a calendar for the month and a to-do list. The latter lists any tasks entered by the user; unfinished tasks are highlighted in red. As an option, users can hide tasks that have been completed. Also, you can assign priorities to tasks and define your progress. The panel on the right contains a daily calendar with times, and above this is a user-definable list area in which you can display, for example, all your appointments for the next 14 days.

To create a new appointment or task, just double-click the calendar. As an alternative, you can right-click in the task window to create a new task. The dialog lets you enter details of the period and appointment along with comments (Figure 2). Also, you can sort appointments and tasks by various categories, thus seeing at a glance whether you need to call somebody back or have an out-of-office meeting.

Figure 2: Appointments can be added easily and quickly.

Coordinate Projects

To coordinate projects for a group of users, you can publish a list of appointments to predefined participants. An optional audible warning at a predefined time - for example, half an hour before an appointment - keeps you from missing important dates. Settings can be modified after storing; right-click the appointment you want to change to pop up the familiar Create dialog in which you can edit the appointment. The use of this method removes the need to learn different menu structures.

If you deploy Sunbird for a user group, such as the staff at your office, or to coordinate family events, you can store dates tagged as public on an internal web server for coordination with everyone involved.

Because not all users of a workgroup will have permanent access to online data, a portable version of Sunbird is available for use on a USB stick; this is useful for synchronizing offline.

Sunbird stores its data in an SQL-based, proprietary file format, but this does not mean that the application is isolated. Full compatibility to the iCalendar standard means that Sunbird can exchange data with any calendaring program that supports the iCalendar specification - including Apple's iCal.

Thanks to the widespread acceptance of the iCalendar format, many websites on the Internet have pre-built calendars [3]. Simply point and click to copy public holidays from these calendars instead of painstakingly entering the data manually. Also, this lets users integrate historic calendaring data with their own calendars [4].

Conclusions

Mozilla Foundation's Sunbird is a standalone calendaring tool that is useful for both workgroups and individual users. Besides its well-thought out GUI, which flattens the learning curve, the program has all the functions you would expect. The program is not only suitable for appointment management, but lends itself to use in projects with multiple participants and for managing longer term tasks. Despite the fairly low version number, the program is quite stable, and you can install it on almost any Linux system thanks to its family ties to Firefox, Thunderbird, and so on. Sunbird is available for other operating systems, which makes it a good choice for a standalone calendaring application for heterogeneous environments.

The import/export function is noteworthy - it allows users to import external calendars in iCalendar format or to export calendars for use by other people. This lets users synchronize data with the Thunderbird email client, assuming the user has installed the Lightning calendar. Full compatibility with iCalendar also lets users retrieve calendar files off the Internet, thus removing the need to add public holidays manually. The various publication options for individual calendars make the software an excellent choice for offices or businesses that need to coordinate and manage the activities of several staff members. At the same time, the developers also have taken road warriors without permanent Internet access into consideration - a portable USB stick-based version is available.

Overall, Sunbird is a convenient solution for anyone looking for a powerful, lean, stable calendaring application for home or office use.

INFO
[1] Sunbird: http://www.mozilla.org/projects/calendar/sunbird/
[2] FHS (Wikipedia): http://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard
[3] Pre-built calendars: http://www.icalshare.com
[4] Public Holidays by country: http://www.mozilla.org/projects/calendar/holidays.html