Problem
- AGS v1 under GJS ESM ignores GIR Repository.prepend_*; typelibs in /usr/local aren’t discovered reliably.
- On Arch, users may install AGS into /usr/local while system typelibs can also live under /usr/lib64/ags or /usr/lib/ags.
Solution
- Keep the tolerant ESM patcher (no-op safe): remove deprecated GIR repo calls; ensure GLib import; inject GI_TYPELIB_PATH via GLib.setenv when editing the ESM main.
- Add a distro-agnostic wrapper at /usr/local/bin/ags that sets:
- GI_TYPELIB_PATH=/usr/local/lib64/girepository-1.0:/usr/local/lib/girepository-1.0:/usr/lib64/girepository-1.0:/usr/lib/girepository-1.0:/usr/local/lib64:/usr/local/lib:/usr/lib64/ags:/usr/lib/ags:$GI_TYPELIB_PATH
- LD_LIBRARY_PATH=/usr/local/lib64:/usr/local/lib:$LD_LIBRARY_PATH
Then execs: /usr/bin/gjs -m "$MAIN_JS" (resolved under /usr/local/share or /usr/share).
Why
- Ensures AGS v1 runs reliably on Arch without depending solely on fragile in-place edits; mirrors the working Fedora fix.
File
- install-scripts/ags.sh