<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Fluorine-Manager.git/docker/Dockerfile, branch main</title>
<subtitle>A port of MO2 in linux with NaK integration and FUSE based VFS. Comes with Root Builder support by default.</subtitle>
<id>http://git.schererleander.de/Fluorine-Manager.git/atom/docker/Dockerfile?h=main</id>
<link rel='self' href='http://git.schererleander.de/Fluorine-Manager.git/atom/docker/Dockerfile?h=main'/>
<link rel='alternate' type='text/html' href='http://git.schererleander.de/Fluorine-Manager.git/'/>
<updated>2026-06-17T18:38:05Z</updated>
<entry>
<title>Fix bundled font fallback</title>
<updated>2026-06-17T18:38:05Z</updated>
<author>
<name>SulfurNitride</name>
<email>SulfurNitride@users.noreply.github.com</email>
</author>
<published>2026-06-17T18:38:05Z</published>
<link rel='alternate' type='text/html' href='http://git.schererleander.de/Fluorine-Manager.git/commit/?id=e8b0fa5bd9e83001a82d6501eb39519a71caacdf'/>
<id>urn:sha1:e8b0fa5bd9e83001a82d6501eb39519a71caacdf</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Prepare Nexus-safe release cleanup</title>
<updated>2026-06-17T06:46:09Z</updated>
<author>
<name>SulfurNitride</name>
<email>SulfurNitride@users.noreply.github.com</email>
</author>
<published>2026-06-17T06:46:09Z</published>
<link rel='alternate' type='text/html' href='http://git.schererleander.de/Fluorine-Manager.git/commit/?id=05aa96d20ca726908a7d8b1943f86f0c4e11bf18'/>
<id>urn:sha1:05aa96d20ca726908a7d8b1943f86f0c4e11bf18</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add FUSE io_uring toggle and update libfuse</title>
<updated>2026-05-28T06:59:16Z</updated>
<author>
<name>SulfurNitride</name>
<email>SulfurNitride@users.noreply.github.com</email>
</author>
<published>2026-05-28T06:59:16Z</published>
<link rel='alternate' type='text/html' href='http://git.schererleander.de/Fluorine-Manager.git/commit/?id=07ac26ba1ca08f430bd5faae89b98d5b2704c5de'/>
<id>urn:sha1:07ac26ba1ca08f430bd5faae89b98d5b2704c5de</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Update MO2 beta 12 integration</title>
<updated>2026-05-24T05:19:52Z</updated>
<author>
<name>SulfurNitride</name>
<email>SulfurNitride@users.noreply.github.com</email>
</author>
<published>2026-05-24T05:19:52Z</published>
<link rel='alternate' type='text/html' href='http://git.schererleander.de/Fluorine-Manager.git/commit/?id=dad7de1e534837f9ea677925e7c87a3d816f9baa'/>
<id>urn:sha1:dad7de1e534837f9ea677925e7c87a3d816f9baa</id>
<content type='text'>
</content>
</entry>
<entry>
<title>build: migrate Dockerfile + plugin_python from pip/poetry to uv</title>
<updated>2026-05-16T17:57:25Z</updated>
<author>
<name>SulfurNitride</name>
<email>SulfurNitride@users.noreply.github.com</email>
</author>
<published>2026-05-15T22:13:29Z</published>
<link rel='alternate' type='text/html' href='http://git.schererleander.de/Fluorine-Manager.git/commit/?id=f782b0ca53b2353011ebc517302f1509690040ee'/>
<id>urn:sha1:f782b0ca53b2353011ebc517302f1509690040ee</id>
<content type='text'>
Dockerfile: drop apt python3/python3-pip, copy the uv static binary from
ghcr.io/astral-sh/uv:latest, install python-build-standalone via
`uv python install` (replacing the manual curl), run aqtinstall via
`uv tool run`, install build-time packages via
`uv pip install --system --break-system-packages --python ...`. Same swap
applied to the CI workflow's inline package-install step.

plugin_python: convert pyproject.toml from [tool.poetry] to PEP 621
[project] + [dependency-groups], drop poetry.lock, replace
abatilo/actions-poetry + `poetry install/run` with astral-sh/setup-uv +
`uv sync/run` in libs/plugin_python/.github/workflows/linting.yml.

Co-Authored-By: Claude Opus 4.7 (1M context) &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>bump to larian-formats 0.8.1</title>
<updated>2026-05-16T15:20:19Z</updated>
<author>
<name>Saghm Rossi</name>
<email>git@saghm.com</email>
</author>
<published>2026-05-16T15:20:10Z</published>
<link rel='alternate' type='text/html' href='http://git.schererleander.de/Fluorine-Manager.git/commit/?id=089542fa4dc43a59a08bdab06a96d399fbf6c53b'/>
<id>urn:sha1:089542fa4dc43a59a08bdab06a96d399fbf6c53b</id>
<content type='text'>
Contains the following changes:
* Older mod formats (v15 and v16) supported
* Less strict meta.lsx parsing (empty values will use the default for
  the type)
* zstd compression support
</content>
</entry>
<entry>
<title>Replace LsLib via proton with native larian-formats Python package</title>
<updated>2026-05-15T00:14:43Z</updated>
<author>
<name>Saghm Rossi</name>
<email>git@saghm.com</email>
</author>
<published>2026-05-14T02:25:20Z</published>
<link rel='alternate' type='text/html' href='http://git.schererleander.de/Fluorine-Manager.git/commit/?id=393e71eebd027b8208fc57ad5f014128b5bf15ee'/>
<id>urn:sha1:393e71eebd027b8208fc57ad5f014128b5bf15ee</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add PE-side VFS bridge acceleration</title>
<updated>2026-05-08T16:06:06Z</updated>
<author>
<name>SulfurNitride</name>
<email>SulfurNitride@users.noreply.github.com</email>
</author>
<published>2026-05-08T16:06:06Z</published>
<link rel='alternate' type='text/html' href='http://git.schererleander.de/Fluorine-Manager.git/commit/?id=6391164071b859e901283bec098974ef6b104f50'/>
<id>urn:sha1:6391164071b859e901283bec098974ef6b104f50</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Remove AppImage build target and runtime references</title>
<updated>2026-05-01T15:09:39Z</updated>
<author>
<name>SulfurNitride</name>
<email>SulfurNitride@users.noreply.github.com</email>
</author>
<published>2026-05-01T15:09:39Z</published>
<link rel='alternate' type='text/html' href='http://git.schererleander.de/Fluorine-Manager.git/commit/?id=af43100e29859adbf5dcb6ee90cd8f981439b859'/>
<id>urn:sha1:af43100e29859adbf5dcb6ee90cd8f981439b859</id>
<content type='text'>
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 -&gt; launcherOrBinary; bundledFluorineIcon
  no longer probes APPDIR.
- nxmhandler: drop APPIMAGE-based wrapper path; use applicationFilePath.
- protonlauncher: rename cleanAppImageEnv -&gt; 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) &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Port upstream PR #2374: Nexus OAuth authentication</title>
<updated>2026-05-01T06:00:10Z</updated>
<author>
<name>SulfurNitride</name>
<email>SulfurNitride@users.noreply.github.com</email>
</author>
<published>2026-05-01T06:00:10Z</published>
<link rel='alternate' type='text/html' href='http://git.schererleander.de/Fluorine-Manager.git/commit/?id=4bb4fe5ca0e7e75533d908a91f0d7aa086db9e61'/>
<id>urn:sha1:4bb4fe5ca0e7e75533d908a91f0d7aa086db9e61</id>
<content type='text'>
Replaces legacy API-key flow with OAuth 2.0 PKCE (public client,
client_id "modorganizer2", overridable via MO2_NEXUS_CLIENT_ID env).
Backwards-compatible: stored API key is used as fallback if no OAuth
token is present.

Fixes the symptom users hit after Nexus deprecated personal API keys
for download endpoints — Settings showed "Connected." (key still
validates) but downloads/CDN list returned empty.

Cherry-picked from upstream/dev/oauth-graphql against merge-base
925bade3, with these adjustments for our Linux-only fork:

  - Dockerfile: aqtinstall +qtnetworkauth module
  - CMakeLists.txt: find_package + link Qt6::NetworkAuth
  - Dropped Windows-only hunks: dlls.manifest.qt6{,debug}, pch.h
    QWebSocket include
  - Skipped src/CMakeLists.txt and .gitignore upstream hunks (their
    layout differs from ours)
  - Skipped organizer_en.ts (regenerable via lupdate)
  - Skipped tutorials/tutorial_firststeps_settings.js (defer to the
    tutorials-disable PR port)
  - Kept our defensive default member initialisers in
    nxmaccessmanager.h (m_Reply{nullptr}, m_Result{None}, etc.) and
    `override` on createRequest()
  - Resolved trivial conflicts in modlistviewactions.cpp by taking
    upstream's NexusOAuthTokens API while retaining our [=, this]
    capture style
  - createinstancedialog.h, instancemanager.cpp: only meaningful PR
    delta is a comment text change / unrelated drift; ours retained

OAuth callback uses local loopback http://127.0.0.1:28635/callback
served by QOAuthHttpServerReplyHandler (no firewall punch needed).
Token storage piggybacks the existing Linux QSettings INI credential
backend (~/.config/ModOrganizer/credentials.ini).

Co-Authored-By: Claude Opus 4.7 (1M context) &lt;noreply@anthropic.com&gt;
</content>
</entry>
</feed>
