feat: add hypr-screen-mirror#66
Conversation
…put during monitor update
|
• 1. blocking - hypr-screen-mirror/service.luau:104 The Hyprland socket path is inserted into a shell command without quoting. Monitor names are likewise inserted directly into nested shell and Lua command strings at hypr-screen-mirror/service.luau:122 and hypr-screen-mirror/service.luau:139. A crafted socket path or monitor name containing shell meta characters or quotes can alter the command and execute arbitrary shell code in the user session. Hyprland permits custom names for virtual outputs,
Hyprland 0.55 serializes monitor
When JSON decoding fails or returns a non-table value, the callback displays a notification but continues into
The timeout paths reference Hyprland’s official documentation confirms that virtual outputs may have optional custom names: Using hyprctl |
|
I hope the "Separate observed state from action requests" part is fixed because I didn't really understand what you meant by that or how to fix it |
|
Can you check if everything still works as expected with my latest commit. This should fix the last blocker. |
|
Thanks for the fix. Everything is still working for me |
Plugin
profidev/hypr-screen-mirrorplugin.toml)What it does
Widget/Panel to easily control mirroring of Hyprland monitors
External dependencies
Testing
Screenshots / Videos
Checklist
idafter the/inplugin.tomlexactly.plugin.toml,README.md,thumbnail.webp, andtranslations/en.json.README.mdfollows theREADME template, documents
every entry id and dependency, and includes exact panel IPC commands and launcher prefixes where applicable.
thumbnail.webpwith the thumbnail generator.versionfollows semver and is bumped in this PR;plugin_apiis the oldest API level this plugin requires.understand that language well enough to review and maintain it (no unreviewed machine/LLM translations).
catalog.toml; CI generates it.Code review attestation
Plugins run as trusted, unsandboxed Luau in the user's session. Confirm:
licensedeclared inplugin.toml.