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/libbsarch/.github/workflows/build.yml | 64 ++++++++++++++++++++++++++++ libs/libbsarch/.github/workflows/linting.yml | 17 ++++++++ 2 files changed, 81 insertions(+) create mode 100644 libs/libbsarch/.github/workflows/build.yml create mode 100644 libs/libbsarch/.github/workflows/linting.yml (limited to 'libs/libbsarch/.github/workflows') diff --git a/libs/libbsarch/.github/workflows/build.yml b/libs/libbsarch/.github/workflows/build.yml new file mode 100644 index 0000000..f20a40c --- /dev/null +++ b/libs/libbsarch/.github/workflows/build.yml @@ -0,0 +1,64 @@ +name: Build libbsarch + +on: + push: + branches: [master] + tags: + - "*" + pull_request: + types: [opened, synchronize, reopened] + +env: + VCPKG_BINARY_SOURCES: clear;x-azblob,${{ vars.AZ_BLOB_VCPKG_URL }},${{ secrets.AZ_BLOB_SAS }},readwrite + +jobs: + build: + runs-on: windows-2022 + steps: + - name: "Set environmental variables" + shell: bash + run: | + echo "VCPKG_ROOT=$VCPKG_INSTALLATION_ROOT" >> $GITHUB_ENV + + - uses: actions/checkout@v4 + + - run: cmake --preset vs2022-windows "-DCMAKE_INSTALL_PREFIX=install" + + # build both Debug and Release for package + - name: Build libbsarch + run: | + cmake --build vsbuild --config Debug --verbose + cmake --build vsbuild --config Release --verbose + + - name: Install libbsarch + run: | + cmake --install vsbuild --config Debug + cmake --install vsbuild --config Release + + - name: Upload libbsarch artifact + uses: actions/upload-artifact@master + with: + name: libbsarch + path: ./install + + publish: + if: github.ref_type == 'tag' + needs: build + runs-on: windows-2022 + permissions: + contents: write + steps: + - name: Download Artifact + uses: actions/download-artifact@master + with: + name: libbsarch + path: ./install + + - name: Create libbsarch archive + run: 7z a libbsarch_${{ github.ref_name }}.7z ./install/* + + - name: Publish Release + env: + GH_TOKEN: ${{ github.token }} + GH_REPO: ${{ github.repository }} + run: gh release create --draft=false --notes="${{ github.ref_name }}" "${{ github.ref_name }}" ./libbsarch_${{ github.ref_name }}.7z diff --git a/libs/libbsarch/.github/workflows/linting.yml b/libs/libbsarch/.github/workflows/linting.yml new file mode 100644 index 0000000..12681a8 --- /dev/null +++ b/libs/libbsarch/.github/workflows/linting.yml @@ -0,0 +1,17 @@ +name: Lint libbsarch + +on: + push: + pull_request: + types: [opened, synchronize, reopened] + +jobs: + lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Check format + uses: ModOrganizer2/check-formatting-action@master + with: + check-path: "." + exclude-regex: "third-party" -- cgit v1.3.1