Finally, a Linux wallpaper that just works.
Set any video, GIF, or image as your Linux desktop. Hardware-accelerated playback keeps CPU near zero, on X11 and Wayland. Close the app; the daemon keeps it playing.
total downloads
github stars
latest release
free and open source
fresco at a glance
- Fresco is a free, open-source live wallpaper app for Linux: it sets video, GIF, image, slideshow, and playlist wallpapers as your animated desktop background, with GPU hardware decoding. A free Wallpaper Engine alternative and a GUI for mpvpaper on Wayland.
- Any X11 desktop (Ubuntu, Pop!_OS, Linux Mint, Debian), plus Wayland layer-shell compositors: COSMIC, Hyprland, Sway, KDE Plasma 6. GNOME Wayland falls back to a static frame.
- GPL-3.0, free forever. Source on GitHub. Built with Rust, GTK4, and mpv.
curl -fsSL https://github.com/DibbayajyotiRoy/fresco/releases/latest/download/install.sh | bash
features
Any media. Any monitor. No CPU drama.
Fresco sets video, GIF, image, slideshow, and playlist wallpapers on X11 and Wayland, decoded on the GPU so a live wallpaper costs about as much as a static one. The full spec sheet:
| Capability | What you get | Status |
|---|---|---|
| hw decode | Hardware-accelerated playback. Decoding runs on the GPU through mpv (VA-API or NVDEC). A 4K video wallpaper costs about as much CPU as a static image. | near-zero cpu |
| sessions | X11 and Wayland. A desktop-window backend on any X11 desktop, plus a layer-shell backend for COSMIC, Hyprland, Sway, and KDE Plasma 6. GNOME Wayland gets a static-frame fallback. | x11 · layer-shell |
| catalog | Built-in wallpaper catalog. Browse curated, licensed wallpapers in-app (menu, then Browse wallpapers) and set one in two clicks. You can also paste a direct link. | in-app |
| video · gif | Video & GIF wallpapers. Loop any mp4, webm, mkv, or animated GIF as your desktop. | mp4 webm mkv gif |
| slideshow | Slideshows with transitions. Rotate a folder of images with crossfade, fade, or Ken Burns. | 4 transitions |
| playlist | Video playlists. Queue several clips and let Fresco cycle through them. | auto-cycle |
| editor | Crop and rotate. Drag a frame to pick the region, rotate 90 degrees to fix sideways clips. Both stay zero-copy on the GPU. | zero-copy |
| audio | Per-wallpaper sound. Unmute a video and set its volume. Fresco remembers the choice for that wallpaper. | per-wallpaper |
| displays | Per-display wallpapers. Right-click any wallpaper and Set on a specific display. Each monitor can run its own. | per-monitor |
| schedule | Day and night schedules. Two wallpapers, two switch times, swapped automatically by the daemon. Time slots and solar switching via config. | automatic |
| power | Power-aware. Pause on battery, and auto-pause per monitor when a window there goes fullscreen. | auto-pause |
| browser new tab | Your wallpaper on every new tab. A companion browser extension (Chrome, Brave, Edge, Firefox) mirrors your desktop wallpaper, or a browser-specific pick, on the new-tab page via a local bridge that talks only to 127.0.0.1. In the repo today; store listings pending. | coming soon |
| themes | Themes and accents. Light, dark, or follow the system, with six accent palettes. | 6 palettes |
compare
Fresco vs the Linux wallpaper field.
Fresco is the only actively maintained Linux live-wallpaper app in this table that combines a GUI, hardware decoding, X11 and Wayland support, and a built-in catalog, free. Here is the full comparison with Hidamari, Komorebi, mpvpaper, and Wallpaper Engine.
| Feature | Fresco | Hidamari | Komorebi | mpvpaper | Wallpaper Engine |
|---|---|---|---|---|---|
| GUI app, no terminal | Yes | Yes | Yes | No | Yes |
| Works on X11 | Yes | Yes | Yes | No | Compositor off |
| Works on Wayland (layer-shell) | Yes | Partial | No | Yes | No |
| Hardware decode, low CPU | Yes | Partial | Partial | Yes | Yes |
| Drag-to-crop and rotate | Yes | No | No | No | Crop only |
| Playlists | Yes | No | No | Manual | Yes |
| Image slideshow | Yes | No | No | No | Yes |
| Wallpaper library | Yes | No | No | No | Yes |
| Built-in wallpaper catalog | Yes | No | No | No | Workshop |
| Per-display wallpapers (GUI) | Yes | No | No | Manual | Yes |
| Day and night schedules | Yes | No | No | No | Partial |
| Actively maintained | Yes | Yes | No | Yes | Yes |
| Free and open source | Yes | Yes | Yes | Yes | No |
what's new · v1.1.2
The catalog, per-display wallpapers, and schedules just landed.
What shipped in v1.1.2. Each entry here is reproduced in the CHANGELOG on GitHub.
Built-in wallpaper catalog
Browse curated, licensed wallpapers in-app and set one in two clicks. License and author on every card.
Per-display wallpapers
Right-click a wallpaper and set it on one specific monitor. Each display can run its own.
Day and night schedules
Two wallpapers, two switch times. The daemon swaps them automatically, no restart needed.
Measured picture quality
Sharper 8K to 4K downscaling, zero banding, pixel-exact HiDPI. Verified by an in-tree fidelity harness.
how it works
Three clicks, then forget about it.
Open Fresco, click add, click set, close. The daemon keeps the wallpaper running, even after you reboot.
- step 01
Pick your media
Open Fresco from your app menu and choose a video, GIF, image, folder, or playlist.
fresco — add wallpaper.mp4 - step 02
Click Set
Set it as your wallpaper. It starts playing on your desktop right away.
fresco — set-as-wallpaper - step 03
Close the app
Quit the window. A lightweight daemon keeps the wallpaper running, even after a reboot.
frescod — detach
DEPLOYED ENVIRONMENTS
Where Fresco runs.
On any X11 desktop and on Wayland layer-shell compositors — COSMIC, Hyprland, Sway, and KDE Plasma 6 — across the popular Debian and Ubuntu distributions. GNOME Wayland gets a static-frame fallback.
sessions and compositors
- X11 (any desktop)GNOME, KDE, XFCE, MATE, Cinnamon, BudgieLive wallpaper
- Wayland layer-shellCOSMIC, Hyprland, Sway, KDE Plasma 6, wlrootsLive wallpaper
- GNOME on WaylandStatic-frame fallback (Mutter has no live surface)Static fallback
tested distributions · 6
supported formats · 11
download
Deploy on Debian, Ubuntu, Pop!_OS, and Mint.
The official one-line installer or the .deb release. Either path copies to your clipboard and runs instantly. Fresco keeps playing after you close the window.
one-line install
Run this in a terminal. It downloads and installs the latest .deb for you — always the newest release:
curl -fsSL https://github.com/DibbayajyotiRoy/fresco/releases/latest/download/install.sh | bashsudo apt install ./fresco_*.debFor the lowest CPU usage, install your GPU's hardware-decode driver (Intel media VA driver, Mesa VA drivers, or the NVIDIA proprietary driver for NVDEC).
faq
Questions, answered.
Everything you need to know before setting your first live wallpaper on Linux.