Skip to content

Add MuteOnSleep to Plugin Store#1015

Open
genc-v wants to merge 9 commits into
SteamDeckHomebrew:mainfrom
genc-v:add-mute-on-wake
Open

Add MuteOnSleep to Plugin Store#1015
genc-v wants to merge 9 commits into
SteamDeckHomebrew:mainfrom
genc-v:add-mute-on-wake

Conversation

@genc-v
Copy link
Copy Markdown

@genc-v genc-v commented Apr 1, 2026

Automatically mutes your Steam Deck's audio right before it goes to sleep, so you don't get blasted with sound when you wake it up in public. Uses a toggle in the Quick Access Menu to enable/disable. Hooks into the Steam client's SuspendResumeStore via MobX to detect suspension, then calls pactl to mute and set volume to 0%.

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.

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.

@genc-v genc-v requested a review from a team as a code owner April 1, 2026 14:14
@github-actions github-actions Bot added the plugin-addition Adding a plugin to the Plugin Store label Apr 1, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 1, 2026

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. ❤️

@genc-v genc-v changed the title Add MuteOnWake to Plugin Store Add mute on sleep to Plugin Store Apr 1, 2026
@github-actions github-actions Bot added the not-plugin Not related to plugins themselves label Apr 1, 2026
@genc-v genc-v changed the title Add mute on sleep to Plugin Store Add MuteOnSleep to Plugin Store Apr 1, 2026
@RodoMa92 RodoMa92 removed the not-plugin Not related to plugins themselves label Apr 1, 2026
Copy link
Copy Markdown
Contributor

@beebls beebls left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, to testing store now

@beebls
Copy link
Copy Markdown
Contributor

beebls commented Apr 2, 2026

One thing to note, you will need to update your plugin's license to either BSD-3 or a compatible license because that is the license of the plugin template itself, which you will have had to had used in order to create a plugin.

I'll let the plugin go to testing store now, but you will need to change the license before we can fully release it.

@beebls
Copy link
Copy Markdown
Contributor

beebls commented Apr 2, 2026

Looks like requests are failing because you don't have an image in your plugin.json, please add this (you can refer to other plugins for examples on what they should look like)

@EMERALD0874
Copy link
Copy Markdown
Member

EMERALD0874 commented Apr 3, 2026

Your LICENSE is incorrect. Please see the license of the plugin template repo and replace "Hypothetical Plugin Developer" and its year with your own information if you wish to use BSD-3. Crediting Steam Deck Homebrew is mandatory.

@maroun2
Copy link
Copy Markdown
Contributor

maroun2 commented Apr 14, 2026

Plugin Testing Report

Installed Plugins

  • HLTB - 2.0.7
  • Game Sync - 1.0.3
  • Non-Steam Badges - 0.1.0
  • NonSteamLaunchers - 1.3.25
  • EmuDecky - 1.0.10
  • Free Loader - 1.5.2
  • SteamGridDB - 1.7.1
  • Discord Status - 1.5.0
  • Game Theme Music - 1.7.1
  • ProtonDB Badges - 1.2.0
  • DeckRoulette - 1.1.6
  • Decky Ludusavi - 1.2.2
  • MicroSDeck - 0.11.2
  • MuteOnSleep - 1.0.0-bc9d6d5

Specifications

  • SteamOS 3.7.20 Build 20260108 (Stable)
  • Kernel 6.11.11
  • Decky 3.2.3 (Pre-Release)

Issues

Has the following major blocking issue(s):

  • Plugin fails to load with error: Plugin_export.default is not a function. Unable to test any functionality.

Has the following minor non-blocking issue(s): None

Summary

Installed from the testing store. Plugin does not load — shows "Plugin_export.default is not a function" error immediately. Could not test any features.

@maroun2
Copy link
Copy Markdown
Contributor

maroun2 commented Apr 14, 2026

Hi @genc-v, I tested your MuteOnSleep plugin and left a report above. Would you be willing to test my plugin in return? It's here: #1005

@github-actions
Copy link
Copy Markdown

This pull request is stale as no updates or testing reports have been posted within the last 7 days. Please ensure you are actively recruiting testers or resolving the issues discussed. If you do not remove the stale label or comment, this will be closed in 7 days. Please close this pull request if you need more time to resolve issues so we can keep our repo healthy.

@github-actions github-actions Bot added the stale label Apr 22, 2026
@maroun2
Copy link
Copy Markdown
Contributor

maroun2 commented Apr 22, 2026

Plugin Testing Report

Installed Plugins

  • HLTB - 2.0.7
  • Game Sync - 1.0.3
  • Non-Steam Badges - 0.1.0
  • NonSteamLaunchers - 1.3.25
  • EmuDecky - 1.0.10
  • Free Loader - 1.5.2
  • SteamGridDB - 1.7.1-31570c5
  • Discord Status - 1.5.0
  • Game Theme Music - 1.7.1
  • ProtonDB Badges - 1.2.0
  • DeckRoulette - 1.1.6
  • Decky Ludusavi - 1.2.2
  • MicroSDeck - 0.11.2
  • Decky Launch Options - 1.9.0
  • Decky Clipper - 0.9.0
  • Deck Progress Tracker - 1.3.6
  • MuteOnSleep - 1.0.1-856b414

Specifications

  • SteamOS 3.7.21 (Stable)
  • Steam 1773426488 (Stable)
  • Decky 3.2.3 (Pre-Release)

Issues

Has the following major blocking issue(s):

  • Plugin fails to load with TypeError: plugin_exports.default is not a function at PluginLoader.importReactPlugin. Backend loads successfully (log: MuteOnSleep loaded), but frontend JS bundle crashes during import. Same error as previously reported on v1.0.0-bc9d6d5 — persists in v1.0.1-856b414.

Has the following minor non-blocking issue(s): None

Summary

Installed MuteOnSleep 1.0.1-856b414 from the testing store. Plugin does not load — shows plugin_exports.default is not a function error immediately. Could not test any features.

Possible Cause - (This is AI analysis)

The error plugin_exports.default is not a function means Decky's PluginLoader.importReactPlugin expects a default export from the JS bundle, but doesn't find one. Your src/index.tsx uses export default definePlugin(...) which looks correct, so the issue is likely in the build output. Check that rollup.config.js outputs the format @decky/rollup expects and that the built dist/index.js actually contains a proper export default. If you're using an older @decky/rollup version or a custom rollup config, the bundle may be wrapping the export in a way Decky can't resolve. Rebuilding with the latest @decky/rollup and verifying dist/index.js contains a default export should fix this.

Additional note: Your plugin.json has "flags": ["root"] — the standard Decky convention is "_root" (with underscore prefix). This may not be related to the frontend crash but worth verifying against the plugin template.

Backend Logs

Backend logging is minimal — only a single MuteOnSleep loaded line on startup. For a plugin that hooks into suspend/resume via pactl, consider adding:

  • Plugin version and pactl availability on startup
  • Suspend/resume event detection
  • pactl command execution results with stderr on failure
  • User toggle enable/disable actions

2026-04-22 06.21.45.log
20260422062639_1
20260422062621_1

@beebls
Copy link
Copy Markdown
Contributor

beebls commented Apr 22, 2026

@genc-v We need a response from you on the issue highlighted above

@github-actions github-actions Bot removed the stale label Apr 23, 2026
@beebls
Copy link
Copy Markdown
Contributor

beebls commented May 1, 2026

@genc-v I see you've added a commit since, have you tested to verify that you've fixed the problem with the plugin?

@genc-v
Copy link
Copy Markdown
Author

genc-v commented May 1, 2026

@genc-v I see you've added a commit since, have you tested to verify that you've fixed the problem with the plugin?

i have built it on my machine and copied the zip to my steam deck and it has worked currently im using it, is there another process that i can make sure that the pr is executed correctly the same way as locally, i have updated the repo and the pointer on the decky plugin

@EMERALD0874
Copy link
Copy Markdown
Member

Latest changes LGTM, deploying plugin for testing

@github-actions
Copy link
Copy Markdown

This pull request is stale as no updates or testing reports have been posted within the last 7 days. Please ensure you are actively recruiting testers or resolving the issues discussed. If you do not remove the stale label or comment, this will be closed in 7 days. Please close this pull request if you need more time to resolve issues so we can keep our repo healthy.

@github-actions github-actions Bot added the stale label May 11, 2026
@beebls
Copy link
Copy Markdown
Contributor

beebls commented May 13, 2026

You'll need a testing review from someone else before we can merge this.

@github-actions github-actions Bot removed the stale label May 14, 2026
@github-actions
Copy link
Copy Markdown

This pull request is stale as no updates or testing reports have been posted within the last 7 days. Please ensure you are actively recruiting testers or resolving the issues discussed. If you do not remove the stale label or comment, this will be closed in 7 days. Please close this pull request if you need more time to resolve issues so we can keep our repo healthy.

@github-actions github-actions Bot added the stale label May 21, 2026
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 stale

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants