chore(merge): remote-tracking branch 'origin/main'

This commit is contained in:
Edward Langley
2026-04-03 13:42:07 -07:00

View File

@ -22,50 +22,36 @@
pkgs = import nixpkgs {inherit system overlays;}; pkgs = import nixpkgs {inherit system overlays;};
isLinux = pkgs.lib.hasInfix "linux" system; isLinux = pkgs.lib.hasInfix "linux" system;
rustToolchain = pkgs.rust-bin.stable.latest.default.override {
extensions = ["rust-src" "clippy" "rustfmt"];
targets = pkgs.lib.optionals isLinux ["x86_64-unknown-linux-musl"];
};
buildPkgs = buildPkgs =
if isLinux if isLinux
then pkgs.pkgsMusl then pkgs.pkgsMusl
else pkgs; else pkgs;
rustToolchain = pkgs.rust-bin.stable.latest.default.override {
extensions = ["rust-src" "clippy" "rustfmt"];
targets = pkgs.lib.optionals isLinux ["x86_64-unknown-linux-musl"];
};
generatedCargoNix = crate2nix.tools.${system}.generatedCargoNix { generatedCargoNix = crate2nix.tools.${system}.generatedCargoNix {
name = "improvise"; name = "improvise";
src = ./.; src = ./.;
}; };
musliTarget = "x86_64-unknown-linux-musl";
cargoNix = import generatedCargoNix { cargoNix = import generatedCargoNix {
inherit pkgs; pkgs = pkgs;
buildRustCrateForPkgs = pkgs:
buildPkgs.buildRustCrate.override {
rustc = rustToolchain;
cargo = rustToolchain;
};
}; };
in { in {
devShells.default = pkgs.mkShell ({ devShells.default = pkgs.mkShell {
nativeBuildInputs = nativeBuildInputs = [
[ rustToolchain
rustToolchain pkgs.pkg-config
pkgs.pkg-config pkgs.rust-analyzer
pkgs.rust-analyzer crate2nix.packages.${system}.default
crate2nix.packages.${system}.default ];
] RUST_BACKTRACE = "1";
++ pkgs.lib.optionals isLinux [ };
pkgs.gcc
pkgs.pkgsMusl.stdenv.cc
];
RUST_BACKTRACE = "1";
}
// pkgs.lib.optionalAttrs isLinux {
CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER = "${pkgs.gcc}/bin/gcc";
CARGO_TARGET_X86_64_UNKNOWN_LINUX_MUSL_LINKER = "${pkgs.pkgsMusl.stdenv.cc}/bin/cc";
CARGO_BUILD_TARGET = "x86_64-unknown-linux-musl";
});
packages.default = cargoNix.rootCrate.build; packages.default = cargoNix.rootCrate.build;
}); });