From 7ee008e150bc5bcf76082d726f719ee0fdfda982 Mon Sep 17 00:00:00 2001 From: SulfurNitride Date: Wed, 11 Feb 2026 02:37:39 -0600 Subject: Fluorine Manager: full Linux port of Mod Organizer 2 Complete native Linux port with FUSE-based virtual filesystem, Proton/umu-run integration, and Flatpak packaging. Key features: - FUSE VFS replacing Windows USVFS (in-process + standalone helper for Flatpak) - Proton/GE-Proton/umu-run launcher with env var forwarding - Flatpak support (sandbox-aware VFS, NXM handler, umu-run) - Wine prefix management UI - Case-insensitive path resolution for Linux filesystems - QSettings-safe INI handling (avoids Bethesda INI corruption) - Portable instance support with auto-generated launcher scripts Co-Authored-By: Claude Opus 4.6 --- libs/installer_wizard/.github/workflows/build.yml | 39 ++++++++++++++++++++++ .../installer_wizard/.github/workflows/linters.yml | 32 ++++++++++++++++++ 2 files changed, 71 insertions(+) create mode 100644 libs/installer_wizard/.github/workflows/build.yml create mode 100644 libs/installer_wizard/.github/workflows/linters.yml (limited to 'libs/installer_wizard/.github') diff --git a/libs/installer_wizard/.github/workflows/build.yml b/libs/installer_wizard/.github/workflows/build.yml new file mode 100644 index 0000000..c486f62 --- /dev/null +++ b/libs/installer_wizard/.github/workflows/build.yml @@ -0,0 +1,39 @@ +name: Build Installer Wizard Plugin + +on: + push: + branches: [master] + pull_request: + types: [opened, synchronize, reopened] + +jobs: + build: + runs-on: windows-2022 + steps: + - uses: actions/setup-python@v5 + with: + python-version: "3.12" + + - name: Set environmental variables + shell: bash + run: | + echo "VCPKG_ROOT=$VCPKG_INSTALLATION_ROOT" >> $GITHUB_ENV + + - uses: actions/checkout@v4 + + - name: Configure Installer Wizard Plugin build + shell: pwsh + run: | + cmake --preset vs2022-windows "-DCMAKE_INSTALL_PREFIX=install" "-DVCPKG_MANIFEST_FEATURES=standalone" + + - name: Build Installer Wizard Plugin + run: cmake --build vsbuild --config RelWithDebInfo + + - name: Install Installer Wizard Plugin + run: cmake --install vsbuild --config RelWithDebInfo + + - name: Upload Installer Wizard Plugin artifact + uses: actions/upload-artifact@master + with: + name: installer_wizard + path: ./install/bin/plugins diff --git a/libs/installer_wizard/.github/workflows/linters.yml b/libs/installer_wizard/.github/workflows/linters.yml new file mode 100644 index 0000000..95f45e6 --- /dev/null +++ b/libs/installer_wizard/.github/workflows/linters.yml @@ -0,0 +1,32 @@ +name: linters + +on: [push, pull_request] + +jobs: + checks: + runs-on: ubuntu-latest + strategy: + max-parallel: 4 + matrix: + python-version: [3.12] + + steps: + - uses: actions/checkout@v1 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v1 + with: + python-version: ${{ matrix.python-version }} + - uses: abatilo/actions-poetry@v2 + - name: Install package + run: poetry install + + # generate UI file for linting + - name: Generate UI files + shell: pwsh + run: | + Get-ChildItem -Recurse -File -Include "*.ui" | ForEach-Object { + poetry run pyuic6 $_ -o ([io.path]::ChangeExtension($_.FullName, "py")) + } + + - name: Lint + run: poetry run poe lint -- cgit v1.3.1