Setting an Animated Interactive Wallpaper / Video Wallpaper for dom0 from an AppVM [No Dom0 Modifications] revisions

Go back to topic: Setting an Animated Interactive Wallpaper / Video Wallpaper for dom0 from an AppVM [No Dom0 Modifications]

  1. v17 anchor; v17 full version
  2. v16 anchor; v16 full version
  3. v15 anchor; v15 full version
  4. v14 anchor; v14 full version
  5. v13 anchor; v13 full version
  6. v12 anchor; v12 full version
  7. v11 anchor; v11 full version
  8. v10 anchor; v10 full version
  9. v9 anchor; v9 full version
  10. v8 anchor; v8 full version
  11. v7 anchor; v7 full version
  12. v6 anchor; v6 full version
  13. v5 anchor; v5 full version
  14. v4 anchor; v4 full version
  15. v3 anchor; v3 full version
  16. v2 anchor; v2 full version

Revision #17

Edited on
2025-12-12
Edited by user
Pro42good
Recommended templates for this guide: **Fedora Minimal** or **Debian Minimal**. Recommended templates for this guide: **Fedora** or **Debian**. **Optional (Recommended)**: Use a minimal template if your willing to deal with slightly more work for better performance.

Revision #16

Edited on
2025-12-12
Edited by user
Pro42good
Recommended templates for this guide: **Fedora** or **Debian**.
Used for installing packages (mpv, firejail) needed by your AppVM. Used for installing packages (mpv, firejail) needed by your AppVM. Recommended templates for this guide: **Fedora Minimal** or **Debian Minimal**.

Revision #15

Edited on
2025-12-12
Edited by user
Pro42good
firejail mpv --loop --hwdec=no --vo=x11 --no-border -no-input-cursor --no-osc --no-input-default-bindings -ontop=no --ontop=no --geometry=100%x100% --fullscreen /Directory firejail mpv --loop --hwdec=no --vo=x11 --no-border -no-input-cursor --no-osc --no-input-default-bindings --ontop=no --geometry=100%x100% --fullscreen /Directory

Revision #14

Edited on
2025-12-12
Edited by user
shantyspruce
https://youtu.be/Xu1Yjwkrhnk?si=v788_Aj7wTWV-0gp https://youtu.be/Xu1Yjwkrhnk

Revision #13

Edited on
2025-12-12
Edited by user
Pro42good
1. On version 1.1 if you had the video maximized it would still have the top border, fixed on 1.2. 1. On version 1.1 if you had the video maximized it would still have the top border, fixed on 1.2. 2. This is not compatable with transparent panels. (Aka where your tabs are displayed)

Revision #12

Edited on
2025-12-12
Edited by user
Pro42good
Not Recommended but still optimal use a gaming dedicated AppVM With a GPU to take advantage of Hardware decode built into mpv. **Optional (not required):** For smoother playback, an AppVM that already has a GPU assigned to it can take advantage of hardware video decoding in `mpv`. This is purely a performance optimization and not necessary for the guide.

Revision #11

Edited on
2025-12-12
Edited by user
Pro42good
Recommended templates for this guide: **Fedora** or **Debian**. Recommended templates for this guide: **Fedora** or **Debian**. Not Recommended but still optimal use a gaming dedicated AppVM With a GPU to take advantage of Hardware decode built into mpv.
--vf=scale=X-Res:Y-Res #Downscaling for performance gains --vf=scale=X-Res:Y-Res #Downscale, I just found out this DOES NOT improve performance.

Revision #10

Edited on
2025-12-12
Edited by user
Pro42good
echo "Your Wallpaper is now set!" echo "If your having any issues, say something in Qubes forums for this wallpaper guide." echo "Youre Wallpaper is now set!" echo "If you're having any issues, say something in Qubes forums for this wallpaper guide."
8. Enter Screen Resolution, and ***Your Done!*** 8. Enter Screen Resolution, and ***You're Done!***

Revision #9

Edited on
2025-12-12
Edited by user
Pro42good
firejail mpv --loop --no-border -no-input-cursor --no-osc --no-input-default-bindings -ontop=no --ontop=no --geometry=100%x100% --fullscreen /Directory firejail mpv --loop --hwdec=no --vo=x11 --no-border -no-input-cursor --no-osc --no-input-default-bindings -ontop=no --ontop=no --geometry=100%x100% --fullscreen /Directory
--vf=scale=X-Res:Y-Res #Downscaling for performance gains

Revision #8

Edited on
2025-12-12
Edited by user
Pro42good
firejail mpv --loop --no-border -no-input-cursor --no-osc --no-input-default-bindings -ontop=no --ontop=no --geometry=100%x100% --fullscreen /Directory firejail mpv --loop --no-border -no-input-cursor --no-osc --no-input-default-bindings -ontop=no --ontop=no --geometry=100%x100% --fullscreen /Directory
--hwdec=auto #automatically enables hardware decode --hwdec=auto #Automatically enables hardware decode
--hwdec=auto-safe #Force Hardware decode while safe. --hwdec=vaapi #Force Intel & AMD Hardware decode (Even if the VM doesn't want to use them) --hwdec=vdpau #Force Nvidia Hardware decode

Revision #7

Edited on
2025-12-12
Edited by user
Pro42good
firejail mpv --loop --no-border -no-input-cursor --no-input-default-bindings -ontop=no --ontop=no --geometry=100%x100% --fullscreen /Directory firejail mpv --loop --no-border -no-input-cursor --no-osc --no-input-default-bindings -ontop=no --ontop=no --geometry=100%x100% --fullscreen /Directory
--hwdec=auto #automatically enables hardware decode --no-deband #Removes mpv anti-deband, might better performance --scale=bilinear #Reduce video scaling [Cheaper] --scale=nearest #Max Reduction of video scaling [Cheapest]
***Technically Running without firejail gains performance at the cost of security***

Revision #6

Edited on
2025-12-12
Edited by user
Pro42good
#Optional mpv flags --no-audio #No audio, might help performance on rich video formats --vf=fps=30 #Caps FPS

Revision #5

Edited on
2025-12-11
Edited by user
Pro42good

Revision #4

Edited on
2025-12-11
Edited by user
Pro42good

Revision #3

Edited on
2025-12-11
Edited by user
Pro42good
echo "===== QUBES WALLPAPER V1.1 By Pro42good =====" echo "===== QUBES WALLPAPER V1.2 By Pro42good ====="
wmctrl -i -r "$WINID" -b remove,hidden,shaded wmctrl -i -r "$WINID" -b remove,hidden,shaded wmctrl -i -r "$WINID" -b remove,maximized_vert,maximized_horz
None to my knowledge, in fact i fixed one before posting this. As of `12/11/25`. 1. On version 1.1 if you had the video maximized it would still have the top border, fixed on 1.2.

Revision #2

Edited on
2025-12-11
Edited by user
Pro42good
--- --- # For the skeptics: Live Demonstration + Nano showing code: https://youtu.be/Xu1Yjwkrhnk?si=v788_Aj7wTWV-0gp ###### Please forgive me for the bad quality, im not good at using qubes and I don't know how to record ---