aboutsummaryrefslogtreecommitdiff
path: root/libs/uibase/README.md
diff options
context:
space:
mode:
authorSulfurNitride <SulfurNitride@users.noreply.github.com>2026-02-11 02:37:39 -0600
committerSulfurNitride <SulfurNitride@users.noreply.github.com>2026-02-11 02:37:39 -0600
commit7ee008e150bc5bcf76082d726f719ee0fdfda982 (patch)
tree27fb39be241fdb5ac2734c574de678977d1856d0 /libs/uibase/README.md
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 <noreply@anthropic.com>
Diffstat (limited to 'libs/uibase/README.md')
-rw-r--r--libs/uibase/README.md56
1 files changed, 56 insertions, 0 deletions
diff --git a/libs/uibase/README.md b/libs/uibase/README.md
new file mode 100644
index 0000000..b9abeaa
--- /dev/null
+++ b/libs/uibase/README.md
@@ -0,0 +1,56 @@
+# modorganizer-uibase
+
+[![Build status](https://github.com/ModOrganizer2/modorganizer-uibase/actions/workflows/build.yml/badge.svg?branch=dev/vcpkg)](https://github.com/ModOrganizer2/modorganizer-uibase/actions)
+[![Lint status]](https://github.com/ModOrganizer2/modorganizer-uibase/actions/workflows/linting.yml/badge.svg?branch=dev/vcpkg)](<https://github.com/ModOrganizer2/modorganizer-uibase/actions>)
+
+## How to build?
+
+```pwsh
+# set to the appropriate path for Qt
+$env:QT_ROOT = "C:\Qt\6.7.0\msvc2019_64"
+
+# set to the appropriate path for VCPKG
+$env:VCPKG_ROOT = "C:\vcpkg"
+
+cmake --preset vs2022-windows "-DCMAKE_PREFIX_PATH=$env:QT_ROOT" `
+ -DCMAKE_INSTALL_PREFIX=install `
+ -DBUILD_TESTING=ON
+
+# build uibase
+cmake --build vsbuild --config RelWithDebInfo
+
+# install uibase
+cmake --install vsbuild --config RelWithDebInfo
+
+# test uibase
+ctest --test-dir vsbuild -C RelWithDebInfo --output-on-failure
+```
+
+Check [`CMakePresets.json`](CMakePresets.json) for some predefined values. Extra options
+include:
+
+- `BUILD_TESTING` - if specified, build tests for UIBase, requires the VCPKG `testing`
+ feature to be enabled (enabled in the preset).
+
+## How to use?
+
+### As a VCPKG dependency
+
+**Not implemented yet.**
+
+### As a CMake target
+
+Once the CMake targets for `uibase` are generated (see _How to build?_), you can include
+`mo2::uibase` in your project:
+
+1. Add `install/lib` to your `CMAKE_PREFIX_PATH` (replace `install` by the install
+ location specified during build).
+2. Use `uibase` in your `CMakeLists.txt`:
+
+```cmake
+find_package(mo2-uibase CONFIG REQUIRED)
+
+add_library(myplugin SHARED)
+
+target_link_libraries(myplugin PRIVATE mo2::uibase)
+```