This tutorial explains how to create an endless stream of free, ever-changing, high-quality desktop wallpaper for your Mac. It takes a little bit of setup, but once it’s up and running, it works automatically in the background without your needing to do anything.

Required Tools

  • IFTTT (“If This, Then That”) Account – IFTTT is a free service that allows you to create “recipes” tying various online services to each other. If you don’t already have an account, set up a free one at ifttt.com.
  • Dropbox Account – Dropbox provides online cloud storage and also replicates files to and from your Mac. You can get 2GB of space free, or you can get 1TB of space for $8.25 a month.
  • Dropbox Client App for Mac – You will need the Dropbox client on your Mac to replicate files from your Dropbox cloud folder to your Mac.
  • Hazel App for Mac – Hazel is a fantastic utility that automatically organizes files on your Mac according to rules you specify. Hazel can open, archive, tag and even upload. You can have Hazel rename your files or sort them into subfolders based on name, date or whatever combination of attributes you choose. It has a ton of features and is well worth the purchase price.

Flow Diagram

The image below shows the basic data flow you will set up with the tools listed above. When completed, you will have a folder on your Mac full of great-looking desktop wallpaper images, and the contents of the folder will continuously refresh with new images.

Click the image to see a larger version

Before you proceed, make sure you’ve met all the requirements listed under “Required Tools” above.


Dropbox

Make sure you have the Dropbox desktop client installed and that the app is replicating your Dropbox folders to your local machine.

Create a new folder somewhere in your Dropbox account that will hold reddit wallpaper images. For example:


IFTTT (“If This, Then That”)

Log in to your IFTTT account, and create a new applet with the following settings:

If This:

  • Service: Reddit
  • Trigger: New Top Post in Subreddit
  • Subreddit: earthporn (note: despite ending in “porn”, this subreddit does not contain any adult or racy images. It’s a forum for posting beautiful landscape photos. You can check it out here.) If you want wallpaper images that feature something besides landscape photos, you can use one of these subreddits instead (click each link to see the photos currently posted to the subreddit):
Then That:

  • Service: Dropbox
  • Action: Add file from URL
  • File URL: ImageURL
  • Dropbox Folder Path: The new Dropbox folder you created specifically for holding reddit wallpaper images.

Save and activate your new IFTTT applet.


Hazel

After installing Hazel, open Hazel’s Settings window (you can find it by clicking on the Hazel icon in the menu bar, then click “Open Hazel…”)

Add your reddit wallpaper folder to the Hazel’s watch list by clicking the “+” button near the lower-left corner:

Next, create some rules in Hazel to manage files in the wallpaper folder:

The first rule removes images whose width is less than the monitor’s horizontal resolution. If your screen width is not 1920 pixels, you should replace “1920” in the following rule with the correct value:

The next rule eliminates images with a portrait orientation (height greater than width.) Make sure you set the Orientation parameter to 1:

The final rule moves older images into an Archive folder. (Alternately, you could move old images to the Trash). NOTE that this rule uses “If any” logic instead of “If all”:


System Desktop Wallpaper Settings

Finally, it’s time to tell your Mac to use your reddit wallpaper images as the desktop background. Go to System Preferences > Desktop & Screen Saver. Add your new folder and set the other preferences as shown below:

That’s it! You should begin to see your folder fill up with wallpaper images within a few hours of setting all this up. Based on my experience, you should receive approximately fifteen images per day into your reddit wallpaper folder.

If you have any problems or questions about this process, feel free to drop me a line at: lee.coursey@leecoweb.com.