WeatherDesk – Change Wallpapers Based on Current Weather Conditions

Today we have quite a nifty Linux tool for you, it’s called WeatherDesk. If you have always wanted to be able to set your desktop wallpapers based on the weather conditions in your area then today is your lucky day.

WeatherDesk is an open source that automatically changes your desktop background picture based on the weather and even optionally, based on the time of the day. It works excellently on most desktop environments and is available for Windows and Mac as well.

I must say, however, that it will take a good amount of manual tweaks for the tool to work. For example, you will need to name the wallpapers you want to use in a specific way according to WeatherDesk’s naming convention.

The good news is that you don’t have to bother yourself with that thanks to Redditor, JuniorNeves, who has put together a zip folder of wallpapers already named according to WeatherDesk’s convention.

Features in WeatherDesk

  • Free to use and open source with the source code available on GitHub.
  • Available for Windows, Mac, and Linux.
  • Auto-change desktop background based on current weather.
  • Auto-change desktop background based on 4 optional times of the day: day/night, day/evening/night and morning/day/evening/night.
  • Has support for a variety of Linux desktop environments, including Cinnamon, GNOME, Unity, Xfce, LXDE, LXQt, Pantheon, and MATE.
  • Manually specify the image format, update interval, e.t.c.

At the moment, the installation process is via the Terminal so just enter the following commands in a new Terminal window:

$ sudo apt install wget 
$ sudo wget https://github.com/bharadwaj-raju/WeatherDesk/archive/master.tar.gz -O /tmp/weatherdesk.tar.gz
$ sudo tar -xvf /tmp/weatherdesk.tar.gz -C /tmp/
$ sudo mkdir /opt/weatherdesk
$ sudo cp /tmp/WeatherDesk-master/*.py /opt/weatherdesk/
$ sudo chmod +x /opt/weatherdesk/WeatherDesk.py
$ sudo ln -s /opt/weatherdesk/WeatherDesk.py /usr/local/bin/weatherdesk

After the installation is complete you can enter “weatherdesk” in the terminal to run the tool.

The link to download the zipped folder of wallpapers (called FireWatch) is below. After downloading it, extract it into ~/.weatherdesk_walls (or into any directory and pass its path with --dir).

[mks_button size=”medium” title=”Download FireWatch .zip Folder” style=”squared” url=”https://github.com/bharadwaj-raju/FireWatch-WeatherDesk-Pack/archive/master.zip” target=”_blank” rel=”nofollow” bg_color=”#46698E” txt_color=”#fff” icon=”fa-download” icon_type=”fa” nofollow=”1″]

How to Use WeatherDesk

To see all the available WeatherDesk options, run the following command:

$ weatherdesk --help

For example, to force WeatherDesk to use the weather information for London instead of the automatically detected city, use:

$ weatherdesk -c london

To get WeatherDesk to also change the wallpaper based on the current time of day, and not just based on the current weather, run it with the “-t” option, like this:

$ weatherdesk -t

By default this will use the “day / evening / night” variation. To use the “morning / day / evening / night” variation (for more info about this, run “weatherdesk –info“), run it like this:

$ weatherdesk -t 4

If you want WeatherDesk to change the wallpaper based on current weather conditions every time you log in, make sure to add it to your startup applications (in Ubuntu with Unity, launch Startup Applications, click “Add” and use “weatherdesk” as the command).

That was a lot of tweaking right? Hopefully, the devs will come to the rescue of Linux newbies with this one. Till then, run the codes and don’t forget to tell us what you think about the tool in the comments section.

Divine Okoi is a cybersecurity postgrad with a passion for the open-source community. With 700+ articles covering different topics in IT, you can always trust him to inform you about the coolest tech.

Each tutorial at GeeksMint is created by a team of experienced writers so that it meets our high-quality writing standards.

Got Something to Say? Join the Discussion...