In the week before the last, I discovered two wonderful things from the internet. The first is the following wallpaper of Konpaku Youmu:
What makes this wallpaper awesome is how Sakuya Tuitachi, the illustrator, shade the swimsuit. (Nudge nudge, wink wink, say no more.) The flowery background was put together by Ryo Hiiragi of I.S.W Designing, who also made the white swimsuit version available for download. His website features many wallpapers that combine moe and design to great effects. However, I couldn’t find any direct links to the Youmu ones there, so scroll to the end of the post for the links.
Earlier that week, I forgot many appointments in a row. I decided to fix this bad habit by putting reminders on the desktop so that I knew what was coming. I spent one day experimenting with widget systems such as Dashboard, Yahoo Widgets, and Google Desktop Gadgets. All of them have widgets for putting up simple reminders, but I didn’t like any. I found Dashboard and Google Desktop Gadgets hard to access because you have to press F4 to invoke them. On the other hand, Yahoo widgets behave like ordinary applications, which means they will either clutter the screen or completely disappear when I use Exposé. None of these widgets would complement the beautiful Youmu wallpaper I just found.
So I came to a conclusion that I need something that will put the reminders as a part of the background. In this way, they will be always be visible when there are no applications running. Moreover, I can also swipe four fingers up the trackpad if I want to see them.
GeekTool is like a godsend to me.
GeekTool allows you to put (1) text files, (2) pictures, and (3) output of a shell command directly on the desktop. These pieces of information, referred to as “geeklets,” will be a part of the background: you cannot click or interact with them. While this seems like a limited set of functionalities, GeekTool is awesome because:
Customizability: Being able to put up an output of a shell command means that you can put all kinds of information on the desktop. Moreover, unlike writing Dashboard or Yahoo widgets, you can do this without having to learn a new programming language or a new API. You just have to harness your existing knowledge of Unix or a scripting language. (Python in my case.)
Integration with Wallpaper: GeekTool allows you to set the typography and the location of of each individual geeklet. Here are some interesting desktops that people have come up with:
A more detailed introduction to GeekTool can be found here.
I tried to emulate some of the designers above and came up with a Youmu desktop theme:
I have made a zip file containing all the geeklets I used and two versions of the wallpaper: one is identical to what Ryo Hiiragi distribute and the other with white background. The link is at the end of the article.
Installating the Theme
Make sure you have GeekTool installed in your system.
Install icalBuddy, which provides command-line utilities to fetch information from iCal. “Events in 7 Days” and “To Do List” rely on it.
Copy battery.pl to your home directory (/Users/yourname/) and make sure that you can run it as a command.
Double-click all files with extension .glet. Double-clicking such a file will make GeekTool load and display it as a part of the background. (I don’t know a less tedious way to go about this. If anyone knows, please tell me.)
I wrote only the trivial geeklets: the static texts and the ones that display date and time. More involved scripts, such as uptime, to-do, and event scripts, were lifted from the repository at MacOSXTips. battery.pl is a modified version of a snippet from Snipplr.