Bwall – Change your wallpapers as per your battery percentage

Change Your Wallpaper As Per Your Battery %

Your Desktop is the first thing you encounter when you turn on your system, and you see things like your wallpaper and desktop icons if you have placed any. Wallpapers and themes can change the entire look of your desktop, and hence you should carefully choose both of them.

Wallpaper Engine is a windows only application which uses your GPU to show animated (or live) wallpapers, but it is not available on Linux and the developers also not plan to port it to this open source platform. However, there is a simple open source bash script, which can help you to display your battery percentage (on a mobile device) in a creative and beautiful manner to your desktop.

Bwall, developed by adi1090x on GitHub, is a bash script under GPL v3 license which offers you several wallpaper options from which you can pick to display on your desktop. And in this tutorial, we will learn how to install, and set up different wallpapers to your desktop and also see how can you enable it to automatically to run when your system is started.

Features of Bwall

There are numerous things which make the Bwall Script really attractive, some of them are mentioned below:

  • There are 21 different wallpaper options for you to choose from.
  • All 21 wallpapers have battery charging animation.
  • Whenever your device’s battery is fully charged, the script will stop the animation.
  • Because of the open source nature, users can also add their own icons, wallpapers using their own unique style.
  • When the device is not charging, this script will change the wallpapers based on the battery percentage.
  • It supports numerous Window managers such as Openbox, i3wm, bspwm, awesomewm, Fluxbox, Fvwm and Swaywm as well as Desktop Environments like KDE, Pantheon, GNOME, Deepin, Cinnamon, XFCE, LXDE and MATE.

Installing Bwall on Linux

There are several dependencies which you should install first before installing this script, the dependencies are git, acpi, feh and xrandr. Depending upon your Linux distribution, type the following commands in your Terminal window to install these dependencies:

# On Debian and Ubuntu based distributions
sudo apt update && sudo apt-get install acpi feh x11-xserver-utils

# On Arch Linux based distributions
sudo pacman -Sy acpi feh xorg-xrandr

# On Fedora Workstation
Installing The Dependencies Of Bwall On Fedora Workstation
Installing The Dependencies Of Bwall On Fedora Workstation

When all the dependencies are installed, you can clone the repositories using the git command:

git clone
Cloning The GitHub Repository
Cloning The GitHub Repository

Finally, enter into the cloned directory and then install Bwall by typing:

cd battery-wallpaper
chmod +x
Installing Bwall On Fedora
Installing Bwall On Fedora

Running the program

Simply type Bwall into the Terminal and press the enter key.

Running The Bwall Command Will Display All The Availabe Wallpapers
Running The Bwall Command Will Display All The Available Wallpapers

In order to set your wallpaper, you have to type the command with -s flag along with the name of wallpaper you want to set. You can pick any of the names listed in the available styles. For example:

bwall -s bar
Using The Bar Wallpaper Using Bwall
Using The Bar Wallpaper Using Bwall

Note that you may have to switch to the light/default mode in order to see the wallpaper change.

Also Read: Change your GTK4 themes on GNOME 40+

Setting up Autostart

In case you want to make this script run automatically on a cold boot, you can do that by adding the script to your Window Manager’s autostart file. If you are using a Desktop Environment, then you can add a desktop entry in the autostart directory. You can do that by typing the following commands:

cd $HOME/.config/autostart && touch bwall.desktop
Create A Desktop Entry For The Command
Create A Desktop Entry For The Command

Now, using your text editor such as Vim or Nano, open the file like this:

# For Vim Users
vim bwall.desktop

# For Nano Users
nano bwall.desktop

Now, add the following text to the desktop file:

[Desktop Entry]
Name=Battery Wallpaper
Comment=Set desktop background according to battery percentage, with charging animation.
Exec=/usr/bin/bwall -s leaves &
Add The Respective Text To The Desktop File
Add The Respective Text To The Desktop File

Now, whenever you will start your system, the selected theme will be automatically applied.


This is a really awesome script which can change the wallpapers as per your battery percentage, so you will always get an Idea about your battery without ever looking at the top/bottom right corner of your screen. But keep this in mind that the more background applications you have running, the more your battery will lose charge faster. So, it is recommended that you use the delay flag (-d) and specify a specific interval of time (for example, 240 seconds) so that this script will check for your battery percentage less frequently. You can also use tools like TLPUI to increase the Battery life of your system.