aboutsummaryrefslogtreecommitdiff
path: root/nix
diff options
context:
space:
mode:
authorSulfurNitride <SulfurNitride@users.noreply.github.com>2026-03-12 09:43:19 -0500
committerSulfurNitride <SulfurNitride@users.noreply.github.com>2026-03-12 09:43:19 -0500
commitebf97687fa206816495e99529ea81348cb87aa87 (patch)
tree017c106afc3bcf5b72891a0ed041a39e4b0a5069 /nix
parent55c95dbd7316d25852e0a36322924fa673af9074 (diff)
Add NixOS mobase build to CI for Python plugin compatibility
NixOS users can't load our Ubuntu-compiled mobase.so due to ABI differences. Add a parallel CI job that builds mobase.so in a Nix environment so NixOS users can download and drop it into plugins/libs/. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Diffstat (limited to 'nix')
-rw-r--r--nix/mobase-shell.nix49
1 files changed, 49 insertions, 0 deletions
diff --git a/nix/mobase-shell.nix b/nix/mobase-shell.nix
new file mode 100644
index 0000000..19c8d34
--- /dev/null
+++ b/nix/mobase-shell.nix
@@ -0,0 +1,49 @@
+{ pkgs ? import <nixpkgs> {} }:
+
+pkgs.mkShell {
+ nativeBuildInputs = with pkgs; [
+ cmake
+ ninja
+ pkg-config
+ git
+ ];
+
+ buildInputs = with pkgs; [
+ # Qt 6
+ qt6.qtbase
+ qt6.wrapQtAppsHook
+ qt6.qtwebengine
+ qt6.qtwebsockets
+ qt6.qtsvg
+ qt6.qtwayland
+
+ # Python + pybind11
+ python313
+ python313Packages.pybind11
+ python313Packages.sip
+ python313Packages.pyqt6
+
+ # Libraries
+ boost
+ sqlite
+ tinyxml2
+ fontconfig
+ spdlog
+ fuse3
+ libcap
+ lz4
+ zlib
+ zstd
+ bzip2
+ xz
+ openssl
+ curl
+ tomlplusplus
+ fmt
+ ];
+
+ shellHook = ''
+ export PYTHONPATH="${pkgs.python313Packages.pybind11}/${pkgs.python313.sitePackages}:$PYTHONPATH"
+ export CMAKE_PREFIX_PATH="${pkgs.qt6.qtbase}:${pkgs.qt6.qtwebengine}:${pkgs.qt6.qtwebsockets}:${pkgs.qt6.qtsvg}:$CMAKE_PREFIX_PATH"
+ '';
+}