Share Tweet

Good Afternoon,

For a little while I have been playing around and using GeekTool, its a unique app in that it displays Terminal output (from various commands) onto the desktop. This seems a bit geeky, but after playing around with it and customising as you see fit, it is a really useful application. Although the app does need a little bit of fiddling to get working, it can display pretty much anything on your desktop. Its great for seeing your Mac’s inner workings and very useful for getting certain information quickly and easily, most of the time there is no better place to put this than on your desktop. This post is going to show new users how you can get this app up and running and some basic commands to get you on your feet, once you get the hang of how the app works you can spend hours playing and adjusting the settings to get something truly awesome.

Step 1. Download and Install

The best way to start any tutorial is at the beginning. To get GeekTool up and running head over to the download page and download the latest version of the software. Once as the download has finished, install the app by opening the disk image and double clicking the preference pane within the disk image. This application is not an app in the normal sense that it doesn’t have a dock icon etc, it installs itself into the system preferences and runs from there.

Once it is installed open GeekTool from System Preferences.

Step 2. Add Your Command

Commands on your desktop are called “Geeklets” they can take the form of shell commands which include commands that would normally run in Terminal, you can also have images and files that run on your desktop. To make your first Geeklet drag the shell command from Geektool window onto the desktop. Then use, in combination with exposé show desktop, move it to a suitable location. The top left will usually suffice.

When you place the geeklet you will notice a properties window will appear. This is used to change the properties of that specific Geeklet. I’m going to run through it in a slightly different order than top to bottom, because I personally think my method works the best, however it doesn’t really matter how you use the properties editor.

Within the editor we have to add a command that will run. The only command that will work are ones that are not self updating, so Terminal commands such as top, which shows information similar to Activity Monitor will not run. In this example I am going to use the “cal” option to show the calendar. However as you become more experienced with the app and Terminal commands you can put practically anything in the box.

Therefore select the text box labelled command and type “cal”. After a brief moment a calendar will show up on your Desktop in the place of the Geeklet.

At the bottom your will notice two options, Refresh and Timeout. Since GeekTool will only accept static commands you set the refresh option to try the command again to get new information. For commands which will show very static options such as a calendar your can set the refresh option to a long time. Commands which show your CPU usage (which I will post later) you can set to one or two seconds. If you use commands that pings an internet page or pulls a lot of information you can use the Timeout option to stop it taking too long or using up too many resources. Remember the more complex the command and the more you refresh it the greater number of system resources you will take up.

Since the command box is a little small, I recommend you develop your Geeklet command within Terminal. It is a lot quicker to write a command within Terminal than in the command box.

Step 3. Style Your Geeklet

We now have a small calendar sitting on our Desktop behind our icons. We can now style it to make it look better. At the bottom of the preference pane for the Geeklet you will notice some options to style the text and background. When you click on the button to style the text a window will pop up giving you the options to style the text. If you want to change the text colour, click on the little green button at the top of this popup window. If you haven’t used this window button it can be difficult to find.

Have a play around with the text size and colour. I recommend an transparent background with white text, however adjust it to meet your desktop background and style.

Step 4. Position Your Geeklet

The final step is to fully position your Geeklet. The reason I suggest you do this last is due to the style and size of your command. There is no point in positioning a Geeklet only to have to move it again when you write your command and style it. Within the properties box add a name and use the text box numbers to position it on screen. You can move the Geeklet by hand and then use the number boxes to finalise the position.

A quick tip here, if you ever delete a Geeklet by accident, press Command + Z to get it back. I’ve found this more than useful on a number of occasions.

Step 5. Add More

The last step is to add more Geeklets. The limit here is really your imagination (and Terminal coding skills). You can use the image Geeklet to get images from web cams or other sources. The file Geeklet is very useful if you want to read from a log or a text file. You can use the extra settings to make sure you get the perfect little desktop icon.

If you are looking for stuff to add to your Desktop you can check out Small Little List of Geek Tool Commands, written by myself a while ago. Another great tool is Geeklets on MacOSXTips. These are small little files that contain all of the information needed to run on your desktop. Anything your can do in Terminal will work with Geektool (except the self updating commands, of course).

My Geeklets

To get the inspiration following below is an image of what I have on my desktop. I’m still thinking about adding more, I need to find the time to play around with the commands.

As shown there is a calendar, current disk space, load on my Mac and well as network through put (from the Geeklet website just mentioned). I also have a liveish image of the international space station found from Heavens Above which is set to update every 30 seconds. The following commands were used for load and CPU usage. Although it uses top (which is self updating command and thus not allowed), to actually cuts information out of the top command so it is perfectly OK.

top -l 1 | awk '/Load/ {print $1 " " $2 " " $3 " " $4" " $5}'; top -l 1 | awk '/CPU usage/ {print $1 " " $2" " $3" "$4" "$5" "$6" "$7" "$8}' ;

Conclusion

There are hundreds of ways to play around with this little program. I’ve had it installed over the last couple of days and made many commands and options which i’ve placed on my desktop. It is limitless for what you can do. The best way to use this app is to play around with it and query Google any time you have a problem or need something doing.

If you have found some cool Geeklets or commands, please leave a comment below. Also if you have set up some cool desktops please give a link to an image of what you have done. In the near future I may have a second post of other cool Geeklet commands, so stay tuned. In the mean time if you are stuck for commands either search this site, or visit the Terminal categories page, Google is a good resource as well as Mac OS X Unix Toolbox and The Mac OS X Command Line: Unix Under the Hood from Amazon.

If you want to keep up with the latests post from Mac Tricks And Tips I recommend you subscribe to the RSS Feed.