How to Display Events or Tasks on Your Desktop With icalBuddy

Filed under Featured, Mac, Miscallaneous

icalBuddy, GeekTool, NerdTool icons I don't really have any statistics about this but I'm quite sure that an overwhelming majority of the users of my icalBuddy program are using it to display calendar data on their desktop via GeekTool. Several tutorials on how to get this done have been written by different people, mainly for relatively non-technical users, which I think is great. The problem seems to be that many people don't know how to configure icalBuddy to give them the kind of output they'd like and end up copy-pasting the commands from these blogs (some of these blog posts also contain outdated information about a bunch of things). Hopefully this short tutorial (and the usage examples page) will offer an easy way to make a more informed decision about how to get this done.

Choose Between GeekTool and NerdTool

GeekTool and NerdTool are two programs that do the same thing: display stuff on your desktop. The choice between which one to use is up to you but allow me to give a few suggestions:

Install the Apps

When you've chosen which one you'd like to use, download and install it. GeekTool is a preference pane so it lives in your System Preferences, while NerdTool is a regular application which you drag into your Applications folder.

In order to install icalBuddy, download the latest version and unzip the package by double-clicking on it. Open the unzipped folder, double-click on install.command and follow the instructions (you'll have to press return, input your password and icalBuddy will be installed).

Figure out Your icalBuddy Configuration

So now you need to figure out what to put into the command field in Geek-/NerdTool. First you need to go to the icalBuddy Usage Examples page and browse through it -- you might find the kind of output you're looking for right there, in which case you can just get the command you see there (note that some of the examples require you to add something to the configuration file).

If you'd like to take some of the examples and modify the output a bit, you can fire up your Terminal.app and start experimenting with different arguments. In this case the documentation links will come in handy.

Add Your icalBuddy Command into GeekTool/NerdTool

Once you have your command, you can put it into the app by creating a new "shell" entry:

You can then insert your icalBuddy command into the command field in whichever app you're using (and set the refresh interval in order to specify how often the command should be run):

That's it. You can then delve into the settings that both GeekTool and NerdTool offer you, like changing the colors and fonts used for the output.


Marius August 13, 2010 at 12:33 AM

Hello ! Im trying to edit the colors with geektool, but it doesnt seem to work. I can edit the fonts, but not the colors, can u help me ? :)

Ali Rantakari August 20, 2010 at 12:41 PM

Hi Marius – Like I explained in the post, you can’t edit the ANSI colors in GeekTool. Try using NerdTool instead.

Matthew Todd December 8, 2010 at 4:16 PM

Cheers, Ali –

I just landed here from your icalBuddy page. (Very nice! I’m thinking to switch to it from a custom script.)

I’ve lately refreshed a {Geek,Nerd}Tool-like app that I wrote to learn Cocoa development back when GeekTool 2 was so unstable.

As compared with those tools, it’s much more simple to use, since it’s far less configurable. (Either a bug or a feature, depending on how you look at it!)

I’m mentioning it in case anyone might like to give it a try: http://matthewtodd.github.com/heads_up/

All the best, – Matthew

Jakob Steinaa January 30, 2012 at 1:57 AM

Just found your post - GREAT! This is exactly what I was looking for!

JD Quinn March 28, 2012 at 2:14 AM

I am using iCalbuddy with GeekTool. I love it, I have been able to do almost everything I want with it. The only issue I am having is that the dates on Reminders are all displaying the same due date, regardless of when it’s actually due. Right now I have two items on my reminder list, one due on March 31st, one due today (March 27th). Both of them say due: Apr 1, 2012 in the geeklet. Any help?

David McKirnan August 14, 2012 at 6:29 PM

I am trying to use Geek Tool with icalbuddy to show my calendar on the desktop.

When I try to open a shell in geek tool nothing happens. When I drag the shell to the desktop it shows the black rectangle while I am holding “shift” down,but as soon as I release shift the rectangle disappears.

I have uninstalled and reinstalled geek tool twice, but it still does not work.

What am I doing wrong?


Miles Trryz January 10, 2014 at 4:03 AM


I am using Geektool to display my calendar info on my desktop..

Works great!! Thank you! However, when it displays birthdays, when the year is blank it displays (age 410) Is there any way to fix this, remove the age from yearless entries, or less preferable. remove the ages altogether?

Thank you so much for any help!!!

Miles Reetz January 10, 2014 at 4:04 AM

sorry my name is Miles Reetz not Miles Trryz!!!! oops!!!