dsh-folia 1.6.1 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/README.beginner.md +13 -13
  2. package/README.en.md +25 -25
  3. package/README.md +378 -62
  4. package/assets/about/README.md +89 -0
  5. package/assets/readme/mascot-eating-rice-1280x1784.jpg +0 -0
  6. package/cordis.patch.yml +16 -86
  7. package/lib/about/README.md +2 -2
  8. package/lib/client.js +3736 -89
  9. package/lib/components/about-notice/index.js +125 -0
  10. package/lib/components/about-notice/routes/about-qr.js +92 -0
  11. package/lib/components/about-notice/routes/github-stars.js +143 -0
  12. package/lib/components/fonts/client.build.json +22 -0
  13. package/lib/components/fonts/index.js +129 -0
  14. package/lib/components/fonts/lib/client.fonts.js +656 -0
  15. package/lib/components/fonts/routes/fontsets.js +415 -0
  16. package/lib/components/fonts/routes/system-fonts.js +530 -0
  17. package/lib/components/fonts/src/appearance-font-section.js +389 -0
  18. package/lib/components/fonts/src/client.js +82 -0
  19. package/lib/components/fonts/src/fontset-editor.js +209 -0
  20. package/lib/components/fx/client.build.json +16 -0
  21. package/lib/components/fx/index.js +44 -0
  22. package/lib/components/fx/lib/client.fx.js +847 -0
  23. package/lib/components/fx/src/client.js +75 -0
  24. package/lib/components/fx/src/ext-fx.js +155 -0
  25. package/lib/components/fx/src/fx-layer.js +635 -0
  26. package/lib/components/mascot-avatar/index.js +147 -0
  27. package/lib/components/mascot-avatar/routes/avatar.js +137 -0
  28. package/lib/components/mascot-avatar/routes/mascot.js +124 -0
  29. package/lib/components/media-bridge/audio-tap.swift +146 -0
  30. package/lib/components/media-bridge/backend.js +144 -0
  31. package/lib/components/media-bridge/index.js +129 -0
  32. package/lib/components/media-bridge/legacy.js +467 -0
  33. package/lib/components/media-bridge/provision.js +301 -0
  34. package/lib/components/media-bridge/routes/now-playing.js +177 -0
  35. package/lib/components/media-bridge/supervisor.js +765 -0
  36. package/lib/components/parallax/client.build.json +16 -0
  37. package/lib/components/parallax/index.js +44 -0
  38. package/lib/components/parallax/lib/client.parallax.js +1492 -0
  39. package/lib/components/parallax/src/client.js +60 -0
  40. package/lib/components/parallax/src/ext-parallax.js +148 -0
  41. package/lib/components/parallax/src/parallax-layer.js +1299 -0
  42. package/lib/components/pet-link/client.build.json +21 -0
  43. package/lib/components/pet-link/index.js +34 -0
  44. package/lib/components/pet-link/lib/client.pet-link.js +641 -0
  45. package/lib/components/pet-link/official-provider.js +151 -0
  46. package/lib/components/pet-link/prepared.js +10 -0
  47. package/lib/components/pet-link/routes/official-pet.js +118 -0
  48. package/lib/components/pet-link/src/client.js +55 -0
  49. package/lib/components/pet-link/src/official-pet.js +130 -0
  50. package/lib/components/pet-link/src/pet-link-actions.json +18 -0
  51. package/lib/components/pet-link/src/pet-link-timings.json +61 -0
  52. package/lib/components/pet-link/src/pet-link-tuner.js +142 -0
  53. package/lib/components/pet-link/src/pet-link.js +295 -0
  54. package/lib/diag-trace.js +1 -1
  55. package/lib/faststart.js +3 -3
  56. package/lib/host-boot.js +3 -3
  57. package/lib/index.js +51 -13
  58. package/lib/inventory.js +2 -2
  59. package/lib/kernel/component-session.js +3 -3
  60. package/lib/kernel/config.js +4 -4
  61. package/lib/kernel/data-dir.js +55 -9
  62. package/lib/kernel/host-session.js +4 -4
  63. package/lib/log.js +3 -3
  64. package/lib/media/frame-store.js +2 -2
  65. package/lib/media/media-dirs.js +1 -1
  66. package/lib/media/transcode.js +10 -10
  67. package/lib/notice.js +5 -5
  68. package/lib/routes/cache-dir.js +2 -2
  69. package/lib/routes/inventory.js +93 -33
  70. package/lib/routes/live-frame.js +1 -1
  71. package/lib/routes/media-bytes.js +1 -1
  72. package/lib/routes/occlusion.js +2 -2
  73. package/lib/routes/props.js +1 -1
  74. package/lib/routes/settings.js +3 -3
  75. package/lib/routes/we-assets.js +1 -1
  76. package/lib/serve.js +1 -1
  77. package/lib/settings-schema.js +5 -5
  78. package/lib/startup-sweep.js +1 -1
  79. package/lib/steam-discovery.js +5 -5
  80. package/lib/subpackage-boot.js +11 -11
  81. package/lib/types/client.d.ts +2 -2
  82. package/lib/types/index.d.ts +15 -15
  83. package/lib/upload-dir.js +3 -3
  84. package/lib/we-assets.js +4 -4
  85. package/lib/webwallgl/renderer.js +1 -1
  86. package/package.json +149 -22
@@ -2,7 +2,7 @@
2
2
 
3
3
  [中文完整版](README.md) · [English README](README.en.md) · [English below](#english)
4
4
 
5
- > **先分清版本**:本指南对应 [Fish-under-sea 灰测源码](https://github.com/Fish-under-sea/dsh-wallpaper-engine),不是 npm 上已经发布的版本。当前安装单位是**主包 + 七个子包,共八包**,不再内置 pet。正式项目的数据、发布与贡献记录见 [elysia395 主仓](https://github.com/elysia395/dsh-wallpaper-engine)。
5
+ > **先分清版本**:本指南对应 [Fish-under-sea 灰测源码](https://github.com/lehua-art/dsh-folia),不是 npm 上已经发布的版本。当前安装单位是**主包 + 七个子包,共八包**,不再内置 pet。正式项目的数据、发布与贡献记录见 [elysia395 主仓](https://github.com/lehua-art/dsh-folia)。
6
6
 
7
7
  ## 中文
8
8
 
@@ -18,7 +18,7 @@
18
18
  - **DSH 0.2 内核**,包括 `0.2.0-rc.1/rc.2`;桌面应用版本号与内核版本号不是一回事。
19
19
  - **Node.js >=22.12.0、pnpm 和目标宿主的 DSH CLI**。
20
20
  - 目标 DSH 的**数据目录**和 **profile**。网页版通常是 `web`;桌面版为 `desktop`。数据目录从目标应用确认,不要照猜 `~/.dsh`。
21
- - 下载并解压 [本轮评审分支 `official-pet-bridge-20261020`](https://github.com/Fish-under-sea/dsh-wallpaper-engine/tree/official-pet-bridge-20261020) 的完整源码,不要用 Fork 默认分支代替,也不要只下载主包或某个子目录。
21
+ - 下载并解压 [本轮评审分支 `official-pet-bridge-20261020`](https://github.com/Fish-under-sea/dsh-folia/tree/official-pet-bridge-20261020) 的完整源码,不要用 Fork 默认分支代替,也不要只下载主包或某个子目录。
22
22
 
23
23
  Wallpaper Engine 只用于读取已有壁纸资源,不需要一直在后台运行。macOS 没有其官方客户端,可以用自定义上传或已有 WE 项目目录。
24
24
 
@@ -82,17 +82,17 @@ node scripts/install-source.mjs --profile web --dsh-home "<目标 DSH 数据目
82
82
 
83
83
  更新时完全退出宿主,更新**整个源码目录**,重跑原安装命令,再启动 DSH。不要只替换某个生成文件。
84
84
 
85
- 一般壁纸设置保存在 `~/.dsh-wallpaper-engine/config.json`;缓存和上传默认也在该数据目录。环境变量可覆盖路径。清理浏览器不会删除这份宿主配置,但**pet 目标选择和运行时调参不全在这个文件里**,需要保留的调参请先导出 JSON。
85
+ 一般壁纸设置保存在 `~/.dsh-folia/config.json`;缓存和上传默认也在该数据目录。环境变量可覆盖路径。清理浏览器不会删除这份宿主配置,但**pet 目标选择和运行时调参不全在这个文件里**,需要保留的调参请先导出 JSON。
86
86
 
87
87
  更改缓存 / 上传目录会迁移已识别的插件文件,不搬走目标文件夹里无关的内容。不要把缓存当成上传原件:缓存可重建,自定义壁纸需要另行备份。
88
88
 
89
89
  ### 常见问题
90
90
 
91
91
  **安装失败或说找不到子包?**
92
- 核对是否在完整仓库根目录、Node / DSH 版本是否达标、目标 home / profile / CLI 是否一致。重跑完整安装器,不要先往活动 profile 手工塞临时链接。保留脱敏日志,参考 [故障排查](https://github.com/Fish-under-sea/dsh-wallpaper-engine/blob/official-pet-bridge-20261020/docs/TROUBLESHOOTING.md)。
92
+ 核对是否在完整仓库根目录、Node / DSH 版本是否达标、目标 home / profile / CLI 是否一致。重跑完整安装器,不要先往活动 profile 手工塞临时链接。保留脱敏日志,参考 [故障排查](https://github.com/Fish-under-sea/dsh-folia/blob/official-pet-bridge-20261020/docs/TROUBLESHOOTING.md)。
93
93
 
94
94
  **壁纸库是空的?**
95
- 先检查内容分级 / 类型筛选,再确认 WE 下载过壁纸。Steam 未被识别时,可用 `DSH_WE_STEAM_ROOT` 指向含 `steamapps` 的 Steam 根目录。没有 WE 客户端就用上传,或将自定义存储位置指向已有 WE 项目目录。
95
+ 先检查内容分级 / 类型筛选,再确认 WE 下载过壁纸。Steam 未被识别时,可用 `DSH_FOLIA_STEAM_ROOT` 指向含 `steamapps` 的 Steam 根目录。没有 WE 客户端就用上传,或将自定义存储位置指向已有 WE 项目目录。
96
96
 
97
97
  **视频黑屏或不播放?**
98
98
  先看当前壁纸卡片的错误原因,尝试播放或换片。浏览器无法解码时,使用 H.264 MP4。自上传项目也会受内容分级筛选影响。
@@ -101,15 +101,15 @@ node scripts/install-source.mjs --profile web --dsh-home "<目标 DSH 数据目
101
101
  先等首帧。大场景要传输资源包;渲染失败后会降级为可用的预览图或实时帧。并非每个工坊项目都与原版引擎完全兼容。没有可用画面时会说明原因,不会伪造成功。
102
102
 
103
103
  **文字不好读 / 想关玻璃?**
104
- 先调暗化、底色与边框。玻璃按表面管理,可在对应设置回退原生;未知插件表面不保证自动兼容,见 [共存说明](https://github.com/Fish-under-sea/dsh-wallpaper-engine/blob/official-pet-bridge-20261020/docs/COEXISTENCE.md)。
104
+ 先调暗化、底色与边框。玻璃按表面管理,可在对应设置回退原生;未知插件表面不保证自动兼容,见 [共存说明](https://github.com/Fish-under-sea/dsh-folia/blob/official-pet-bridge-20261020/docs/COEXISTENCE.md)。
105
105
 
106
106
  **插件会把壁纸上传到网上吗?**
107
107
  不会。壁纸在本机读取和保存。不过下载运行时、查询仓库数据,以及开启在线歌词后的曲目信息查询会联网。系统频谱采集的是输出回环,不是麦克风。
108
108
 
109
109
  ### 项目与致谢
110
110
 
111
- - 正式项目、发布和贡献历史:[elysia395/dsh-wallpaper-engine](https://github.com/elysia395/dsh-wallpaper-engine)。
112
- - 当前灰测维护与集成:**[生鱼 / Fish-under-sea](https://github.com/Fish-under-sea/dsh-wallpaper-engine)**,包括部署闭包、官方 pet 桥接、气泡、排播与调参等本分支工作;尚未发布不等于已经合入主仓。
111
+ - 正式项目、发布和贡献历史:[elysia395/dsh-folia](https://github.com/lehua-art/dsh-folia)。
112
+ - 当前灰测维护与集成:**[生鱼 / Fish-under-sea](https://github.com/lehua-art/dsh-folia)**,包括部署闭包、官方 pet 桥接、气泡、排播与调参等本分支工作;尚未发布不等于已经合入主仓。
113
113
  - 感谢 **[PC2005-cloud / dsh-pet](https://github.com/PC2005-cloud/dsh-pet)** 的公开接口支持与联动讨论。
114
114
  - 感谢 B 站 UP 主 **[ZipZipPipe](https://space.bilibili.com/4168597)** 创作的 **AI 娘二创形象**,为我们的新吉祥物提供形象基础。不是模型厂商官方形象;署名不改变角色与素材的权利归属。
115
115
 
@@ -117,13 +117,13 @@ node scripts/install-source.mjs --profile web --dsh-home "<目标 DSH 数据目
117
117
 
118
118
  ## English
119
119
 
120
- This guide covers the **unpublished [Fish-under-sea source branch](https://github.com/Fish-under-sea/dsh-wallpaper-engine)**. The official upstream's releases and npm package are separate. The current source suite is **one main package plus seven subpackages**, with no bundled pet.
120
+ This guide covers the **unpublished [Fish-under-sea source branch](https://github.com/lehua-art/dsh-folia)**. The official upstream's releases and npm package are separate. The current source suite is **one main package plus seven subpackages**, with no bundled pet.
121
121
 
122
122
  ### Prepare and install
123
123
 
124
124
  You need a working **DSH 0.2 kernel** (including `0.2.0-rc.1/rc.2`), **Node.js >=22.12.0**, pnpm, the target host's CLI, and its actual data-directory / profile identifiers. Wallpaper Engine is optional if you use custom images / videos. Application wallpapers are unsupported.
125
125
 
126
- 1. Download and extract the complete [review branch `official-pet-bridge-20261020`](https://github.com/Fish-under-sea/dsh-wallpaper-engine/tree/official-pet-bridge-20261020), not the fork's default branch.
126
+ 1. Download and extract the complete [review branch `official-pet-bridge-20261020`](https://github.com/Fish-under-sea/dsh-folia/tree/official-pet-bridge-20261020), not the fork's default branch.
127
127
  2. Fully close the target DSH host. Open a terminal in the folder containing `package.json`.
128
128
  3. Replace the placeholder with that host's actual data directory, inspect the plan, then install:
129
129
 
@@ -154,12 +154,12 @@ Before upgrading a former bundled-pet setup, close DSH and disable its old bundl
154
154
 
155
155
  ### Settings and troubleshooting
156
156
 
157
- General wallpaper settings persist in `~/.dsh-wallpaper-engine/config.json`. Environment variables may override paths. Pet selection and runtime tuning have a separate lifecycle: export tuning JSON before refresh. Cache files can be regenerated; uploaded originals need their own backups.
157
+ General wallpaper settings persist in `~/.dsh-folia/config.json`. Environment variables may override paths. Pet selection and runtime tuning have a separate lifecycle: export tuning JSON before refresh. Cache files can be regenerated; uploaded originals need their own backups.
158
158
 
159
- For installation errors, verify the complete checkout, supported versions, and exact home / profile / CLI. For an empty library, check filters and Steam detection; `DSH_WE_STEAM_ROOT` points at the Steam root containing `steamapps`. For decoding errors, try H.264 MP4. See [troubleshooting](https://github.com/Fish-under-sea/dsh-wallpaper-engine/blob/official-pet-bridge-20261020/docs/TROUBLESHOOTING.md) and the [English README](README.en.md).
159
+ For installation errors, verify the complete checkout, supported versions, and exact home / profile / CLI. For an empty library, check filters and Steam detection; `DSH_FOLIA_STEAM_ROOT` points at the Steam root containing `steamapps`. For decoding errors, try H.264 MP4. See [troubleshooting](https://github.com/Fish-under-sea/dsh-folia/blob/official-pet-bridge-20261020/docs/TROUBLESHOOTING.md) and the [English README](README.en.md).
160
160
 
161
161
  Wallpapers stay local, but runtime downloads, repository statistics and opt-in lyric queries access external services. The plugin registers no model tools or prompt text, so it adds no model token overhead.
162
162
 
163
163
  ### Credits
164
164
 
165
- Official project and history: [elysia395](https://github.com/elysia395/dsh-wallpaper-engine). Current test-branch integration: **[生鱼 / Fish-under-sea](https://github.com/Fish-under-sea)**. Thank you to **[PC2005-cloud / dsh-pet](https://github.com/PC2005-cloud/dsh-pet)** for the public integration APIs, and Bilibili creator **[ZipZipPipe](https://space.bilibili.com/4168597)** for the **AI-girl fan-character designs used as the basis for our new mascots**. These are not official model-vendor characters; attribution does not relicense artwork under MIT. See [all credits](README.md#致谢) and [asset sources](assets/readme/SOURCES.md).
165
+ Official project and history: [elysia395](https://github.com/lehua-art/dsh-folia). Current test-branch integration: **[生鱼 / Fish-under-sea](https://github.com/Fish-under-sea)**. Thank you to **[PC2005-cloud / dsh-pet](https://github.com/PC2005-cloud/dsh-pet)** for the public integration APIs, and Bilibili creator **[ZipZipPipe](https://space.bilibili.com/4168597)** for the **AI-girl fan-character designs used as the basis for our new mascots**. These are not official model-vendor characters; attribution does not relicense artwork under MIT. See [all credits](README.md#致谢) and [asset sources](assets/readme/SOURCES.md).
package/README.en.md CHANGED
@@ -7,11 +7,11 @@
7
7
  <img src="assets/readme/hero-light.png" alt="DSH Wallpaper Engine: your wallpapers, your glass, your workspace" width="1440">
8
8
  </picture>
9
9
 
10
- [![Node.js](https://img.shields.io/badge/Node.js-22.12%2B-8fd6a0?style=flat-square)](https://nodejs.org) [![License](https://img.shields.io/badge/License-MIT-8fd6a0?style=flat-square)](LICENSE) [![Upstream Stars](https://img.shields.io/github/stars/elysia395/dsh-wallpaper-engine?style=flat-square&label=Upstream%20Stars)](https://github.com/elysia395/dsh-wallpaper-engine/stargazers) [![Upstream Forks](https://img.shields.io/github/forks/elysia395/dsh-wallpaper-engine?style=flat-square&label=Upstream%20Forks)](https://github.com/elysia395/dsh-wallpaper-engine/forks) [![Upstream Contributors](https://img.shields.io/github/contributors/elysia395/dsh-wallpaper-engine?style=flat-square&label=Upstream%20Contributors)](https://github.com/elysia395/dsh-wallpaper-engine/graphs/contributors) [![Upstream Release](https://img.shields.io/github/v/release/elysia395/dsh-wallpaper-engine?style=flat-square&label=Upstream%20Release)](https://github.com/elysia395/dsh-wallpaper-engine/releases) [![npm](https://img.shields.io/npm/v/dsh-plugin-wallpaper-engine?style=flat-square)](https://www.npmjs.com/package/dsh-plugin-wallpaper-engine) [![npm Downloads](https://img.shields.io/npm/dm/dsh-plugin-wallpaper-engine?style=flat-square)](https://www.npmjs.com/package/dsh-plugin-wallpaper-engine) [![dsh-pet integration](https://img.shields.io/badge/dsh--pet-Public%20API-8fd6a0?style=flat-square)](https://github.com/PC2005-cloud/dsh-pet/issues/122)
10
+ [![Node.js](https://img.shields.io/badge/Node.js-22.12%2B-8fd6a0?style=flat-square)](https://nodejs.org) [![License](https://img.shields.io/badge/License-MIT-8fd6a0?style=flat-square)](LICENSE) [![Upstream Stars](https://img.shields.io/github/stars/elysia395/dsh-folia?style=flat-square&label=Upstream%20Stars)](https://github.com/elysia395/dsh-folia/stargazers) [![Upstream Forks](https://img.shields.io/github/forks/elysia395/dsh-folia?style=flat-square&label=Upstream%20Forks)](https://github.com/elysia395/dsh-folia/forks) [![Upstream Contributors](https://img.shields.io/github/contributors/elysia395/dsh-folia?style=flat-square&label=Upstream%20Contributors)](https://github.com/elysia395/dsh-folia/graphs/contributors) [![Upstream Release](https://img.shields.io/github/v/release/elysia395/dsh-folia?style=flat-square&label=Upstream%20Release)](https://github.com/elysia395/dsh-folia/releases) [![npm](https://img.shields.io/npm/v/dsh-plugin-folia?style=flat-square)](https://www.npmjs.com/package/dsh-plugin-folia) [![npm Downloads](https://img.shields.io/npm/dm/dsh-plugin-folia?style=flat-square)](https://www.npmjs.com/package/dsh-plugin-folia) [![dsh-pet integration](https://img.shields.io/badge/dsh--pet-Public%20API-8fd6a0?style=flat-square)](https://github.com/PC2005-cloud/dsh-pet/issues/122)
11
11
 
12
12
  Bring local **Wallpaper Engine Scene, Web and Video wallpapers** into the DSH chat interface, with liquid glass, typography, configuration presets, mascot artwork and optional official dsh-pet integration. The plugin registers no agent tools or prompt text, so it adds no model token overhead.
13
13
 
14
- > **This page describes the unpublished [Fish-under-sea source branch](https://github.com/Fish-under-sea/dsh-wallpaper-engine).** Stars, forks, contributors, releases, npm downloads and Star History refer to the official [elysia395/dsh-wallpaper-engine repository](https://github.com/elysia395/dsh-wallpaper-engine) or its npm package. Cached badges do not mean these branch changes have been merged or published. Identical package version numbers do not guarantee identical source trees.
14
+ > **This page describes the unpublished [Fish-under-sea source branch](https://github.com/lehua-art/dsh-folia).** Stars, forks, contributors, releases, npm downloads and Star History refer to the official [elysia395/dsh-folia repository](https://github.com/lehua-art/dsh-folia) or its npm package. Cached badges do not mean these branch changes have been merged or published. Identical package version numbers do not guarantee identical source trees.
15
15
 
16
16
  ## Contents
17
17
 
@@ -41,7 +41,7 @@ The current suite has **one main package and seven subpackages, eight packages i
41
41
 
42
42
  Requirements: **Node.js >=22.12.0, a DSH 0.2 kernel (including 0.2.0-rc.1/rc.2), pnpm and the target host's DSH CLI**. The desktop application's external version number is not its kernel version. Optional pet integration needs a separate official pet installation. Unlike the published build (which asks once with a two-choice dialog and never changes the theme), this branch applies the author preset plus a dark UI automatically on a fresh install and switches the theme whenever a preset that declares a preference is applied; existing save files are never overwritten.
43
43
 
44
- 1. Download and extract the complete [review branch `official-pet-bridge-20261020`](https://github.com/Fish-under-sea/dsh-wallpaper-engine/tree/official-pet-bridge-20261020), or clone that branch, not the fork's default branch. Open a terminal in the folder containing `package.json`.
44
+ 1. Download and extract the complete [review branch `official-pet-bridge-20261020`](https://github.com/Fish-under-sea/dsh-folia/tree/official-pet-bridge-20261020), or clone that branch, not the fork's default branch. Open a terminal in the folder containing `package.json`.
45
45
  2. Completely close the target DSH host. Confirm its actual data directory and profile.
46
46
  3. Inspect the plan, then run the installer:
47
47
 
@@ -61,10 +61,10 @@ The publisher must build the eight-package set with `npm run pack:release`, publ
61
61
  **From `1.4.0` on, all eight packages are on npm** — one command installs the whole set (the main package resolves the seven children at exact versions):
62
62
 
63
63
  ```sh
64
- dsh plugin --profile web add dsh-plugin-wallpaper-engine
64
+ dsh plugin --profile web add dsh-plugin-folia
65
65
  ```
66
66
 
67
- To get **unreleased branch changes** you still need the source deployment; the npm name only ever gives you a published version. Desktop installations still require the desktop carrier CLI and a fully closed host. See the [deployment and publishing guide](https://github.com/Fish-under-sea/dsh-wallpaper-engine/blob/official-pet-bridge-20261020/CONTRIBUTING.md).
67
+ To get **unreleased branch changes** you still need the source deployment; the npm name only ever gives you a published version. Desktop installations still require the desktop carrier CLI and a fully closed host. See the [deployment and publishing guide](https://github.com/Fish-under-sea/dsh-folia/blob/official-pet-bridge-20261020/CONTRIBUTING.md).
68
68
 
69
69
  ### Rows and platforms
70
70
 
@@ -76,7 +76,7 @@ Windows, macOS and Linux use the same source suite. On platforms without the Wal
76
76
 
77
77
  Open **Settings → Wallpaper Engine**, or pull the mascot cord to open the library drawer. Select wallpapers in the **in-panel library**, not a separate modal. Changes apply immediately and persist on the host.
78
78
 
79
- ![Main interface, historical upstream demo](https://github.com/elysia395/dsh-wallpaper-engine/releases/download/media-v1/main-interface.gif)
79
+ ![Main interface, historical upstream demo](https://github.com/elysia395/dsh-folia/releases/download/media-v1/main-interface.gif)
80
80
 
81
81
  Historical upstream demonstrations may differ from this branch. The six settings tabs are Library, Appearance, Playback, System, Extensions and About.
82
82
 
@@ -86,7 +86,7 @@ Historical upstream demonstrations may differ from this branch. The six settings
86
86
  - **System**: mascot selection, adapter target, occlusion pause and cache locations. The default mascot is DeepSeek; Deepseek_Pro and 菲比啾比 are separate artworks, alongside Claude, DeepSeek, Gemini, GPT, GLM, Grok, Kimi and Qwen. The chibi maid is carried by the author preset rather than the built-in carousel.
87
87
  - **Extensions**: optional avatars, click / trail effects and parallax. Disabling an extension removes its own decorations without resetting the wallpaper.
88
88
 
89
- Glass ownership uses per-surface `auto` / `native` fallback. Unknown plugin surfaces are not forcibly cleared. Extra frost selectors have strict limits and must meet positioning and decoration-safety checks. There is no universal guarantee of compatibility with every skin or plugin. See [coexistence](https://github.com/Fish-under-sea/dsh-wallpaper-engine/blob/official-pet-bridge-20261020/docs/COEXISTENCE.md).
89
+ Glass ownership uses per-surface `auto` / `native` fallback. Unknown plugin surfaces are not forcibly cleared. Extra frost selectors have strict limits and must meet positioning and decoration-safety checks. There is no universal guarantee of compatibility with every skin or plugin. See [coexistence](https://github.com/Fish-under-sea/dsh-folia/blob/official-pet-bridge-20261020/docs/COEXISTENCE.md).
90
90
 
91
91
  System audio capture uses **output loopback, not the microphone**. Online lyrics are off by default and may send track title, artist and album to LRCLIB when enabled. Media runtime support is native per platform: GSMTC / MediaRemote / MPRIS.
92
92
 
@@ -111,20 +111,20 @@ Native position interpolation uses wall-clock time and is not guaranteed to trac
111
111
 
112
112
  ## Configuration and privacy
113
113
 
114
- Wallpaper settings live in `~/.dsh-wallpaper-engine/config.json`, independent of the browser port. Caches and uploads default to subdirectories under the same data root and can be moved from the UI. Migration moves recognized plugin files, not unrelated files in the target directory. Pet target selection and exported runtime tuning have their separate bridge lifecycle; they are not all part of the host configuration file.
114
+ Wallpaper settings live in `~/.dsh-folia/config.json`, independent of the browser port. Caches and uploads default to subdirectories under the same data root and can be moved from the UI. Migration moves recognized plugin files, not unrelated files in the target directory. Pet target selection and exported runtime tuning have their separate bridge lifecycle; they are not all part of the host configuration file.
115
115
 
116
116
  | Variable | Purpose |
117
117
  |---|---|
118
- | `DSH_WE_DATA_DIR` | Override the whole plugin data root |
119
- | `DSH_WE_CACHE_DIR` / `DSH_WE_UPLOAD_DIR` | Override cache / upload roots |
120
- | `DSH_WE_STEAM_ROOT` / `DSH_WE_ASSETS_DIR` | Override Steam discovery / official WE resources |
121
- | `DSH_WE_FFMPEG` / `DSH_WE_FFMPEG_URL` | Explicit ffmpeg executable / download source |
122
- | `DSH_WE_TRANSCODE_TIMEOUT_MS` | Transcode time budget |
123
- | `DSH_WE_MEDIA_BRIDGE` / `DSH_WE_MEDIA_BRIDGE_URL` | Explicit media bridge / source |
124
- | `DSH_WE_MEDIA_BRIDGE_TAG` / `DSH_WE_MEDIA_BRIDGE_SHA256` | Version and required integrity information for custom versions |
125
- | `DSH_WE_MEDIA_LEGACY` / `DSH_WE_MEDIA_NO_AUDIO` | Built-in fallback / metadata-only mode |
126
- | `DSH_WE_MEDIA_PROVIDER` | `mock` for development |
127
- | `DSH_WE_MEDIA_IDLE_MS` / `DSH_WE_MEDIA_DEBUG` | Idle shutdown / diagnostic output |
118
+ | `DSH_FOLIA_DATA_DIR` | Override the whole plugin data root |
119
+ | `DSH_FOLIA_CACHE_DIR` / `DSH_FOLIA_UPLOAD_DIR` | Override cache / upload roots |
120
+ | `DSH_FOLIA_STEAM_ROOT` / `DSH_FOLIA_ASSETS_DIR` | Override Steam discovery / official WE resources |
121
+ | `DSH_FOLIA_FFMPEG` / `DSH_FOLIA_FFMPEG_URL` | Explicit ffmpeg executable / download source |
122
+ | `DSH_FOLIA_TRANSCODE_TIMEOUT_MS` | Transcode time budget |
123
+ | `DSH_FOLIA_MEDIA_BRIDGE` / `DSH_FOLIA_MEDIA_BRIDGE_URL` | Explicit media bridge / source |
124
+ | `DSH_FOLIA_MEDIA_BRIDGE_TAG` / `DSH_FOLIA_MEDIA_BRIDGE_SHA256` | Version and required integrity information for custom versions |
125
+ | `DSH_FOLIA_MEDIA_LEGACY` / `DSH_FOLIA_MEDIA_NO_AUDIO` | Built-in fallback / metadata-only mode |
126
+ | `DSH_FOLIA_MEDIA_PROVIDER` | `mock` for development |
127
+ | `DSH_FOLIA_MEDIA_IDLE_MS` / `DSH_FOLIA_MEDIA_DEBUG` | Idle shutdown / diagnostic output |
128
128
 
129
129
  Wallpaper files stay local. Runtime downloads, GitHub repository statistics and opt-in lyrics access external services; this is not a claim of fully offline operation.
130
130
 
@@ -140,16 +140,16 @@ Wallpaper files stay local. Runtime downloads, GitHub repository statistics and
140
140
 
141
141
  ## Development
142
142
 
143
- See the current [contribution guide](https://github.com/Fish-under-sea/dsh-wallpaper-engine/blob/official-pet-bridge-20261020/CONTRIBUTING.md), [changelog](https://github.com/Fish-under-sea/dsh-wallpaper-engine/blob/official-pet-bridge-20261020/docs/CHANGELOG.md), [upgrade notes](https://github.com/Fish-under-sea/dsh-wallpaper-engine/blob/official-pet-bridge-20261020/docs/UPGRADING.md), [rendering design](https://github.com/Fish-under-sea/dsh-wallpaper-engine/blob/official-pet-bridge-20261020/docs/HOW-IT-WORKS.md) and [troubleshooting](https://github.com/Fish-under-sea/dsh-wallpaper-engine/blob/official-pet-bridge-20261020/docs/TROUBLESHOOTING.md). Generated clients are built from source; do not edit generated bundles by hand. The npm package does not ship `docs/`, so these technical links use repository URLs.
143
+ See the current [contribution guide](https://github.com/Fish-under-sea/dsh-folia/blob/official-pet-bridge-20261020/CONTRIBUTING.md), [changelog](https://github.com/Fish-under-sea/dsh-folia/blob/official-pet-bridge-20261020/docs/CHANGELOG.md), [upgrade notes](https://github.com/Fish-under-sea/dsh-folia/blob/official-pet-bridge-20261020/docs/UPGRADING.md), [rendering design](https://github.com/Fish-under-sea/dsh-folia/blob/official-pet-bridge-20261020/docs/HOW-IT-WORKS.md) and [troubleshooting](https://github.com/Fish-under-sea/dsh-folia/blob/official-pet-bridge-20261020/docs/TROUBLESHOOTING.md). Generated clients are built from source; do not edit generated bundles by hand. The npm package does not ship `docs/`, so these technical links use repository URLs.
144
144
 
145
- Report branch-specific installation or pet-integration problems to the [current fork](https://github.com/Fish-under-sea/dsh-wallpaper-engine/issues), with versions, platform, reproduction steps and sanitized logs. Shared upstream problems belong in the [official tracker](https://github.com/elysia395/dsh-wallpaper-engine/issues). Never include credentials. Community QR codes are available in the [Chinese README](README.md#联系方式).
145
+ Report branch-specific installation or pet-integration problems to the [current fork](https://github.com/Fish-under-sea/dsh-folia/issues), with versions, platform, reproduction steps and sanitized logs. Shared upstream problems belong in the [official tracker](https://github.com/elysia395/dsh-folia/issues). Never include credentials. Community QR codes are available in the [Chinese README](README.md#联系方式).
146
146
 
147
147
  ## Credits
148
148
 
149
- Contributions are grouped by work, not ranked. See the official [Contributors](https://github.com/elysia395/dsh-wallpaper-engine/graphs/contributors) and [merged PRs](https://github.com/elysia395/dsh-wallpaper-engine/pulls?q=is%3Apr+is%3Amerged) for the maintained history.
149
+ Contributions are grouped by work, not ranked. See the official [Contributors](https://github.com/elysia395/dsh-folia/graphs/contributors) and [merged PRs](https://github.com/elysia395/dsh-folia/pulls?q=is%3Apr+is%3Amerged) for the maintained history.
150
150
 
151
151
  - **[elysia395](https://github.com/elysia395)**: project creation, upstream maintenance, releases, presets and community.
152
- - **[生鱼 / Fish-under-sea](https://github.com/Fish-under-sea)**: current source-branch integration, whole-configuration presets and asset import / export, mascot carousel, source deployment and release closure, official pet bridge, bubble / routine / tuning work and regression documentation. Earlier work: [#173](https://github.com/elysia395/dsh-wallpaper-engine/pull/173), [#180](https://github.com/elysia395/dsh-wallpaper-engine/pull/180), [integration PR #251](https://github.com/elysia395/dsh-wallpaper-engine/pull/251). Some latest source work remains unpublished.
152
+ - **[生鱼 / Fish-under-sea](https://github.com/Fish-under-sea)**: current source-branch integration, whole-configuration presets and asset import / export, mascot carousel, source deployment and release closure, official pet bridge, bubble / routine / tuning work and regression documentation. Earlier work: [#173](https://github.com/elysia395/dsh-folia/pull/173), [#180](https://github.com/elysia395/dsh-folia/pull/180), [integration PR #251](https://github.com/elysia395/dsh-folia/pull/251). Some latest source work remains unpublished.
153
153
  - **[YV3507](https://github.com/YV3507)**: rendering and frame-pipeline fixes, liquid-glass tokens, architecture, documentation, regression guards and community integration.
154
154
  - **[oneincase](https://github.com/oneincase)**: [WebWallGL](https://github.com/oneincase/webwallgl), [media-bridge](https://github.com/oneincase/media-bridge), live rendering, cross-platform media and performance work.
155
155
  - **[yuxilao](https://github.com/yuxilao)** and **[Jerry / ruijiaang-lab](https://github.com/ruijiaang-lab)**: Linux scene-rendering exploration, performance / rotation work, and early macOS / WaifuX compatibility and contribution paths.
@@ -163,9 +163,9 @@ The README's retro window layout references [MaiBot](https://github.com/Mai-with
163
163
 
164
164
  Official upstream history, not fork statistics:
165
165
 
166
- <a href="https://star-history.com/#elysia395/dsh-wallpaper-engine&Date">
166
+ <a href="https://star-history.com/#elysia395/dsh-folia&Date">
167
167
  <picture>
168
- <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=elysia395/dsh-wallpaper-engine&amp;type=Date&amp;theme=dark">
169
- <img src="https://api.star-history.com/svg?repos=elysia395/dsh-wallpaper-engine&amp;type=Date" alt="Official upstream Star History" width="960">
168
+ <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=elysia395/dsh-folia&amp;type=Date&amp;theme=dark">
169
+ <img src="https://api.star-history.com/svg?repos=elysia395/dsh-folia&amp;type=Date" alt="Official upstream Star History" width="960">
170
170
  </picture>
171
171
  </a>