The definitive dynamic theme manager for Hyprland. LiveWall Engine bridges the gap between high-fidelity media and system-wide aesthetics. Preview and apply Material You color schemes derived from any source: 4K MP4s, animated GIFs, or high-res stills.
Warning
COMPOSITOR COMPATIBILITY This engine is strictly optimized for Hyprland and the illogical-impulse (end-4) dotfile architecture.
While it uses standard Python/PyQt6, the application logic directly modifies specific JSON structures used by quickshell. If you are using Niri, KDE, GNOME, or other WMs, please back up your configurations before use, as stability on these platforms is currently experimental.
- ✨ Features
- 🖼️ Preview
- 📦 Requirements
- 🚀 Installation
- ⚙️ Configuration
- 🎮 Usage
- 🔌 Integration
- 🛠️ Troubleshooting
- 📄 License
- 🌐 External Links
- Native HW Acceleration – Real-time playback for
MP4,MKV, andWebMdirectly within the GUI usingQtMultimedia. - Dynamic GIF Rendering – Smooth, infinite looping via
QMoviefor animated wallpapers. - Aspect-Aware Scaling – Intelligent UI that scales previews without distorting the original media's ratio.
- 9 Specialized Schemes – Full access to
scheme-content,expressive,fidelity,fruit-salad,monochrome,neutral,rainbow,tonal-spot, andvibrant. - Palette Inspector – Visual swatches show the exact HEX values generated by the algorithm.
- Instant Clipboard – Click any swatch to instantly copy the HEX code for manual CSS/Config tweaks.
- Pre-Flight Backups – Automatically snapshots
config.jsonbefore every theme application. - One-Click Rollback – Instantly restores the previous wallpaper, Light/Dark mode, and color scheme if the result isn't perfect.
You.can.select.gifmp4.1.mp4
| Dependency | Purpose | Installation (Arch) |
|---|---|---|
| Python 3.10+ | Script runtime | sudo pacman -S python |
| PyQt6 | GUI Framework | pip install PyQt6 |
| matugen | Theme Engine | yay -S matugen |
| ffmpeg | Media Processing | sudo pacman -S ffmpeg |
| mpvpaper | Video Wallpaper | sudo pacman -S mpvpaper |
| GStreamer | Preview Backend | sudo pacman -S gst-plugins-good gst-libav |
- Clone the repository
git clone https://github.com/Obstruction-Core/LiveWall_engine.git cd LiveWall_engine - Install Python dependencies
pip install PyQt6
- Launch the Engine
python livewall_app.py
To launch LiveWall directly from your WallpaperSelector.qml:
IconToolbarButton {
text: "rocket_launch"
toolTipText: "Open LiveWall Engine"
onClicked: {
Quickshell.exec(["python3", "/home/" + String.getenv("USER") + "/path/to/livewall_app.py"])
GlobalStates.wallpaperSelectorOpen = false;
}
}
- Media Won't Play: Ensure gst-plugins-good and gst-libav are installed.
- Colors Not Applying: Verify matugen is in your $PATH.
- end-4 – For the illogical-impulse dotfiles and architectural inspiration.
- InioX – For the powerful matugen extraction tool.
- The Hyprland Community – For the best tiling window manager experience.
Explore the ecosystem that makes this project possible:
- illogical impulse – Documentation for the dotfiles.
- Hyprland Home – The dynamic tiling Wayland compositor.
- InioX GitHub – Home of Matugen and other incredible tools.
Distributed under the MIT License.