README.md
June 10, 2026 ยท View on GitHub
Overview
This app aims to be a fully functional linux implementation of Wallpaper Engine, which offers the best dynamic wallpapers. It uses linux-wallpaperengine to apply the wallpapers and steamworks.js to interact with the Steam Workshop.

๐ Table of Contents
๐ฆ Installation
1. Wallpaper Engine (Steam)
You need to own and install Wallpaper Engine on Steam. Open Wallpaper Engine via Steam so the wallpapers are downloaded to your system.
Note
If you use Arch btw, you can install everything with the command below and you can skip steps 2 & 3. It will install linux-wallpaperengine which will take a few minutes to build.
yay -S linux-wallpaper-engine-ux
2. Install linux-wallpaperengine
You need to go to the linux-wallpaperengine repo page and follow the build instructions to compile and install it. Please read carefully and make sure it supports your OS and configuration โ if it doesn't, this app is useless. Wayland works with compositors that support wlr-layer-shell-unstable, while X11 requires XRandr and --screen-root <screen_name> (as shown in xrandr) and currently does not work if a compositor or desktop environment (e.g. GNOME, KDE, Nautilus) is drawing the background.
If you installed via build from source, you need to copy(or symlink) the binary that was produced in the build directory. So it is accessible in your PATH:
sudo cp /<path>/<to>/<your_build>/linux-wallpaperengine /usr/local/bin/linux-wallpaperengine
Verify the installation:
linux-wallpaperengine --help
Test if it is working on your system by applying a wallpaper with the cli. For example (you will need to find your own path to the wallpaper file and the screen name):
linux-wallpaperengine --screen-root DP-2 --bg /home/$USER/.local/share/Steam/steamapps/workshop/content/431960/<wallpaper_id>
3. Linux Wallpaper Engine UI
Grab the latest package from GitHub Releases for your distro.
Debian / Ubuntu (.deb)
sudo apt install ./linux-wallpaper-engine_<version>_amd64.deb
Fedora / RHEL (.rpm)
sudo dnf install ./linux-wallpaper-engine-<version>.x86_64.rpm
Flatpak
flatpak install --user ./com.github.jagrat7.LinuxWallpaperEngine_stable_x86_64.flatpak
ZIP (Portable)
# Extract the archive (use your preferred tool: unzip, 7z, etc.)
unzip linux-wallpaper-engine-<version>-linux-x64.zip
cd linux-wallpaper-engine-linux-x64
./linux-wallpaper-engine
Recommended OS-specific installations:
Arch Linux (AUR)
yay -S linux-wallpaper-engine-ux
Nix / NixOS (Flakes)
Run the app without installing (flakes must be enabled):
nix run github:jagrat7/linux-wallpaper-engine
On NixOS, add the flake as an input:
# flake.nix
{
inputs = {
linux-wallpaper-engine.url = "github:jagrat7/linux-wallpaper-engine";
# ...
}
# your system outputs...
}
Then simply consume the package:
# in a NixOS system module...
{ inputs, pkgs, ... }:
{
environment.systemPackages = [
inputs.linux-wallpaper-engine.packages.${pkgs.stdenv.hostPlatform.system}.default
# ...
];
}
# or in a home-manager module...
{ inputs, pkgs, ... }:
{
home.packages = [
inputs.linux-wallpaper-engine.packages.${pkgs.stdenv.hostPlatform.system}.default
# ...
];
}
โจ Features
- Wallpaper Gallery โ Browse all your Steam Workshop wallpapers in a responsive, animated grid with thumbnails. You can add filters and sorts to make it easier to find the wallpapers you want.
- Per-wallpaper Settings โ Save settings for each wallpaper individually.
- Filtering, Sorting, and Searching

- Steam Workshop Integration (NEW!) โ Browse and subscribe to new wallpapers from the Steam Workshop.

- Playlists โ You can create and apply playlists to group wallpapers together and apply them to your monitors.

- Compatibility/Errors tracking โ You can manually tag the wallpapers as compatible or not from the settings or run the compatibility scanner to bulk-tag them, it's not 100% accurate but it will get you close. You can filter out wallpapers with errors or compatibility issues so you don't see them in the gallery.

-
Wouldn't be a linux experience without it not working on your system. Enter debug mode when applying a wallpaper to see what's happening:

-
Multi-Monitor Support โ Detect all connected displays, apply different wallpapers per screen, and view your monitor layout at a glance

- Theming โ Choose from Light, Dark, Steam, Hard Light, or System themes

- Settings โ Comprehensive options to tailor the application to your needs:

๐ฎ Future Features
- A single installation for both the backend and the UI.
- Make per-wallpaper settings dynamic.
๐ค Contributing & Feedback
Contributions and feedback are welcome! Checkout Discussions to vote on features, share ideas, or ask questions. You can also open an issue or submit a pull request. See CONTRIBUTING.md for more info.