From 8a10147bbb1fe6589c4205bcfd26d6d696512ced Mon Sep 17 00:00:00 2001 From: SulfurNitride Date: Wed, 11 Feb 2026 19:04:11 -0600 Subject: Add Root Builder plugin, Linux game detection, and OMOD installer fix - New native Root Builder plugin (src/plugins/rootbuilder.py) with copy and symlink deploy modes, auto-deploy hooks, backup/restore, and third-party conflict detection that moves incompatible plugins to DisabledPlugins/. In link mode, .exe/.dll are always copied to avoid Wine/Proton path resolution issues with symlinked executables. - Fix basic_games detection on Linux: steam_utils now checks native Steam paths (~/.local/share/Steam, Flatpak, Snap), epic_utils uses correct Linux Heroic config paths, gog_utils falls back to Heroic GOG installed.json when Windows registry is unavailable. - Fix OMOD installer crash: isArchiveSupported now handles both IFileTree (from mod list refresh) and string (from install check) arguments. - Add flatpak manifest step to copy source-tree Python plugins (src/plugins/*.py) into the build output. Co-Authored-By: Claude Opus 4.6 --- flatpak/com.fluorine.manager.yml | 6 ++++++ flatpak/flatpak-install.sh | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) (limited to 'flatpak') diff --git a/flatpak/com.fluorine.manager.yml b/flatpak/com.fluorine.manager.yml index a0e2122..0265b90 100644 --- a/flatpak/com.fluorine.manager.yml +++ b/flatpak/com.fluorine.manager.yml @@ -314,6 +314,12 @@ modules: done rm -f /app/lib/fluorine/plugins/FNIS*.py + # Source-tree Python plugins (rootbuilder, omod installer, etc.). + - | + for f in src/plugins/*.py; do + [ -f "${f}" ] && cp -f "${f}" /app/lib/fluorine/plugins/ + done + # 7z runtime. - | if [ -f _build/src/src/dlls/7z.so ]; then diff --git a/flatpak/flatpak-install.sh b/flatpak/flatpak-install.sh index e52497e..f5cdfda 100755 --- a/flatpak/flatpak-install.sh +++ b/flatpak/flatpak-install.sh @@ -34,7 +34,9 @@ if [ "${MODE}" = "bundle" ]; then echo "Building Flatpak bundle (this may take a while)..." flatpak-builder --repo="${PROJECT_DIR}/flatpak-repo" --force-clean \ "${BUILD_DIR}" "${MANIFEST}" - flatpak build-bundle "${PROJECT_DIR}/flatpak-repo" "${PROJECT_DIR}/fluorine-manager.flatpak" "${APP_ID}" + flatpak build-bundle \ + --runtime-repo=https://flathub.org/repo/flathub.flatpakrepo \ + "${PROJECT_DIR}/flatpak-repo" "${PROJECT_DIR}/fluorine-manager.flatpak" "${APP_ID}" BUNDLE_SIZE="$(du -sh fluorine-manager.flatpak | cut -f1)" echo "" echo "=== Bundle created: fluorine-manager.flatpak (${BUNDLE_SIZE}) ===" -- cgit v1.3.1