Files
community-plugins/game-launcher/widget.luau
T
Ahmed EmadandGitHub 5c59d225b8 Add Game Launcher (#57)
* Add game-launcher plugin

* auto-build: compile gamelauncher.c on first run

* rename leo -> Alexander

* add cc to dependencies for CI

* fix CI issues: lowercase id, prefix, translations, getConfig

* fix: revert prefix to g (noctalia prepends / via provider_prefix)

* game-launcher: fix all 4 security audit issues, cache deletion crash, covers not showing, close button

- Issue 1: Removed all system/popen/curl/wget/python3/grep from C scanner
- Issue 2: Protocol URL validation + character-level filtering + shell escaping
- Issue 3: Added xdg-utils to plugin.toml dependencies
- Issue 4: Steampoacher opt-in setting, documented data flow in README
- Fix: Plugin crash after cache deletion (pcall-wrapped all error paths)
- Fix: Close button uses noctalia.togglePanel instead of panel.close
- Fix: onOpen rescans if any game missing a cover
- Fix: Cover display fallback path reconstruction

* game-launcher: revert close button to panel.close

* game-launcher: note steampoacher needed for HQ covers

* game-launcher: shorten steampoacher note

* 1. Refactored README by hand **Stupid AI**

2. deleted the binary , it will be built with plugin open

* fix: Remove the character-by-character sanitization
2026-07-20 21:02:33 -04:00

12 lines
271 B
Luau

local glyph = noctalia.getConfig("glyph")
function update()
noctalia.setUpdateInterval(60000)
barWidget.setGlyph(glyph)
barWidget.setTooltip("Game Launcher — click to browse")
end
function onClick()
noctalia.togglePanel("alexander/game-launcher:browser")
end