diff options
| author | SulfurNitride <SulfurNitride@users.noreply.github.com> | 2026-02-19 17:25:48 -0600 |
|---|---|---|
| committer | SulfurNitride <SulfurNitride@users.noreply.github.com> | 2026-02-19 17:25:48 -0600 |
| commit | 5467e210668eb24de9a4429ef0ddcbc6442e8932 (patch) | |
| tree | 6c672183779c800963d73db5bee6742bf08c65fd /libs/nak/src | |
| parent | 6d70b7fa6a9cdf8ea59c7aa98f92249c5a4e0060 (diff) | |
Add Python init diagnostics, AppImage build system, misc Linux fixes
- 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>
Diffstat (limited to 'libs/nak/src')
| -rw-r--r-- | libs/nak/src/paths.rs | 6 | ||||
| -rw-r--r-- | libs/nak/src/runtime_wrap.rs | 36 |
2 files changed, 3 insertions, 39 deletions
diff --git a/libs/nak/src/paths.rs b/libs/nak/src/paths.rs index e86c284..f6dde6c 100644 --- a/libs/nak/src/paths.rs +++ b/libs/nak/src/paths.rs @@ -1,11 +1,11 @@ //! Shared data directory for Fluorine Manager. //! -//! All data lives under `~/.var/app/com.fluorine.manager/`. +//! All data lives under `~/.local/share/fluorine/`. use std::path::PathBuf; -/// Returns the Fluorine data directory (`~/.var/app/com.fluorine.manager`). +/// Returns the Fluorine data directory (`~/.local/share/fluorine`). pub fn data_dir() -> PathBuf { let home = std::env::var("HOME").unwrap_or_else(|_| "/tmp".to_string()); - PathBuf::from(home).join(".var/app/com.fluorine.manager") + PathBuf::from(home).join(".local/share/fluorine") } diff --git a/libs/nak/src/runtime_wrap.rs b/libs/nak/src/runtime_wrap.rs index d33bd59..9b5ff89 100644 --- a/libs/nak/src/runtime_wrap.rs +++ b/libs/nak/src/runtime_wrap.rs @@ -34,23 +34,6 @@ fn find_in_path(binary: &str) -> Option<PathBuf> { } pub fn resolve_umu_run() -> Option<PathBuf> { - if is_flatpak() { - // In Flatpak, umu-run must run on the host via flatpak-spawn --host. - let host_copy = env::var("XDG_DATA_HOME") - .ok() - .map(PathBuf::from) - .unwrap_or_else(|| { - let home = env::var("HOME").unwrap_or_else(|_| "/tmp".to_string()); - PathBuf::from(home).join(".local/share") - }) - .join("fluorine/umu-run"); - if host_copy.exists() { - return Some(host_copy); - } - // Fall back to bare name for host PATH resolution. - return Some(PathBuf::from("umu-run")); - } - let bundled = env::var("NAK_BUNDLED_UMU_RUN") .ok() .map(PathBuf::from) @@ -64,14 +47,8 @@ pub fn resolve_umu_run() -> Option<PathBuf> { } } -pub fn is_flatpak() -> bool { - Path::new("/.flatpak-info").exists() -} - /// Build a command to run `exe` with the given environment variables. /// -/// In Flatpak mode, `flatpak-spawn --host` is used and env vars are passed as -/// `--env=KEY=VALUE` flags (the host process does NOT inherit the sandbox env). /// In steam-run mode, the command is wrapped with `steam-run`. /// Otherwise the command runs directly. pub fn build_command<S: AsRef<OsStr>>( @@ -86,19 +63,6 @@ pub fn build_command<S: AsRef<OsStr>>( } return cmd; } - if is_flatpak() { - let mut cmd = Command::new("flatpak-spawn"); - cmd.arg("--host"); - for (key, value) in envs { - cmd.arg(format!( - "--env={}={}", - key, - value.as_ref().to_string_lossy() - )); - } - cmd.arg(exe.as_ref()); - return cmd; - } let mut cmd = Command::new(exe); for (key, value) in envs { cmd.env(key, value.as_ref()); |
