Google Calendar

Posted in Productivity by cimnine 2264 days ago


You will need a lot of additional tools and deep system modifications to get this to work!


Open a Terminal now. If you don't know how, this Geeklet is not for you!

Pre Requirements Installation

1) Get CURL:

Check if you have it:

$ curl --version

If you see curl's version, you have it. Else install it. I installed via 'brew', brew install curl.

2) Get Python 2.x:

Check if you have it:

$ python --version

Should be 2.x. Else grab it from somewhere. (For example brew install pyhton.

3) Get GCalCLI

Grab it by hand from it's webpage.

Unzip/Untar the file. Create the folder ~/bin/. Move the gcalcli to ~/bin/.

$ mkdir ~/.bin/;
$ cd ~/.bin/;
$ wget https://gcalcli.googlecode.com/files/gcalcli-2.1.tgz
$ open gcalcli.tgz

4) Install the GCalCLI Dependencies. The same steps apply for all of the dependencies. Just file names and URLs change. You will need these files:

4.1) Download each of these files.

4.2) Extract them. Each in a separate folder!

4.3) For each one, find the 'setup.py' file. cd to the folder where this file lies and install it:

$ sudo pyhton setup.py install

5) Setup the config file

5.1) First execute:

$ cp ~
$ touch gcalclirc.txt
$ open gcalclirc.txt

5.2) Your default OSX TextEditor should have opened. Enter the following and save (!) the file:

user: <your google username>
pw: <your google password>
# The following lines are optional
24hr: true
details: true
ignore-started: true
mon: true

5.3) Quit the Editor and switch back to the Terminal. Execute:

$ mv gcalclirc.txt .gcalclirc
$ chmod a-r,o+r,a-w,o+w .gcalclirc

6) Test gcalcli:

$ gcalcli list

This should display a list of all google calendars you have access to.

7) One last step:

$ cd /tmp
$ touch launchd.conf.txt; open launchd.conf.txt

Insert the following line, save and close (!) the file:

setenv PATH ~/bin

Return to the Terminal

$ sudo cp launchd.conf.txt /private/etc/launchd.conf

Reboot your Mac now. Then your done with the preparations.


Don't worry. It's easy now.

  1. Create a Shell Geeklet on your desktop

  2. Set this as command:

echo "AGENDA"; ~/bin/gcalcli --nc --cals=owner --details agenda | egrep -iv "Length|Content|Reminder" | egrep -i "^ +.*:|^(\w\w\w )" | head -21

Hint: For more beauty, use a monospace (aka fixed-width) font.

This will display a list of all your Appointments with Location, but no description, no reminder texts, just without any noise.

Cheers, Chris


User Avatar
Orcie 2178 days ago
Step 7 breaks my PATH... causing Geektool fail to reach bash sh etc.
User Avatar
matt 1986 days ago
Hmm, I wonder could you do something like:

setenv PATH "$PATH:~/bin"

so it just appends the new directory to your existing path. Haven't tested that.
User Avatar
ken 2090 days ago
when I test gcalcli I get: Error: must specify a username

i have. any ideas?

Log in to comment or register here.