Build main binary with the latest stable

Signed-off-by: Marcel Müller <neikos@neikos.email>
This commit is contained in:
Marcel Müller 2025-03-04 10:36:46 +01:00
parent 22378a7c39
commit 89f5401e5d
3 changed files with 16 additions and 17 deletions

View file

@ -23,11 +23,7 @@
];
};
rustTarget = pkgs.rust-bin.nightly."2025-01-09".default.override {
extensions = [
"rustc-dev"
];
};
rustTarget = pkgs.rust-bin.stable.latest.default.override { };
craneLib = (inputs.crane.mkLib pkgs).overrideToolchain rustTarget;
lib = import ./lib {

View file

@ -20,6 +20,10 @@ let
sha256 = "sha256-Z8uuewp7Buoadayc0oTafmfvwNT36KukWKiHxL/mQfI=";
};
crane = craneLib.overrideToolchain (
pkgs.rust-bin.nightly."2025-01-09".default.override { extensions = [ "rustc-dev" ]; }
);
commonArgs = {
inherit pname version;
@ -35,23 +39,20 @@ let
cargo-dylint
];
cargoVendorDir = craneLib.vendorCargoDeps { cargoLock = ./cargo-dylint-general-Cargo.lock; };
cargoVendorDir = crane.vendorCargoDeps { cargoLock = ./cargo-dylint-general-Cargo.lock; };
preBuild = ''
cd examples/general
mkdir -p .cargo
'';
CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER = "dylint-link";
cargoExtraArgs = "-p crate_wide_allow";
cargoExtraArgs = "-p general";
RUSTUP_TOOLCHAIN = "nightly-2025-01-09";
};
in
craneLib.buildPackage (
crane.buildPackage (
commonArgs
// {
cargoArtifacts = null;
@ -59,7 +60,7 @@ craneLib.buildPackage (
doCheck = false;
postFixup = ''
${util-linux}/bin/rename .so @$RUSTUP_TOOLCHAIN.so $out/lib/*.so
mv $out/lib/libgeneral{.so,@$RUSTUP_TOOLCHAIN.so}
'';
doNotRemoveReferencesToRustToolchain = true;

View file

@ -21,12 +21,14 @@ let
}
)
) driver_names;
drivers = pkgs.runCommandLocal "dylint-drivers" { } (
lib.strings.concatMapAttrsStringSep "\n" (name: driver: ''
drivers = pkgs.runCommandLocal "dylint-drivers" { } ''
mkdir -p $out
${lib.strings.concatMapAttrsStringSep "\n" (name: driver: ''
mkdir -p $out/nightly-${name}
ln -s ${driver}/bin/dylint_driver-nix $out/nightly-${name}/dylint-driver
'') driverMap
);
'') driverMap}
'';
in
pkgs.runCommandLocal "cargo-dylint-wrapped"
{
@ -35,6 +37,6 @@ pkgs.runCommandLocal "cargo-dylint-wrapped"
}
''
makeWrapper ${cargo-dylint}/bin/cargo-dylint $out/bin/cargo-dylint \
--set DYLINT_LIBRARY_PATH ${lib.strings.makeLibraryPath (builtins.map (v: v.package) lints)} \
--set-default DYLINT_LIBRARY_PATH "${lib.strings.makeLibraryPath (builtins.map (v: v.package) lints)}" \
--set DYLINT_DRIVER_PATH ${drivers};
''