Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -27,3 +27,6 @@ CodexMonitor.zip
.codex-worktrees/
.codexmonitor/
public/assets/material-icons/

# Nix
result
19 changes: 17 additions & 2 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,13 @@
packageJson = builtins.fromJSON (builtins.readFile ./package.json);

linuxPackages = pkgs.lib.optionals pkgs.stdenv.isLinux [
pkgs.alsa-lib
pkgs.glib-networking
pkgs.gtk3
pkgs.libxkbcommon
pkgs.libayatana-appindicator
pkgs.librsvg
pkgs.libsoup_3
pkgs.libxkbcommon
pkgs.webkitgtk_4_1
];

Expand All @@ -25,7 +28,7 @@
version = packageJson.version;
src = ./.;
nodejs = pkgs.nodejs_20;
npmDepsHash = "sha256-TT9Po/VVzuObcqAkv4HoRSo41IMvouorlPnPTabxcTA=";
npmDepsHash = "sha256-GWBewwZD6Q3wstZCvVYToiRHRPvrVQcPBJGJPvook6o=";
npmBuildScript = "build";
installPhase = ''
mkdir -p $out
Expand Down Expand Up @@ -56,6 +59,9 @@
pkgs.cargo-tauri
pkgs.cmake
pkgs.pkg-config
] ++ pkgs.lib.optionals pkgs.stdenv.isLinux [
pkgs.llvmPackages.libclang
pkgs.wrapGAppsHook3
];

buildInputs = [
Expand All @@ -64,6 +70,9 @@

TAURI_CONFIG = tauriConfig;

LIBCLANG_PATH = pkgs.lib.optionalString pkgs.stdenv.isLinux
"${pkgs.llvmPackages.libclang.lib}/lib";

preBuild = ''
mkdir -p dist
cp -R ${frontend}/dist/. dist
Expand Down Expand Up @@ -95,10 +104,16 @@
pkgs.rustc
pkgs.rustfmt
pkgs.rustPlatform.rustLibSrc
] ++ pkgs.lib.optionals pkgs.stdenv.isLinux [
pkgs.llvmPackages.libclang
] ++ linuxPackages;

shellHook = ''
export RUST_SRC_PATH=${pkgs.rustPlatform.rustLibSrc}
'' + pkgs.lib.optionalString pkgs.stdenv.isLinux ''
export LIBCLANG_PATH="${pkgs.llvmPackages.libclang.lib}/lib"
export LD_LIBRARY_PATH="${pkgs.lib.makeLibraryPath linuxPackages}:$LD_LIBRARY_PATH"
export GIO_MODULE_PATH="${pkgs.glib-networking}/lib/gio/modules"
'';
};

Expand Down