# dsh-plugin-mall bundle patch: registers the plugin marketplace row. # Mounted at the host plane (profile bundle layer), so its tools land in the # tools registry's global layer and every session sees them. - insert: - id: dsh-plugin-mall name: '@1e0zj/dsh-plugin-mall' config: # defaultProfile is deliberately NOT set here. # # This file ships inside the package and is read as a bundle layer by # every profile that installs the marketplace, so anything written here # is an explicit config value in ALL of them. Pinning `defaultProfile: # web` (as this file used to) meant a marketplace running in any other # profile still defaulted its installs at web — and the value looked # like the user's own choice, so nothing could tell it apart from one. # # Left unset, the plugin follows the profile this process actually # booted (derived from the loader's config-tree anchor). Set it only to # override that: # defaultProfile: web # GitHub REST API base (override for self-hosted mirrors/proxies). apiBase: https://api.github.com # npm registry for anti-squatting, update checks and the host-dependency # guard. Empty = follow whatever pnpm installs from (the profile's # .npmrc, then `pnpm config get registry`, then npmjs), which is what # you want on a mirror — set this only to pin a different one. npmRegistry: '' # package.json sources for plugin verification, tried in order until one # answers; `{repo}` is replaced with owner/name. Empty = jsDelivr then # raw.githubusercontent.com. Override for a self-hosted reverse proxy. rawSources: [] # Upper bound for market_search perPage. perPageMax: 30 # Whether the marketplace tab may restart the dsh process. Set false when # something else (systemd, pm2, …) owns the process lifecycle. allowRestart: true