From c725c91df17f3c131082865d21922e808a8816d3 Mon Sep 17 00:00:00 2001 From: XYenon Date: Mon, 24 Nov 2025 19:55:41 +0800 Subject: [PATCH] fix(nix): shell env (#3363) --- flake.lock | 12 ++++++------ flake.nix | 7 +++++-- nix/shell.nix | 24 ++++++++++++------------ nix/yazi.nix | 2 ++ 4 files changed, 25 insertions(+), 20 deletions(-) diff --git a/flake.lock b/flake.lock index a69f3da9..509429d9 100644 --- a/flake.lock +++ b/flake.lock @@ -20,11 +20,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1762286042, - "narHash": "sha256-OD5HsZ+sN7VvNucbrjiCz7CHF5zf9gP51YVJvPwYIH8=", + "lastModified": 1763806073, + "narHash": "sha256-FHsEKDvfWpzdADWj99z7vBk4D716Ujdyveo5+A048aI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "12c1f0253aa9a54fdf8ec8aecaafada64a111e24", + "rev": "878e468e02bfabeda08c79250f7ad583037f2227", "type": "github" }, "original": { @@ -48,11 +48,11 @@ ] }, "locked": { - "lastModified": 1762396738, - "narHash": "sha256-BarSecuxtzp1boERdABLkkoxQTi6s/V33lJwUbWLrLY=", + "lastModified": 1763952169, + "narHash": "sha256-+PeDBD8P+NKauH+w7eO/QWCIp8Cx4mCfWnh9sJmy9CM=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "c63598992afd54d215d54f2b764adc0484c2b159", + "rev": "ab726555a9a72e6dc80649809147823a813fa95b", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 07fb4afb..7c10f7c7 100644 --- a/flake.nix +++ b/flake.nix @@ -52,10 +52,13 @@ }; devShells = { - default = pkgs.callPackage ./nix/shell.nix { }; + default = pkgs.callPackage ./nix/shell.nix { + inherit toolchain; + inherit (self.packages.${system}) yazi yazi-unwrapped; + }; }; - formatter = pkgs.nixfmt-rfc-style; + formatter = pkgs.nixfmt-tree; } ) // { diff --git a/nix/shell.nix b/nix/shell.nix index f39538dc..3207d8e3 100644 --- a/nix/shell.nix +++ b/nix/shell.nix @@ -1,14 +1,14 @@ { - callPackage, - rust-bin, + mkShell, + yazi, + toolchain, nodePackages, + yazi-unwrapped, }: -let - mainPkg = callPackage ./yazi.nix { }; -in -mainPkg.overrideAttrs (oa: { - nativeBuildInputs = [ - (rust-bin.nightly.latest.default.override { + +mkShell { + packages = yazi.passthru.runtimePaths ++ [ + (toolchain.override { extensions = [ "rust-src" "rustfmt" @@ -16,10 +16,10 @@ mainPkg.overrideAttrs (oa: { "clippy" ]; }) - nodePackages.cspell - ] - ++ (oa.nativeBuildInputs or [ ]); + ]; + + inputsFrom = [ yazi-unwrapped ]; env.RUST_BACKTRACE = "1"; -}) +} diff --git a/nix/yazi.nix b/nix/yazi.nix index 1eacd22c..5bac0fc7 100644 --- a/nix/yazi.nix +++ b/nix/yazi.nix @@ -96,6 +96,8 @@ runCommand yazi-unwrapped.name inherit (yazi-unwrapped) pname version meta; nativeBuildInputs = [ makeWrapper ]; + + passthru.runtimePaths = runtimePaths; } '' mkdir -p $out/bin