From 84a43a2e6afbdfab92c610d47aa75e3876ffacd6 Mon Sep 17 00:00:00 2001 From: SulfurNitride Date: Thu, 12 Mar 2026 13:48:25 -0500 Subject: Replace wrestool with native Rust PE icon extraction (pelite) - Add icons.rs to nak crate: parses PE resource sections, extracts RT_GROUP_ICON/RT_ICON and builds ICO files in memory - Expose nak_extract_exe_icon() FFI for C++ consumption - Update iconForExecutable() to use Rust FFI instead of shelling out to wrestool; reads all ICO entries for correct color depth - Fix BasicGamePlugin::gameIcon() to call iconForExecutable() (was returning empty QIcon, causing placeholder icons for BG3/Cyberpunk) - Move app icon setup: setDesktopFileName + setWindowIcon to MOApplication constructor (fixes Wayland taskbar/decoration icon) - Move data/com.fluorine.* to data/icons/, install to XDG paths at launch for Wayland compositor icon resolution - Remove icoutils dependency from Docker image and build output Co-Authored-By: Claude Opus 4.6 --- data/com.fluorine.manager.desktop | 22 ---------------- data/com.fluorine.manager.metainfo.xml | 37 --------------------------- data/com.fluorine.manager.png | Bin 51022 -> 0 bytes data/icons/com.fluorine.manager.desktop | 22 ++++++++++++++++ data/icons/com.fluorine.manager.metainfo.xml | 37 +++++++++++++++++++++++++++ data/icons/com.fluorine.manager.png | Bin 0 -> 51022 bytes 6 files changed, 59 insertions(+), 59 deletions(-) delete mode 100644 data/com.fluorine.manager.desktop delete mode 100644 data/com.fluorine.manager.metainfo.xml delete mode 100644 data/com.fluorine.manager.png create mode 100644 data/icons/com.fluorine.manager.desktop create mode 100644 data/icons/com.fluorine.manager.metainfo.xml create mode 100644 data/icons/com.fluorine.manager.png (limited to 'data') diff --git a/data/com.fluorine.manager.desktop b/data/com.fluorine.manager.desktop deleted file mode 100644 index ff62c76..0000000 --- a/data/com.fluorine.manager.desktop +++ /dev/null @@ -1,22 +0,0 @@ -[Desktop Entry] -Type=Application -Name=Fluorine Manager -GenericName=Mod Manager -Comment=Mod Organizer 2 for Linux - manage your game mods -Exec=fluorine-manager -Icon=com.fluorine.manager -Terminal=false -Categories=Game;Utility; -Keywords=mod;organizer;modding;skyrim;fallout; -MimeType=x-scheme-handler/nxm; -Actions=create-portable;list-instances; - -[Desktop Action create-portable] -Name=Create Portable Instance -Exec=fluorine-manager create-portable -Icon=com.fluorine.manager - -[Desktop Action list-instances] -Name=List Instances -Exec=fluorine-manager list-instances -Icon=com.fluorine.manager diff --git a/data/com.fluorine.manager.metainfo.xml b/data/com.fluorine.manager.metainfo.xml deleted file mode 100644 index 814607f..0000000 --- a/data/com.fluorine.manager.metainfo.xml +++ /dev/null @@ -1,37 +0,0 @@ - - - com.fluorine.manager - Fluorine Manager - Mod Organizer 2 for Linux - CC0-1.0 - GPL-3.0-or-later - - -

- Fluorine Manager is a Linux port of Mod Organizer 2, a powerful mod management - tool for Bethesda games and other titles. It uses a virtual filesystem to keep - your game directory clean while allowing complex mod setups with load order - management, conflict resolution, and profile support. -

-

Features:

-
    -
  • Virtual filesystem - mods never touch your game folder
  • -
  • Profile system for different mod configurations
  • -
  • Plugin load order management
  • -
  • Mod conflict detection and resolution
  • -
  • Nexus Mods integration for downloading
  • -
  • Proton/Wine prefix management for running Windows games
  • -
-
- - com.fluorine.manager.desktop - - https://github.com/ModOrganizer2/modorganizer - https://github.com/ModOrganizer2/modorganizer/issues - - - fluorine-manager - - - -
diff --git a/data/com.fluorine.manager.png b/data/com.fluorine.manager.png deleted file mode 100644 index 3a9fbdd..0000000 Binary files a/data/com.fluorine.manager.png and /dev/null differ diff --git a/data/icons/com.fluorine.manager.desktop b/data/icons/com.fluorine.manager.desktop new file mode 100644 index 0000000..ff62c76 --- /dev/null +++ b/data/icons/com.fluorine.manager.desktop @@ -0,0 +1,22 @@ +[Desktop Entry] +Type=Application +Name=Fluorine Manager +GenericName=Mod Manager +Comment=Mod Organizer 2 for Linux - manage your game mods +Exec=fluorine-manager +Icon=com.fluorine.manager +Terminal=false +Categories=Game;Utility; +Keywords=mod;organizer;modding;skyrim;fallout; +MimeType=x-scheme-handler/nxm; +Actions=create-portable;list-instances; + +[Desktop Action create-portable] +Name=Create Portable Instance +Exec=fluorine-manager create-portable +Icon=com.fluorine.manager + +[Desktop Action list-instances] +Name=List Instances +Exec=fluorine-manager list-instances +Icon=com.fluorine.manager diff --git a/data/icons/com.fluorine.manager.metainfo.xml b/data/icons/com.fluorine.manager.metainfo.xml new file mode 100644 index 0000000..814607f --- /dev/null +++ b/data/icons/com.fluorine.manager.metainfo.xml @@ -0,0 +1,37 @@ + + + com.fluorine.manager + Fluorine Manager + Mod Organizer 2 for Linux + CC0-1.0 + GPL-3.0-or-later + + +

+ Fluorine Manager is a Linux port of Mod Organizer 2, a powerful mod management + tool for Bethesda games and other titles. It uses a virtual filesystem to keep + your game directory clean while allowing complex mod setups with load order + management, conflict resolution, and profile support. +

+

Features:

+
    +
  • Virtual filesystem - mods never touch your game folder
  • +
  • Profile system for different mod configurations
  • +
  • Plugin load order management
  • +
  • Mod conflict detection and resolution
  • +
  • Nexus Mods integration for downloading
  • +
  • Proton/Wine prefix management for running Windows games
  • +
+
+ + com.fluorine.manager.desktop + + https://github.com/ModOrganizer2/modorganizer + https://github.com/ModOrganizer2/modorganizer/issues + + + fluorine-manager + + + +
diff --git a/data/icons/com.fluorine.manager.png b/data/icons/com.fluorine.manager.png new file mode 100644 index 0000000..3a9fbdd Binary files /dev/null and b/data/icons/com.fluorine.manager.png differ -- cgit v1.3.1