Repository navigation
Releases: babi723/decky-backlog-picker
Release list
v1.3.0 — Real names for non-installed games
New: non-installed games show their real name, not "App "
Games found via a Steam collection or the "All" library scope that aren't
installed used to show as "App 12345" since names were only read from
installed games' local manifest files. Now resolved from Steam's own local
metadata cache (`appcache/appinfo.vdf`) — still no Steam Web API key
needed. Verified against real collections (24/24 and 119/119 names
resolved) in ~20ms cold, ~instant once cached.
No other feature changes since v1.1.0 — see that release's notes for
what's new since v1.0.0.
Manual install
Download the zip below, unzip it, and copy the decky-backlog-picker folder to /home/deck/homebrew/plugins/. Restart Decky.
v1.2.5 — ButtonItem section switcher
Fix: section switcher didn't respond to selection
Both the native Tabs component (v1.2.0) and DropdownItem (v1.2.4) did
nothing when trying to switch sections, confirmed after a proper Decky
Loader restart (not a stale-install issue). Both are pulled dynamically
from Steam's internal webpack modules, which may expect page context a
plain plugin sidebar doesn't provide. Replaced with 3 plain ButtonItems —
the same component already used everywhere else in this plugin without
issue.
Note: the Collection filter dropdown (inside Pick tab) was also
reported showing the same symptom. It's untouched in this release (too
many options — could be 25+ — for a button list); please retest it after
updating and let us know if it's fixed too or still broken.
No other feature changes since v1.1.0 — see that release's notes for
what's new since v1.0.0.
Manual install
Download the zip below, unzip it, and copy the decky-backlog-picker folder to /home/deck/homebrew/plugins/. Restart Decky.
v1.2.4 — Dropdown section switcher
UI change: Pick/Library/Order switcher is now a dropdown
The 3-button tab bar felt awkward to navigate with a controller. Replaced
it with a single DropdownItem (same component already used for the
ProtonDB/Collection filters) — one focusable element, then D-pad up/down
through the 3 sections.
No other feature changes since v1.1.0 — see that release's notes for what's
new since v1.0.0 (Pick/Library/Order sections, ProtonDB/HLTB integration, etc).
Manual install
Download the zip below, unzip it, and copy the decky-backlog-picker folder to /home/deck/homebrew/plugins/. Restart Decky.
v1.2.3 — Exclude Proton/runtime tools from picker
Fix: "Pick For Me" sometimes selected Proton or Steam Linux Runtime
Steam compatibility tools (Proton, Steam Linux Runtime, SteamVR, Steamworks
Common Redistributables) have their own `appmanifest_*.acf` files just
like real games, so they were showing up as pickable "games". Now filtered
out by name prefix (app-ID filtering isn't viable since new Proton versions
ship regularly with new IDs).
No other feature changes since v1.1.0 — see that release's notes for what's
new since v1.0.0 (Pick/Library/Order tabs, ProtonDB/HLTB integration, etc).
Manual install
Download the zip below, unzip it, and copy the decky-backlog-picker folder to /home/deck/homebrew/plugins/. Restart Decky.
v1.2.2 — Default Pick tab filter to Any
Fix: "0 games in pool" by default
Diagnosed with the user: installed-game detection works fine (22 games
found), blacklist empty, no ProtonDB errors logged — but the default
Gold+ filter still showed 0. Root cause looks like the frontend's
ProtonDB warm-up call not completing on some setups (frontend errors
don't reach Decky's backend log, so this couldn't be pinned down further
remotely).
Pragmatic fix: the Pick tab now defaults to Any instead of Gold+, so
an empty/unreachable ProtonDB cache never blocks the picker. Gold+ and
Platinum Only are still there in the dropdown whenever you want them.
No other feature changes since v1.1.0 — see that release's notes for what's
new since v1.0.0 (Pick/Library/Order tabs, ProtonDB/HLTB integration, etc).
Manual install
Download the zip below, unzip it, and copy the decky-backlog-picker folder to /home/deck/homebrew/plugins/. Restart Decky.
v1.2.1 — Revert Tabs height regression + diagnostics
Fixes / changes
-
Reverted the native Tabs component from v1.2.0: it collapsed to
near-zero height in the QAM sidebar panel (likely built assuming a
full-page context like Library/Settings). Back to the custom tab bar
from v1.1.x. -
"0 games in pool" even with ProtonDB set to "Any": this means the
bottleneck isn't ProtonDB caching — something in installed-game
detection itself isn't finding anything on some setups. Added logging
(_main()andget_library()) so the actual resolved Steam path,
Steam ID, and installed-game count show up in the plugin's log file for
real diagnosis instead of more guessing.If you're hitting "0 games," please check:
~/homebrew/logs/decky-backlog-picker/*.logand share the
Backlog Picker loaded. steam_path=...line.
No feature changes since v1.1.0 — see that release's notes for what's new
since v1.0.0 (Pick/Library/Order tabs, ProtonDB/HLTB integration, etc).
Manual install
Download the zip below, unzip it, and copy the decky-backlog-picker folder to /home/deck/homebrew/plugins/. Restart Decky.
v1.2.0 — Native tab bar + fix empty Pick tab
Warning
Regression — Tabs component collapses to near-zero height in the sidebar panel. Use v1.2.1 instead.
Fixes reported after v1.1.4 first successfully loaded
- "0 games in pool" on the Pick tab: fixed for the ProtonDB-caching case,
but a separate installed-detection issue can still cause this — see
v1.2.1. - Replaced the tab bar with @decky/ui's real
Tabscomponent to fix
controller feel — turned out to break layout height in this context.
Reverted in v1.2.1.
Manual install
Download the zip below, unzip it, and copy the decky-backlog-picker folder to /home/deck/homebrew/plugins/. Restart Decky.
v1.1.4 — Fix eval() SyntaxError on load
Fix: "Unexpected token 'export' at PluginLoader.importReactPlugin"
v1.1.3's build itself was correct (real ESM, confirmed against the official
@decky/rollup source), but Decky Loader's backend only picks the ESM
loading path (import(), reads export default) when the plugin's
package.json has "type": "module". Ours didn't, so Decky Loader instead
used its legacy path — fetching a different endpoint and running it through
eval(), which chokes on export syntax (confirmed by reading
backend/decky_loader/plugin/plugin.py and frontend/src/plugin-loader.tsx
directly). Added the missing field.
If you installed any earlier v1.1.x, please update to this version.
No feature changes since v1.1.0 — see that release's notes for what's new
since v1.0.0 (Pick/Library/Order tabs, ProtonDB/HLTB integration, etc).
Manual install
Download the zip below, unzip it, and copy the decky-backlog-picker folder to /home/deck/homebrew/plugins/. Restart Decky.
v1.1.3 — Fix ES module export crash
Warning
Broken — crashes with "Unexpected token 'export'". Use v1.1.4 instead.
Fix: "plugin export is not a function"
The build format itself was fixed here (real ESM via the official
@decky/rollup), but package.json was missing "type": "module", so
Decky Loader still ran the bundle through its legacy eval() path instead
of a real ESM import(). See v1.1.4 for the real fix.
Manual install
Download the zip below, unzip it, and copy the decky-backlog-picker folder to /home/deck/homebrew/plugins/. Restart Decky.
v1.1.2 — Fix ReactCurrentOwner crash
Warning
Broken — crashes with "plugin export is not a function". Use v1.1.3 instead.
Fix: "Cannot read properties of undefined (reading 'ReactCurrentOwner')"
Fixed the React-internals crash from v1.1.1, but the build was still an
IIFE bundle instead of the ES module Decky Loader expects, so it crashed
one step later. See v1.1.3 for the real fix.
Manual install
Download the zip below, unzip it, and copy the decky-backlog-picker folder to /home/deck/homebrew/plugins/. Restart Decky.