The bland default desktops of Windows don’t hold a candle to the beautiful displays RainMeter can create, but Mac users find themselves left out in the cold. RainMeter doesn’t support Mac, and unless you want to run Windows via Bootcamp, you can’t modify your desktop to the extent RainMeter allows—or can you?

GeekTool is the MacOS alternative to RainMeter. It grants the same level of customization as RainMeter does with just a bit of extra work. There is some scripting involved, but don’t let that intimidate you—GeekTool really is easier to use than it looks. Here’s how to get started.

Table of Contents

    Download GeekTool

    The first step is to make sure you have the proper version of GeekTool. The official version is from Tynsoe Projects. While we can vouch for that download, we cannot guarantee any others will be safe.

    Once you have downloaded and run the program, move it into your Applications folder. This will not only protect against wipes of your download folder, but it will allow GeekTool to automatically update when new versions are released.

    GeekTool main window

    After you launched GeekTool, you will be greeted by its primary window. Make sure to click Automatically launch at login and Show in menu bar. Launching the application at startup will ensure your Geeklets operate as you intend, and placing the tool in the menu bar makes it easy to access all of the GeekTool options.

    Customizing GeekTool

    When you first open GeekTool, you’ll see a screen that looks a lot like this.

    GeekTool open on desktop

    GeekTool comes with no clear-cut instructions, but it’s as simple as dragging and dropping what you want. Select the Shell option and drag it out beside the screen. It will create an empty “shell” on your desktop.

    GeekTool with empty shell on desktop

    When you select the shell, you’ll get a Properties screen like the one seen on the right side. Here’s where it can get tricky. From personal experience, we recommend you don’t mess with the positional settings. Just drag the shell where you want it to go rather than trying to guess what the on-screen coordinates might be.

    Next is the fun part.

    Properties screen

    Beside Command: and the blank white line are three little dots. Tap them. Tap the dots. It will open a blank white screen with the heading Edit Script. Enter whatever you want into the window. When you press the red circle in the top left corner to exit, it will ask if you want to save the script. Click yes.

    Once you’ve done this, whatever command you entered will appear in the shell. Of course, you need to enter text the script can understand. Here are a few examples:

    • Day: date “+%A”
    • Date: date +%d
    • Month: date “+%B”
    • Time: date +”%l:%M”
    • Display text: echo + text

    These are just a few basic examples of the kinds of commands you can enter into GeekTool. A more comprehensive list can be found at the official repository of Geeklets [note: link no longer working] or on the GeekTool subreddit.

    If you want to display the way text looks, just click the button that says Click here to set font % color. It will open a Microsoft Word-like toolbar for changing the font, the size, the color, and much more.

    The three other options are very similar.

    Image places an empty shell which you can fill with an image of your choice. It also has an easy, one-click option to display a random image from the directory. You can change the refresh rate to whatever length you want so it cycles through images at a specific interval.

    Web lets you link to a website or include an HTML script on your desktop. While you can, in theory, have an entire web page show up on your desktop, it doesn’t exactly work right. This shell comes in handy for scripts that rely on input from the web, such as the weather or stock information.

    Log lets you keep an eye on what’s happening inside your computer. This is for the truly tech-savvy out there that want to monitor their system’s core temperature, CPU usage, and more.

    GeekTool Mastery

    If you’ve tried out a few features on GeekTool and found it to your liking, the next step is to implement more complex commands. GeekTool is a powerful tool, and if you learn a base amount of coding to help you navigate the various commands, there is almost nothing you cannot do. Just take a look at some of these desktops from users on the subreddit.

    Picture of user desktop created by u/KittehinGloves using GeekTool

    Courtesy of /u/KittehInGloves

    This desktop is nothing short of beautiful. It displays the song that’s currently playing, the temperature and weather conditions outside, and the date and time.

    Picture of desktop created by u/BobTheLog using GeekTool

    Courtesy of /u/BobTheLog

    This desktop is more complex. It uses circular graphs to show CPU and RAM usage, has a reminder at the bottom of the screen, and several other functions.

    You can create a desktop just like this. Those background images are just photos the users found and set as their desktop image, and then they overlaid the GeekTool settings on their screen.

    One of GeekTool’s strengths is that you can place folders and files on the desktop without any interference with the functionality, even if the folder is directly on top of one of the shells. Once you close out of GeekTool, you can click on any icon on the screen like normal.

    What Comes After GeekTool?

    While GeekTool still has a strong, niche community, some people are of the opinion the application is on a downhill slide. Recent MacOS updates have made some of the scripts and commands invalid. We tested GeekTool on the most recent MacOS update and it worked just fine, but Mojave seems to cause interference with certain scripts.

    There are other programs that serve a similar function to GeekTool (like Nerdtool), but they have not yet caught on with the same level of popularity of the community support.

    Until GeekTool is officially no longer supported, we recommend learning your way around a few basic scripts and experimenting with how you can customize your desktop.

    Note: while it isn’t likely, GeekTool can grant access to system-level commands. Be careful when using the Log shells and other commands that access system files.