Make the nix flake and shell use rust nightly toolkit since it's used in the code

This commit is contained in:
Carlos de Paula 2025-10-20 17:46:56 -03:00
parent 46569a1f48
commit 265129d419
2 changed files with 23 additions and 48 deletions

View file

@ -8,22 +8,14 @@
}; };
}; };
outputs = outputs = { self, nixpkgs, rust-overlay, flake-utils, ... }:
{ flake-utils.lib.eachDefaultSystem (system:
self,
nixpkgs,
rust-overlay,
flake-utils,
...
}:
flake-utils.lib.eachDefaultSystem (
system:
let let
pkgs = import nixpkgs { pkgs = import nixpkgs {
inherit system; inherit system;
overlays = [ rust-overlay.overlays.default ]; overlays = [ rust-overlay.overlays.default ];
}; };
toolchain = pkgs.rust-bin.stable.latest.default; toolchain = pkgs.rust-bin.nightly.latest.default;
rustPlatform = pkgs.makeRustPlatform { rustPlatform = pkgs.makeRustPlatform {
cargo = toolchain; cargo = toolchain;
rustc = toolchain; rustc = toolchain;
@ -31,35 +23,29 @@
rev = self.shortRev or self.dirtyShortRev or "dirty"; rev = self.shortRev or self.dirtyShortRev or "dirty";
date = self.lastModifiedDate or self.lastModified or "19700101"; date = self.lastModifiedDate or self.lastModified or "19700101";
version = version = (builtins.fromTOML
(builtins.fromTOML (builtins.readFile ./yazi-fm/Cargo.toml)).package.version (builtins.readFile ./yazi-fm/Cargo.toml)).package.version
+ "pre${builtins.substring 0 8 date}_${rev}"; + "pre${builtins.substring 0 8 date}_${rev}";
in in {
{
packages = { packages = {
yazi-unwrapped = pkgs.callPackage ./nix/yazi-unwrapped.nix { yazi-unwrapped = pkgs.callPackage ./nix/yazi-unwrapped.nix {
inherit inherit version rev date rustPlatform;
version };
rev yazi = pkgs.callPackage ./nix/yazi.nix {
date inherit (self.packages.${system}) yazi-unwrapped;
rustPlatform
;
}; };
yazi = pkgs.callPackage ./nix/yazi.nix { inherit (self.packages.${system}) yazi-unwrapped; };
default = self.packages.${system}.yazi; default = self.packages.${system}.yazi;
}; };
devShells = { devShells = { default = pkgs.callPackage ./nix/shell.nix { }; };
default = pkgs.callPackage ./nix/shell.nix { };
};
formatter = pkgs.nixfmt-rfc-style; formatter = pkgs.nixfmt-rfc-style;
} }) // {
)
// {
overlays = { overlays = {
default = self.overlays.yazi; default = self.overlays.yazi;
yazi = _: prev: { inherit (self.packages.${prev.stdenv.system}) yazi yazi-unwrapped; }; yazi = _: prev: {
inherit (self.packages.${prev.stdenv.system}) yazi yazi-unwrapped;
};
}; };
}; };
} }

View file

@ -1,20 +1,9 @@
{ { callPackage, rust-bin, nodePackages, }:
callPackage, let mainPkg = callPackage ./yazi.nix { };
rust-bin, in mainPkg.overrideAttrs (oa: {
nodePackages,
}:
let
mainPkg = callPackage ./yazi.nix { };
in
mainPkg.overrideAttrs (oa: {
nativeBuildInputs = [ nativeBuildInputs = [
(rust-bin.stable.latest.default.override { (rust-bin.nightly.latest.default.override {
extensions = [ extensions = [ "rust-src" "rustfmt" "rust-analyzer" "clippy" ];
"rust-src"
"rustfmt"
"rust-analyzer"
"clippy"
];
}) })
nodePackages.cspell nodePackages.cspell