You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have attached logs to this bug report (failure to include logs will mean your issue may not be responded to).
Bug Report Description
I noticed an odd behavior where a plugin installed from a ZIP file appears to have elevated privileges compared to the same plugin downloaded via the Decky Store. Specifically, the store-downloaded version was unable to copy a file from /defaults/assets to the mod path, while the ZIP-installed version could.
This could be related to differences in permissions set during installation, potentially between 777 and 755. My current workaround involves ensuring everything is downloaded to /bin first before copying over, but I’m unsure if this is intended behavior or if I’m handling something incorrectly.
Would appreciate any insights on whether this is expected or if there’s a permissions issue at play.
Steps to Reproduce:
1. Install the plugin from the Decky Store.
2. Attempt to copy a file from /defaults/assets to the mod path.
3. Install the same plugin via ZIP.
4. Perform the same file operation and note that it succeeds.
Also potentially related, sometimes when I install the plugin from store the mod install button won’t show up in the plugin ui, but it shows just fine after a restart. This button state depends on detecting the presence of files from the backend py function for paths outside the plugin itself. So maybe on install and through that session it’s not given the permissions it typically would from unit on fresh boot after being installed?
xXJSONDeruloXx
changed the title
[BUG] <title>
[BUG] different plugin priveledges depending on install method
Feb 9, 2025
Please confirm
Bug Report Description
I noticed an odd behavior where a plugin installed from a ZIP file appears to have elevated privileges compared to the same plugin downloaded via the Decky Store. Specifically, the store-downloaded version was unable to copy a file from /defaults/assets to the mod path, while the ZIP-installed version could.
This could be related to differences in permissions set during installation, potentially between 777 and 755. My current workaround involves ensuring everything is downloaded to /bin first before copying over, but I’m unsure if this is intended behavior or if I’m handling something incorrectly.
Would appreciate any insights on whether this is expected or if there’s a permissions issue at play.
Steps to Reproduce:
1. Install the plugin from the Decky Store.
2. Attempt to copy a file from /defaults/assets to the mod path.
3. Install the same plugin via ZIP.
4. Perform the same file operation and note that it succeeds.
specific to my test case of decky frame gen v 0.9.0 https://github.com/xXJSONDeruloXx/Decky-Framegen/releases/tag/v0.9.0
Expected Behaviour
Both installation methods should result in the same permission behavior unless explicitly intended otherwise.
SteamOS version
3.6.20
Selected Update Channel
Stable
Decky Loader Version
v3.1.3 pre release
Plugin Info
(deck@steamdeck ~)$ bash -c 'directory_to_scan="$HOME/homebrew/plugins"; for dir in "$directory_to_scan"/*/; do if [ -f "${dir}package.json" ]; then name=$(jq -r ".name" "${dir}package.json"); version=$(jq -r ".version" "${dir}package.json"); echo "Directory: ${dir}"; echo "Package Name: $name"; echo "Version: $version"; echo "-----------------------------"; fi; done'
Directory: /home/deck/homebrew/plugins/Crosshair/
Package Name: crosshair
Version: 1.0.0
Directory: /home/deck/homebrew/plugins/deck-roulette/
Package Name: deck-roulette
Version: 1.1.6-d0eea04
Directory: /home/deck/homebrew/plugins/decky-brightness-bar/
Package Name: decky-brightness-bar
Version: 1.0.3-2b39e94
Directory: /home/deck/homebrew/plugins/Decky-Framegen/
Package Name: decky-framegen
Version: 0.9.1-ce332ab
Directory: /home/deck/homebrew/plugins/decky-game-settings/
Package Name: decky-game-settings
Version: 0.0.1-9fc66b1
Directory: /home/deck/homebrew/plugins/Decky-Lookup/
Package Name: Decky-Lookup
Version: 0.0.1
Directory: /home/deck/homebrew/plugins/decky-steamgriddb/
Package Name: decky-steamgriddb
Version: 1.5.1-loaderv2
Directory: /home/deck/homebrew/plugins/decky-terminal/
Package Name: decky-terminal
Version: 0.4.1
Directory: /home/deck/homebrew/plugins/hltb-for-deck/
Package Name: hltb-for-deck
Version: 2.0.4-7d39e65
Directory: /home/deck/homebrew/plugins/Junk-Store/
Package Name: Junk-Store
Version: 1.1.8
Directory: /home/deck/homebrew/plugins/MagicPodsDecky/
Package Name: magicpods-decky
Version: 1.0.7
Directory: /home/deck/homebrew/plugins/MangoPeel/
Package Name: MangoPeel
Version: 0.0.5-1
Directory: /home/deck/homebrew/plugins/protondb-decky/
Package Name: protondb-decky
Version: 1.1.0
Directory: /home/deck/homebrew/plugins/SDH-AnimationChanger/
Package Name: decky-animation-changer
Version: 1.3.2-01f5968
Directory: /home/deck/homebrew/plugins/SDH-AudioLoader/
Package Name: SDH-AudioLoader
Version: 1.6.0
Directory: /home/deck/homebrew/plugins/SDH-CssLoader/
Package Name: SDH-CssLoader
Version: 2.1.2
Directory: /home/deck/homebrew/plugins/SDH-PauseGames/
Package Name: pause-games
Version: 1.0.0-b2be59f
Directory: /home/deck/homebrew/plugins/SDH-PlayTime/
Package Name: PlayTime
Version: 2.0.9-c9445a5
(deck@steamdeck ~)$
Have you modified the read-only filesystem at any point?
no
Backend Logs
deckylog.txt
Frontend Logs
[0208/222222.347230:WARNING:alloy_main_delegate.cc(578)] Alloy bootstrap is deprecated and will be removed in ~M127. See chromiumembedded/cef#3685
[0208/222222.395715:INFO:crash_reporting.cc(238)] Crash reporting enabled for process: browser
[0208/222222.406050:WARNING:task_impl.cc(31)] No task runner for threadId 0
[0208/222222.408373:WARNING:task_impl.cc(31)] No task runner for threadId 0
[0208/222222.644723:ERROR:object_proxy.cc(576)] Failed to call method: org.freedesktop.DBus.Properties.Get: object_path= /org/freedesktop/portal/desktop: org.freedesktop.DBus.Error.InvalidArgs: No such interface “org.freedesktop.portal.FileChooser”
[0208/222222.644759:WARNING:property.cc(144)] version: GetAndBlock: failed.
[0208/222222.645142:ERROR:select_file_dialog_linux_portal.cc(287)] Failed to read portal version property
[0208/222222.650319:INFO:crash_reporting.cc(255)] Crash reporting enabled for process: gpu-process
[0208/222222.800406:WARNING:sandbox_linux.cc(430)] InitializeSandbox() called with multiple threads in process gpu-process.
[0208/222223.569581:INFO:crash_reporting.cc(238)] Crash reporting enabled for process: utility
[0208/222223.598257:INFO:crash_reporting.cc(255)] Crash reporting enabled for process: utility
[0208/222225.013521:INFO:crash_reporting.cc(255)] Crash reporting enabled for process: renderer
[0208/222227.590365:ERROR:atom_cache.cc(229)] Add STEAM_GAME to kAtomsToCache
[0208/222228.098091:ERROR:ffmpeg_common.cc(959)] Unsupported pixel format: -1
[0208/222228.226827:INFO:crash_reporting.cc(238)] Crash reporting enabled for process: utility
[0208/222258.388091:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 1 times!
[0208/222258.389662:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 2 times!
[0208/222301.962025:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 3 times!
[0208/222458.491346:INFO:CONSOLE(2)] "Unable to preventDefault inside passive event listener invocation.", source: https://steamloopback.host/libraries/libraries~00299a408.js (2)
[0208/222459.419055:INFO:CONSOLE(2)] "Unable to preventDefault inside passive event listener invocation.", source: https://steamloopback.host/libraries/libraries~00299a408.js (2)
[0208/222522.427765:WARNING:sync_reader.cc(175)] ASR: No room in socket buffer.: Broken pipe (32)
[0208/222523.647341:INFO:CONSOLE(2)] "Unable to preventDefault inside passive event listener invocation.", source: https://steamloopback.host/libraries/libraries~00299a408.js (2)
[0208/222524.956511:INFO:CONSOLE(2)] "Unable to preventDefault inside passive event listener invocation.", source: https://steamloopback.host/libraries/libraries~00299a408.js (2)
[0208/223027.391313:INFO:CONSOLE(2)] "Unable to preventDefault inside passive event listener invocation.", source: https://steamloopback.host/libraries/libraries~00299a408.js (2)
[0208/223028.177303:INFO:CONSOLE(2)] "Unable to preventDefault inside passive event listener invocation.", source: https://steamloopback.host/libraries/libraries~00299a408.js (2)
[0208/223029.284035:INFO:CONSOLE(2)] "Unable to preventDefault inside passive event listener invocation.", source: https://steamloopback.host/libraries/libraries~00299a408.js (2)
[0208/223030.091191:INFO:CONSOLE(2)] "Unable to preventDefault inside passive event listener invocation.", source: https://steamloopback.host/libraries/libraries~00299a408.js (2)
[0208/223030.691979:INFO:CONSOLE(2)] "Unable to preventDefault inside passive event listener invocation.", source: https://steamloopback.host/libraries/libraries~00299a408.js (2)
[0208/223031.102229:INFO:CONSOLE(2)] "Unable to preventDefault inside passive event listener invocation.", source: https://steamloopback.host/libraries/libraries~00299a408.js (2)
[0208/223043.507250:INFO:CONSOLE(2)] "Unable to preventDefault inside passive event listener invocation.", source: https://steamloopback.host/libraries/libraries~00299a408.js (2)
previous.txt
The text was updated successfully, but these errors were encountered: