From d9d3438997436fa3ce8a9fa06a47efba6bd1b4eb Mon Sep 17 00:00:00 2001 From: Julian Mutter Date: Sun, 14 Jan 2024 12:20:25 +0100 Subject: [PATCH] Improve nix development shell --- flake.nix | 40 ++++++++++++++++++++++++++-------------- 1 file changed, 26 insertions(+), 14 deletions(-) diff --git a/flake.nix b/flake.nix index e30fc42..86e9cd8 100644 --- a/flake.nix +++ b/flake.nix @@ -10,20 +10,32 @@ let pkgs = import nixpkgs { inherit system; }; naersk-lib = pkgs.callPackage naersk { }; - in - { - defaultPackage = naersk-lib.buildPackage - { - src = ./.; - nativeBuildInputs = with pkgs; [ - gtk4 - cairo - glib - pkg-config - poppler - wrapGAppsHook - ]; - }; + # Needed at compile time (on build system) + nativeBuildInputs = with pkgs; [ + gtk4 + cairo + glib + pkg-config + poppler + wrapGAppsHook + ]; + # Needed at runtime (on run system) + buildInputs = with pkgs; [ ]; + in rec { + defaultPackage = naersk-lib.buildPackage { + src = ./.; + inherit buildInputs; + inherit nativeBuildInputs; + }; + devShell = with pkgs; + mkShell { + buildInputs = + [ cargo rustc rustfmt pre-commit rustPackages.clippy ]; + # Without inheriting nativeBuildinputs, cargo build will fail but that is good since we want to use only nix build + # inherit nativeBuildInputs; + + RUST_SRC_PATH = rustPlatform.rustLibSrc; + }; }); }