Solutions to common issues with hyprlax.
fatal error: wayland-client.h: No such file or directory
Solution: Install Wayland development packages:
# Arch
sudo pacman -S wayland wayland-protocols
# Ubuntu/Debian
sudo apt install libwayland-dev wayland-protocols
# Fedora
sudo dnf install wayland-devel wayland-protocols-develfatal error: EGL/egl.h: No such file or directory
Solution: Install Mesa development packages:
# Arch
sudo pacman -S mesa
# Ubuntu/Debian
sudo apt install libegl1-mesa-dev libgles2-mesa-dev
# Fedora
sudo dnf install mesa-libEGL-devel mesa-libGLES-develmake: wayland-scanner: Command not found
Solution: Install wayland-scanner:
# Arch
sudo pacman -S wayland
# Ubuntu/Debian
sudo apt install wayland-scanner
# Fedora
sudo dnf install wayland-develhyprlax: command not foundSolution: Add installation directory to PATH:
# If installed to ~/.local/bin
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
# Verify
which hyprlaxCommon Causes & Solutions:
-
Wrong image path
# Use absolute path hyprlax /home/username/Pictures/wallpaper.jpg # Not relative path # hyprlax ../wallpaper.jpg # May not work
-
Image format not supported
- Supported: JPEG, PNG
- Not supported: WebP, AVIF, SVG
- Convert unsupported formats:
convert image.webp image.jpg
-
Another wallpaper daemon running
# Kill other daemons pkill swww-daemon pkill hyprpaper pkill swaybg # Then start hyprlax hyprlax wallpaper.jpg
-
Permissions issue
# Check file permissions ls -la /path/to/wallpaper.jpg # Fix if needed chmod 644 /path/to/wallpaper.jpg
Solutions:
-
Reduce frame rate
hyprlax --fps 30 wallpaper.jpg
-
Toggle vsync
# Enable vsync (default is off) hyprlax --vsync wallpaper.jpg # Or run without --vsync if previously enabled
-
Use simpler easing
hyprlax -e linear wallpaper.jpg
-
Reduce layer count (multi-layer mode)
# Instead of 5 layers, use 3 hyprlax --layer bg.jpg:0.3:1.0 \ --layer fg.png:1.0:0.8
Check if workspace changes are detected:
-
Verify Hyprland IPC
# Check if socket exists ls -la /tmp/hypr/ # Should show .socket2
-
Test workspace switching
# Run with debug mode hyprlax --debug wallpaper.jpg # Switch workspaces and check output
-
Check permissions
# Ensure socket is readable ls -la /tmp/hypr/.socket2
-
Check image paths
# All paths must be absolute hyprlax --layer /home/user/layer1.png:0.3:1.0 \ --layer /home/user/layer2.png:1.0:0.8 -
Verify PNG transparency
# Check if PNG has alpha channel identify -verbose image.png | grep "Channel"
-
Check layer order
- First layer = background (bottommost)
- Last layer = foreground (topmost)
-
Reduce blur amounts
# Instead of blur:5.0, use blur:2.0 --layer bg.jpg:0.3:1.0:2.0 -
Pre-blur backgrounds
# Blur image beforehand convert input.jpg -blur 0x8 output.jpg # Then use without runtime blur --layer output.jpg:0.3:1.0
-
Limit blur to fewer layers
- Only blur 1-2 background layers
- Keep foreground layers sharp
Failed to create EGL context
Solutions:
-
Check GPU drivers
# Check renderer glxinfo | grep "OpenGL renderer" # For NVIDIA nvidia-smi # For AMD glxinfo | grep AMD
-
Try software rendering
LIBGL_ALWAYS_SOFTWARE=1 hyprlax wallpaper.jpg
-
Update drivers
# Arch - NVIDIA sudo pacman -S nvidia nvidia-utils # Arch - AMD sudo pacman -S mesa xf86-video-amdgpu
Error: wlr-layer-shell not supported
Solution: Hyprlax requires a compositor with layer-shell support. Compatible compositors:
- Hyprland (recommended)
- Sway
- River
Not compatible:
- GNOME Wayland
- KDE Wayland (without layer-shell)
- Wayfire (blocked; see issue #40)
-
Check file path
# Verify file exists ls -la ~/.config/hyprlax/parallax.conf
-
Validate syntax
# Check for syntax errors cat ~/.config/hyprlax/parallax.conf # Common issues: # - Missing image paths # - Invalid numbers # - Wrong parameter count
-
Debug mode
hyprlax --debug --config ~/.config/hyprlax/parallax.conf
Error: Invalid layer specification
Fix format:
# Correct: image:shift:opacity
--layer /path/to/image.jpg:0.5:1.0
# Wrong: missing parameters
--layer image.jpg:0.5 # Missing opacityCauses:
- Not running under Wayland
- WAYLAND_DISPLAY not set
Solutions:
# Check if running Wayland
echo $WAYLAND_DISPLAY
# Should output: wayland-0 or wayland-1
# If empty, not running WaylandCauses:
- Hyprland not running
- Socket permissions issue
Solutions:
# Check if Hyprland is running
pgrep Hyprland
# Check socket
ls -la /tmp/hypr/.socket2
# Restart Hyprland if neededCause: Image exceeds GPU texture limits
Solution:
# Resize image
convert large.jpg -resize 3840x2160 resized.jpg
# Use resized version
hyprlax resized.jpgCollect this information when reporting issues:
# Hyprlax version
hyprlax --version
# System info
uname -a
lsb_release -a
# GPU info
glxinfo | grep -E "OpenGL renderer|OpenGL version"
# Wayland info
echo $WAYLAND_DISPLAY
echo $XDG_SESSION_TYPE
# Debug run
hyprlax --debug wallpaper.jpg 2>&1 | tee hyprlax_debug.logReport issues at: https://github.com/sandwichfarm/hyprlax/issues
Include:
- Debug output
- System information
- Steps to reproduce
- Expected vs actual behavior
- Configuration used
- Review configuration guide for setup help
- See examples for working configurations
- Check multi-layer guide for advanced features