| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We ship via portable tarball directory + .bin self-extracting installer
only; the AppImage path was unmaintained and pulling in linuxdeploy
tooling for a format we no longer publish.
Build:
- build.sh: drop appimage/all-includes-appimage modes (now: tarball,
installer, all=both, shell). Output listing tracks the directory.
- docker/Dockerfile: drop BUILD_APPIMAGE arg and the linuxdeploy
download/extract block.
- docker/build-inner.sh: drop build_appimage() (~120 lines), AppImage
arm of the BUILD_MODE switch, *.AppImage summary listing.
- docker/AppRun.sh: deleted.
- .gitignore: drop *.AppImage / squashfs-root / *.flatpak entries.
Runtime: no longer key off APPIMAGE/APPDIR env vars or AppRun-set
state. The fluorine-manager launcher script already exports
FLUORINE_ORIG_*, MO2_BASE_DIR, MO2_PLUGINS_DIR, MO2_LIBS_DIR,
MO2_PYTHON_DIR for the same purpose, so simplify:
- envshortcut: appImageOrBinary -> launcherOrBinary; bundledFluorineIcon
no longer probes APPDIR.
- nxmhandler: drop APPIMAGE-based wrapper path; use applicationFilePath.
- protonlauncher: rename cleanAppImageEnv -> cleanFluorineEnv, drop
APPIMAGE/APPDIR/OWD/ARGV0/APPIMAGE_ORIGINAL_EXEC/DESKTOPINTEGRATION
removals and .mount_Fluori pattern strip.
- prefixsetuprunner: same env-cleaning trim.
- utility, library.h, proxypython, mainwindow, moapplication, appconfig:
comment cleanup pointing at the launcher instead of AppRun.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Direct DLL extraction and installer execution instead of shelling out
to winetricks for all prefix dependencies. Fixes d3dcompiler_47 being
sourced from wrong SDK cabs (broke CommunityShaders), and eliminates
the fragile cabextract-in-pressure-vessel PATH issue.
- d3dcompiler_47: direct download from Mozilla fxc2 repo
- d3dcompiler_43, d3dx9, d3dx11_43: cabextract from DirectX June 2010
redist with correct system32/syswow64 mapping
- xact/xact_x64: cab extraction + batched regsvr32 registration
- vcrun2022: direct installer with msvcp140.dll workaround (Wine #57518)
- dotnet6/7/8, dotnetdesktop6: direct x86+x64 installer pairs
- Game detection: batched into single .reg file import
- All DLL overrides added to WINE_SETTINGS_REG
- SHA256 verification for downloaded files
- Winetricks kept only for win11 mode step
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Move Wine prefix creation from NaK Rust FFI to native C++ with a new
modal dialog showing per-step progress, retry support, and proper
failure cleanup.
- PrefixSetupRunner: runs each step (proton init, drive cleanup, 11
individual winetricks verbs, .NET installers, game detection, wine
registry, win11 mode, post-setup) as discrete retryable operations
- PrefixSetupDialog: step list with status icons, filtered log output,
cancel/retry-failed/delete-prefix buttons
- Downloads use QNetworkAccessManager (no host curl dependency)
- Zip extraction uses downloaded 7zz binary (no host unzip dependency)
- Winetricks runs on host (not in pressure-vessel) so cabextract is
always findable via PATH
- Wine/winetricks debug spam filtered from log output
- Skip Python basic_games proxy since native equivalent exists
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
| |
|
|
|
|
|
|
| |
The hard-blacklist in plugincontainer.cpp only catches rootbuilder at the
top-level scan, but the Python proxy independently scans the plugins
directory for packages (dirs with __init__.py) and was still loading it.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
visibility fix
Plugin loading:
- Remove symlink-based ensureBundledPluginsLinked(), replace with multi-dir
search (bundled dir takes priority, instance dir adds extras only)
- Auto-clean stale symlinks from instance plugins/ dirs on startup
- Add mergedProxyList() for proxy plugin discovery across both dirs
VFS Root Builder (replaces Python rootbuilder.py):
- Native C++ Root Builder integrated into FuseConnector
- Deploy mod Root/ files to game dir before FUSE mount, clear on unmount
- Per-instance toggle in Instance Manager (default: on)
- Root Builder path normalization in processrunner.cpp: rewrite binary and
start-in paths from mods/.../Root/ to Game Root for correct Wine path
resolution (fixes SKSE + EngineFixes versionlib lookup)
- Expose game dir and prefix to SLR pressure-vessel via --filesystem=
Wine registry check:
- Read/write Wine prefix system.reg (HKLM) with timestamp-aware parsing
- Auto-check game install path before launch, prompt to fix if mismatched
- Updates both Software\ and Wow6432Node\ registry keys
Column visibility fix:
- Guard updateGroupByProxy() during QHeaderView::restoreState() to prevent
sort indicator restoration from triggering setSourceModel() which resets
all columns to visible
Python proxy:
- Skip FixGameRegKey.py, crashlogtools, rootbuilder.py (Windows-only or
replaced by native implementations)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- python: switch Py_InitializeEx → Py_InitializeFromConfig for explicit
error reporting; add dladdr + fprintf diagnostics to trace which DSO
Python symbols resolve to and whether Py_IsInitialized succeeds
- python: log RTLD_NOLOAD vs fresh-load outcome when promoting libpython
to RTLD_GLOBAL
- build: add Docker-based AppImage build script (build.sh), update
Dockerfile and build-inner.sh for AppImage-only workflow
- build: remove Flatpak support entirely; move AppImage metadata
(desktop/metainfo/icon) from flatpak/ to data/
- Add Monster Hunter Wilds basic_games plugin
- .gitignore: exclude squashfs-root, build-source, flatpak-repo,
__pycache__, fomod-plus-settings.ini
- Various Linux port fixes across wineprefix, processrunner, proton
launcher, FUSE connector, instance manager, download manager,
sanitychecks, and NaK Rust paths/runtime_wrap
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
and NaK integration
FUSE VFS now deploys non-data-dir mod mappings (Paks, OBSE, UE4SS, etc.)
via real symlinks and injects file-level data-dir mappings (plugins.txt,
loadorder.txt) into the VFS tree. Fixes game launches for Oblivion
Remastered (Root Builder path resolution, script extender support) and
BG3 (Wine prefix documents directory, file mapper symlinks on Linux).
Vendors mo2-fomod-plus plugin and NaK crate for FOMOD installer and
game finder/runtime support.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
|
|
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>
|