KDE Everywhere You Go: Platform-Independent Personal Information Management
How to make life easier by using your KDE-based PIM on different platforms. [This article initially appeared in TUX, issue 7.]
by A. Creg Peters
If you are like me, you like to use a computer to do as much work for you as is “machinely” possible. If you are like me, you also carry various devices with you that leverage all this work you've made your poor PC do on your behalf. This means carrying a PDA, memory stick or other gadgets that hold information.
If this description fits you, you probably face the same situation that I do: accessing all of the information that you've so diligently entered in one place (like your Linux PC) in other places (for example, a Windows PC).
Luckily, there is a solution to this problem for schedules, addresses and to-do lists. Developer Lutz Rogowski leads a team (www.pi-sync.net) that has taken two PIM applications from the KDE desktop--KOrganizer and KAddressbook--and made them platform-independent. These applications, known as KDE PIM-PI (KDE Personal Information Management-Platform-Independent), allow a user to use the same programs and data on Windows or Linux (even handheld Linux, such as the software run on the Sharp Zaurus PDA). This article introduces KOrganizer-Platform-Independent (hereafter KO/Pi); a later article will introduce KAddressbook Platform-Independent (hereafter KA/Pi).
The site for the project, called Pi-Sync (www.pi-sync.net), offers the software for download and installation on Windows XP, desktop Linux (specifically SUSE Linux 9.2) and the Sharp Zaurus--on the original Sharp ROM most all releases and the OpenZaurus ROM (www.openzaurus.org) for stable releases.
Installation on Linux
On Linux, use your package management tool of choice (YaST, kpackage, Synaptic or whatever) to install the file KDE-Pim-Pi-X.X.XX-SuSE_9.2.i586.rpm (where X.X.XX is the version number).
For those who run Debian-based distributions of Linux (such as Ubuntu/Kubuntu or Libranet), this page (singlenesia.com/software) has an older but still functional version ready to install on these systems.
To run, select KO/Pi from your distribution's K Menu, or press
Alt-F2 and type
Installation on Windows
On Windows, simply unzip the installation file (kdepim_2.1.16_for_Windows_XP.exe.zip) and extract the files anywhere you like. However, you also need to download the file kdepim334dll.zip, which contains some additional files that the program needs on the Windows platform. Unzip this file to the same folder as you did the previous ones.
To run, go to the folder where you extracted all of the files, and double-click on kopi.exe to start the programs. They won't show up in the Start menu, because they don't use the usual Windows installer that would create shortcuts for them there (you can do so manually); likewise, they probably can't be started from the Run dialog, unless you use the Browse feature or installed them to the Program Files directory. In any case, it is easier to navigate to the folder where you extracted them and double-click to start.
We begin by learning how to use KO/Pi for schedule and task management. On first start, a wizard prompts the user to enter information such as date preference (that is, month-first or date-first) and time zone. It is important to match these carefully to the date used by the machine you are using. If your machine uses Windows at all (either alone or in a dual-boot configuration), it is probably best to use Local Time. On the other hand, if you use Linux or other open-source OSes exclusively, these may set the hardware time of your machine to Grand Median Time (GMT); if this is the case, set the time to the time zone in which you reside.
For those who have used KOrganizer, KO/Pi should look very familiar. It is almost identical in terms of views available, how the information is stored and most other aspects. For those who are not familiar with KOrganizer, Figure 1 shows the basic layout (Day View) of the program.
[Note: You may notice that some of these screenshots look different. That is because some were taken on a Windows PC, and some on a Linux PC. See--it really is platform-independent!]
Click on the button that looks like a calendar with a week blocked out in blue; this opens the Week View (Figure 2). In this view, there are a number of different panels. The upper-left panel shows the Date Navigator, which lets you jump to any date quickly. The upper-center panel shows a list of tasks. The upper-right panel shows the calendars you have loaded (KO/Pi now has the ability to load multiple calendars—more on this in the next installment). The To-Do view and the loaded calendars can be hidden by clicking on the right-facing arrows. The loaded calendars can be removed altogether by selecting Toggle Resource View from the View menu; the Date Navigator can likewise be removed by selecting Toggle DateNavigator from that same menu.
The bottom half shows your appointments and tasks for the week. Depending on whether the item has a specific due date or time associated, it appears above or below the date number. Appointments without any specific time (often called all-day events) are shown in the box above each date (as shown in Figure 3). To-dos that are due on a specific day, as well as any overdue tasks you might have, are shown in those boxes as well. Appointments at specific times are shown at the bottom, as you would expect in most calendaring programs. Tasks with deadlines are shown at their assigned times. In either location, a blue color means the task is pending, yellow indicates the task is due, red signifies overdue and green means completed.
Let's begin by adding an appointment. The toolbar at the top has a button showing a calendar with a small yellow star on it--his is the New Event button (you also can access it by going to Edit -> New Event). Clicking this button brings up the Edit dialog (Figure 4). The fields in the first tab are self-explanatory, allowing you to set the name of the event, the date, the time and whether you want an alarm. You also can organize your appointments by categories; select one or more categories from the pull-down menu, or edit the Categories list by clicking the button and adding or removing them to your liking. When you're done, click OK to add the appointment to your calendar (or click OK+Agenda to take you directly to the day of the appointment).
Now that you've created an appointment, you'll want to have it available on all your KO/Pi installations. This process is called synchronization, and it's one of the key advantages of the KDE PIM-PI suite. You can set up this function using the Synchronize menu. Click on Synchronize -> Configure to set up your synchronization.
The dialog box that pops up, shown in Figure 5, is a little confusing at first. The very top field is labeled Local Device Name. This is a label to identify your device--you can name it anything you like, as long as all of the devices have unique names. Under this are three buttons, New Profile, Clone Profile and Delete Profile. These refer to the Sync Profiles listed in the pull-down menu below the buttons. You can set up different profiles depending on where you are and what other device(s) you are trying to reach. For simplicity's sake, let's create a profile that synchronizes the event we just created with another, identical file on the machine you're using. Click New Profile, and the Profile Name field shows noName. You can change this to anything you like; let's use Local copy. Scrolling down, you'll see settings labeled Multiple Sync Options and Sync Algo Options (which contains subsections for Sync Preferences, Filter! Options and Write-back Options). You needn't change any of these, as the defaults are fine for our purposes here.
What will concern you is the next section titled Profile Kind (Figure 6). There are four options: Local File, Pi-Sync, Remote File and Mobile Device. Leave this set to Local File, and go to the bottom of the dialog. The last section is titled Profile kind specific settings. There are three input boxes, which allow you to indicate the local file with which you want to synchronize KO/Pi, KA/Pi and PWMgr (this is a password manager application, which is not covered in this article). You can use the Choose button to call up a file selector and select a file, if you have one (KO/Pi uses iCalendar files, and KA/Pi uses vCard files). If you don't have any files, you can input a name, and the application creates one for you.
After you are all done with this, click OK to record your settings. Now, if you click on the Synchronize menu, there should be an entry for the profile you just created. Clicking on the profile name starts the synchronization process. Soon you should see a dialog box detailing the changes that the application will make to either or both files (in this case, only the remote file, because the local file is the one to which we added the appointment). Click OK to confirm the changes, and you are fully synchronized! The good news is that the settings are shared between KO/Pi and KA/Pi. If you launch KA/Pi, the synchronization profile should already be set up for you. Simply begin adding or importing addresses, and you can sync at will!
Now, you may ask why you would want to synchronize to another file on your own system. Instead of the hard drive, these files could be on a USB memory stick--you can take them to other places (such as work) and point the KO/Pi you installed there to synchronize with them. The files could belong to another program--for example, the upcoming Mozilla Calendar/Sunbird program also uses iCalendar files, as does iCal on Mac OS X (although the iCal files used by KO/Pi may be in a slightly different in format, and some elements may not be exactly the same). You can see the flexibility that KDE PIM-PI offers through its synchronization methods.
In the next article, we will explore the Pi-Sync protocol and show how two machines with KDE PIM-PI can synchronize directly with each other. We'll also detail some ways of getting data you already have into KDE PIM-PI, so you don't have to enter it yourself. Finally, we'll discuss some strategies to make the most of the ability to use KDE PIM-PI on multiple platforms.
About the Author
A. Creg Peters is a project manager at an international consulting firm. In his spare time, he works on fiction, practices kendo and fiddles incessantly with as many as four Linux machines in his home in Germantown, Maryland.