nickvasilescu/nicks-stack/desktop-wallpapers
Claude Code and agent skill by nickvasilescu/nicks-stack
- community
Checking that the SKILL.md file is still in the repository.
Create and apply desktop wallpapers/backgrounds, including AI image generation, procedural fallbacks, and Linux desktop-environment wallpaper commands.
Install
npx vskill@latest install nickvasilescu/nicks-stack/desktop-wallpapersSKILL.md
Desktop Wallpapers
Use this skill when the user asks for a cool desktop background, VM wallpaper, lock-screen-style image, or wants a generated image applied as a desktop wallpaper.
Workflow
- Determine the target surface and platform.
- If the user says "your computer", inspect the live environment before assuming a desktop environment.
- On Linux, check
XDG_CURRENT_DESKTOP,DISPLAY,WAYLAND_DISPLAY, and available wallpaper tools. - For XFCE,
xfconf-queryis the most direct way to set the background.
- Prefer real image generation when available.
- Use the configured image generation tool for the requested style and aspect ratio.
- For desktop backgrounds, default to
landscape/ 16:9 unless the user specifies otherwise. - Avoid text/logos/watermarks unless explicitly requested (model-compare fleets often request company logo + model name — honor that).
- Leave negative space if the desktop has icons.
- If image generation is unavailable because credentials/billing/provider setup is missing, do not stop at the error.
- Capture the setup fix briefly if useful, but continue with a local fallback when possible.
- A good fallback is a deterministic procedural PNG/SVG wallpaper generated with Python stdlib or existing graphics tools.
- Verify the generated image dimensions and file validity before applying it.
- Save the artifact in a sensible user-visible location.
- Linux VM default:
~/Pictures/<descriptive-name>.png. - Use an absolute path in the final reply.
- Apply the wallpaper using the desktop environment's native mechanism.
- XFCE: set
xfce4-desktopbackdrop properties withxfconf-query, then reloadxfdesktopif present. - GNOME: use
gsettings set org.gnome.desktop.background picture-uri file:///absolute/path. - KDE Plasma, Windows, and macOS require platform-specific commands; inspect first rather than guessing.
- Verify.
- Confirm the image exists and has expected dimensions.
- Confirm the desktop configuration points to the generated file when the platform exposes a query command.
- On Orgo/Xvnc: also confirm nonblack and color-diverse paint via screenshot (see Orgo section). xfconf alone is not enough.
XFCE wallpaper commands
For an XFCE VM with VNC/virtual monitors, update all matching backdrop paths rather than only one monitor key:
Orgo / Xvnc verification (co-located or remote fleet)
On Orgo desktops (DISPLAY=:99, VNC), wallpaper work is not done when xfconf points at a file. Paint can be dead while config looks correct.
- Confirm
xfdesktopis running (pgrep -a xfdesktop). Panel +xfwm4alone can leave a black root — most common post-apply failure isxfdesktopdying while xfconf still lists the correct PNG. - Prefer
orgo-desktop screenshotwhen co-located; on remote fleet boxes use Orgo bash +scrot/ PIL. - Fail closed on black / solid-only paint:
- pure black PNG ≈ 2700–3500 bytes
- solid
xsetrootcolor ≈ 14–20KB with high nonblack but low color diversity — wallpaper FAIL - real wallpaper: often 100KB–1.2MB with hundreds of unique color samples
- Recovery order (do not stop after soft restart if paint is still flat):
a. Soft: relaunch xfsettingsd / xfwm4 / xfce4-panel / xfdesktop (Python Popen(start_new_session=True)). b. Re-pin every image-path / last-image + image-style=5. c. If still flat: full Xvnc restart per orgo-desktop-local references/black-framebuffer-recovery.md, then re-pin and verify diversity.
- After any Xvnc restart, tell the user to hard-refresh / reconnect noVNC.
Fleet multi-box apply, exact-filename waits, and recovery transcripts: references/orgo-xfce-wallpaper-apply.md.
Procedural fallback
When no image-generation backend is usable, create a procedural wallpaper instead of declaring the task impossible. A small Python script can write a valid PNG directly with zlib/struct, avoiding external dependencies like ImageMagick or Pillow.
See scripts/procedural_neon_wallpaper.py for a dependency-free 1920x1080 neon Linux command-center wallpaper generator.
Pitfalls
- Do not save a durable rule that a specific image provider is unavailable; provider credentials and billing are environment state.
- Do not use GUI computer-use for wallpaper changes when CLI desktop settings are available.
- Do not use shell-level background wrappers for launching GUI apps/processes; use tracked background process tools when needed. Launch
xfdesktop/ Xvnc withterminal(background=true)or Pythonstart_new_session=True— Hermes rejects foregroundnohup/&. xfdesktop --reloadcan hang the shell (60s+ timeout observed). Preferkill -HUPon the existing PID, orpkill -x xfdesktopthen relaunch; then verify with a screenshot.- Some minimal VMs lack
file, ImageMagick, Pillow, or desktop portals. Verify PNGs with Python by reading the PNG header when common utilities are missing. - For XFCE, setting only one
image-pathmay not affect the visible VNC/virtual monitor. Enumeratexfconf-query -c xfce4-desktop -land update monitor/workspace keys (monitor0,monitorVNC-0last-image per workspace,monitorVirtual-1,monitorscreen). - AI image backends often emit ~1024×576 even for landscape. Fine when
image-styleis 5 (scaled) on 1280×720 VNC; not a failure. Second gen / upscale only if the user wants sharper fill. - xfconf success ≠ visible wallpaper. Always verify nonblack and color-diverse paint after apply.
- User: "wallpapers disappeared / went black" is almost always dead/missing
xfdesktop(or dead Xvnc paint), not deleted files. Checkpgrep -x xfdesktopand screenshot diversity before re-generating images. - Soft client relaunch can leave a solid root color that is nonblack but not the wallpaper. Require unique color samples, not just nonblack counts.
- Fleet multi-box uploads: wait for the exact filename on that computer; delete other
wallpaper-*.pngso apply scripts do not pick a sibling box's art. - Nick prefers company-logo + model-name branding wallpapers for model-compare fleets when he asks for model-matched backgrounds (overrides generic "avoid logos" default).
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingfiles/skills/creative/desktop-wallpapers/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/nickvasilescu/nicks-stack/desktop-wallpapers)