dsh-wallpaper
界面增强 活跃维护

dsh-wallpaper

Frog755/dsh-wallpaper

支持壁纸设置持久保存的实用插件,可自定义壁纸透明度、模糊程度,支持绑定固定网页作为壁纸源,所有配置自动留存,无需每次启动重新调整,开箱即用。

0
Stars 标星
0
Forks 分支
0
Watchers 关注
0
Open Issues
JavaScript
主要语言
MIT
开源协议
1 MB
仓库大小
1 个月前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:Frog755/dsh-wallpaper
git clone https://github.com/Frog755/dsh-wallpaper.git
git clone git@github.com:Frog755/dsh-wallpaper.git
README.md main

dsh-wallpaper

English | 简体中文

Persistent custom wallpaper for the DeepSeek Harness Web profile.

dsh-wallpaper adds one settings row under Settings -> General:

  • choose a local image or MP4 video;
  • tune surface opacity and wallpaper blur;
  • remove the wallpaper at any time.

Images are resized in the browser. MP4 videos up to 300 MB are uploaded only to
the local DSH Host. When ffmpeg and ffprobe are available, they are compressed
into high-quality H.264 wallpapers with a single fast encoding pass, a target
near 18 MB, 1080p maximum resolution, and 30 fps maximum. Audio is removed
because a background video is muted. Without those optional tools, the original
MP4 is retained so video wallpapers remain usable, although they may take more
disk space. Uploads stream directly to a temporary local file rather than being
buffered in the DSH Host process. The result is stored under ~/.dsh/wallpapers, while localStorage
keeps only its local URL. Replacing or removing a video deletes its prior local
file, and startup removes old unreferenced wallpaper videos. Video wallpapers are muted, looped, and
auto-played; media is restored on the next launch. Its bundle patch also fixes
the Web server to port 9191: browser storage is scoped to protocol + host +
port, so a random port would make saved wallpaper appear to disappear after
every restart.

Requirements

Image wallpapers need no extra software. Video wallpapers also work without
extra software by retaining the original MP4. Install ffmpeg and ffprobe on
PATH for the DSH Host process to enable local compression.

Screenshots

Wallpaper applied to the Web profile (image background with adjusted surface opacity):

Wallpaper effect

The wallpaper settings card under Settings -> General:

Wallpaper settings

Compatibility

  • Target: the DeepSeek Harness Web profile (dsh web or the desktop build's
    Web UI). The settings card is rendered by the DSH client runtime and needs a
    modern browser with localStorage support.
  • The bundle patch pins the Web server to http://127.0.0.1:9191; see
    Fixed origin below for why, and what to do when the port is
    occupied.
  • Image wallpapers require no external tools. Video wallpapers accept MP4 files
    up to 300 MB; without ffmpeg/ffprobe on PATH the original file is kept
    as-is, otherwise it is compressed locally to H.264 (target ~18 MB, max 1080p,
    max 30 fps, audio removed).
  • Peer dependencies: react ^18.2.0, @deepseek-ai/cordis ^4.0.1, and the DSH
    client packages listed in package.json. They are provided by the DSH host
    installation; do not install them manually.

Install

Install the public npm package in one command:

dsh plugin --profile web add -w @frog755/dsh-wallpaper

Restart dsh web after initial installation so the host loader reads the new
bundle patch. Open Settings -> General -> Wallpaper to choose your image.

For local development from a cloned repository, run this from the repository
root instead:

dsh plugin --profile web add -w .

Changing lib/client.js later is picked up by the DSH client HMR chain;
hard-refresh the page if the browser has an older module active.

Fixed origin

The package patch pins DSH Web to http://127.0.0.1:9191. This is intentional:
localStorage isolates values by origin, including the port.

If 9191 is occupied, either stop the process holding it or change the port in
cordis.patch.yml before starting DSH. Changing the port creates a different
browser storage namespace, so the wallpaper must be selected once on that new
origin.

What is persisted

All settings remain local to the current browser profile:

  • dsh-wallpaper:image
  • dsh-wallpaper:opacity
  • dsh-wallpaper:blur

On its first run, the plugin imports an existing dsh-skin wallpaper and its
opacity/blur values when no dsh-wallpaper value exists. This lets a profile
migrate without selecting the background again.

No image is sent to a server. Images are stored as compressed data URLs and are
reduced to keep the browser storage footprint bounded.

Development

The client bundle uses DSH's window.__ModuleLoader__.load format, so no build
step is needed. It is served by dsh-client-modules; dsh-client-hmr watches
its content and sends a rebuilt notification to the browser when it changes.

Attribution

This independent wallpaper-focused plugin was derived from, and substantially
reworked from, the wallpaper component of
KinGao294/dsh-skin, which is licensed
under MIT. The original copyright notice is retained in LICENSE.