Add videos as wallpaper on your Linux desktop

wallset is a simple command-line utility that lets you liven up your Linux desktop.
62 readers like this.
Sky with clouds and grass

Flickr user: theaucitron (CC BY-SA 2.0)

The Linux desktop is a beautiful thing, but if you're tired of boring wallpaper, then you should try wallset, a command-line utility allowing you to set a video as your wallpaper. Wallset can also help you manage your wallpaper collection so you can conveniently make changes as often as you want.


First, you must have the following software installed on your system:

After that, you need Git to clone the repository and then install it. To do this, run the commands below:

$ git clone wallset.clone
$ cd wallset.clone
$ ./

Enter your sudo password to complete the installation.


For quick help with the commands, run the wallset command with the --help parameter, or just -h for short.

The first necessary task is to add images. Without images added to wallset, you won't have anything to choose from when setting your wallpaper. To add images, run this:

$ wallset --add image.jpg

You can also add multiple images at once:

$ wallset --add image-1.jpg image-2.jpg image-3.jpg

If it is in a directory with several images, you can also add it like this:

$ wallset --add `ls *.jpg *.png`

Setting a wallpaper

Wallpapers are saved and indexed:

$ wallset --use 001

If you want to set your current wallpaper to the image you're adding, use the --set parameter:

$ wallset --set --add imagem.png

When you add content to wallpaper, a copy of the file is made for wallset to use, so wallset won't break when you move your copy of an image.

List wallpapers

Each time you add an image to wallset, it's indexed with a three-digit number (001, 002, 003, and so on). Obviously, if you have several images, it gets difficult to remember these, so you can see a list of all images you've added with the --count option:

$ wallset --count

You can also browse the images in wallset with the --display option:

$ wallset --display

You can get the number assigned to your current wallpaper using the --show option:

$ wallset --show

Removing images

You can remove the last image added:

$ wallset --remove

This removes the image from wallset.

Looping images

If you love change, you can loop through all images in wallset, so your wallpaper changes at whatever interval you set. To do this, use the --time option, providing some number of seconds as the argument. For example, should you want your wallpaper to change every hour:

$ wallset --quit
$ wallset --time 3600

Adding video as wallpaper

One of the most interesting features of wallset is that you can add videos as your wallpaper. To do this, run the command:

$ wallset --video /path/to/your-video.mp4

To stop a video, the procedure is the same as the image loop: use --quit (or just-q for short).

When you quit, the video image is paused or frozen, and the current frame becomes your current wallpaper. If you want to change that, use the --use [number] parameter to set a new one.

After using a video once, it is automatically added to the wallset video index. To list all videos, use the --list-videos option:

$ wallset --list-videos

If you want to use a video in your video directory, use the --set-video parameter, and then enter the number displayed when listing the videos.

For example:

$ wallset --set-video 1


Wallset is a relatively new script and is largely intended for window managers such as bspwm, Fluxbox, Openbox, Ratpoison, and similar. Feel free to report bugs at

If you want to uninstall wallset, use the installer script with the uninstall parameter:

$ cd ~/wallset.clone
$ ./ uninstall

During the uninstallation, the copies of images and videos added to wallset are also deleted.


I've created a video showing the main features of the program and using the examples that are part of the repository directory itself.

The video is in Brazilian Portuguese, but the commands and visuals are universal.

What to read next
The mind behind the
I am graduated in Accounting Sciences and Post graduated in Information Systems. I have some Linux certifications. I have over 20 years of experience in the Technology area and am a big enthusiast of GNU/Linux, BSD, C++ and Shell Script. The mind behind the


The visual distraction of moving images is immense. I suppose if you're not really doing anything on your computer, it would be Ok, but you might as well just watch TV.

Wow... I am impressed with this

Don't use backticks in your commands but the $( command ) form instead.

Care to explain your reasoning here? Is it for compatibility with a specific shell you use, or is it a visual preference?

In reply to by Jojo (not verified)

I get this error: "You need to install: 'ffmpeg'", and its installed, idk whats happening

The developer probably doesn't monitor this article for incoming support requests. Even if he did, it's not the best forum for technical support, because software issues often require iteration (lots of back and forth discussions -- "Did you try this?" "Yes, I tried that, doesn't work." "How about this?" "That works! Thanks!").

You should file a bug (also known as an "issue" on Github) at

Filing a bug in the official repository ensures your discussion is easy to find, easily noticed by the developer, and that you're notified when the developer responds (likewise for the developer when you respond).

Hope that helps.

In reply to by DanieruSS

Creative Commons LicenseThis work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License.