Skip to content

Add Docky plugin#1090

Open
datbird wants to merge 2 commits into
SteamDeckHomebrew:mainfrom
datbird:add/docky
Open

Add Docky plugin#1090
datbird wants to merge 2 commits into
SteamDeckHomebrew:mainfrom
datbird:add/docky

Conversation

@datbird

@datbird datbird commented Jul 20, 2026

Copy link
Copy Markdown

Add Docky to Plugin Store

Docky is a Steam Deck automation plugin on a Task ‚ Action ‚ Mode model, run manually or by triggers (dock/undock, AC power, controller connect, resume, startup). It ships built-in dock fixes (docked-audio sink switch, controller order, gamescope composition/stretch, TDP cap), a temp‚ RPM fan-control engine with named profiles, and full Sunshine game-streaming control.

How it differs from decky-sunshine: decky-sunshine only starts/stops Sunshine. Docky is a broader automation framework whose Sunshine support is one integrated Action ‚it can drive Sunshine directly or defer to decky-sunshine ‚ and adds self-healing mDNS discovery, capture-health recovery, and Sunshine‚ Desktop GPU coexistence not offered elsewhere.

Root disclosure: Docky declares flags:["root"]. For Sunshine KMS capture, it creates a setuid-root copy of the system's own bwrap under /var/lib/docky (root-owned chain; /tmp and /run are nosuid on SteamOS). Rationale and the security hardening (TOCTOU guards, clean_env, subprocess timeouts) are in docs/design-notes.md and docs/decky-integration.md. It bundles no third-party binaries ‚ the backend is pure Python, the frontend builds from source.

Repo: https://github.com/datbird/docky (v1.4.7)

Task Checklist

Developer

  • I am the original author or an authorized maintainer of this plugin.
  • I have abided by the licenses of the libraries I am utilizing, including attaching license notices where appropriate.
  • Generative AI was NOT used to write a majority of the code I am submitting.

Plugin

  • I have verified that my plugin works properly on the Stable and Beta update channels of SteamOS.
  • I have verified my plugin is unique or provides more/alternative functionality to a plugin already on the store.

Backend

  • No: I am using a custom backend other than Python.
  • No: I am using a tool or software from a 3rd party FOSS project that does not have it's dependencies statically linked.
  • No: I am using a custom binary that has all of it's dependencies statically linked.

Community

  • I have tested and left feedback on two other pull requests for new or updating plugins.
  • I have commented links to my testing report in this PR.

Testing

  • Tested by a third party on SteamOS Stable or Beta update channel.

@datbird
datbird requested a review from a team as a code owner July 20, 2026 20:32
@github-actions github-actions Bot added the plugin-addition Adding a plugin to the Plugin Store label Jul 20, 2026
@github-actions

Copy link
Copy Markdown

Issues Found

No issues with your PR description were found.

Next Steps

  1. If we found any issues above, please edit your pull request description to resolve them and leave a comment saying you've done so.
  2. For the quickest review, please see the Community section of the pull request template for how you can help other developers.
  3. Once your description is correct, a maintainer will review your pull request as soon as possible.

Thank you for your contribution! If you need any help, please reach out on our Discord server. ❤️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

plugin-addition Adding a plugin to the Plugin Store

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant