cargo-*: start maintaining and migrate to finalAttrs (#466878)

This commit is contained in:
Aleksana
2025-12-06 13:38:58 +00:00
committed by GitHub
10 changed files with 127 additions and 64 deletions
+9 -6
View File
@@ -4,16 +4,17 @@
fetchFromGitHub,
replaceVars,
stdenv,
nix-update-script,
}:
rustPlatform.buildRustPackage rec {
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cargo-benchcmp";
version = "0.4.5";
src = fetchFromGitHub {
owner = "BurntSushi";
repo = "cargo-benchcmp";
tag = version;
tag = finalAttrs.version;
hash = "sha256-J8KFI0V/mOhUlYtVnFAQgPIpXL9/dLhOFxSly4bR00I=";
};
@@ -31,14 +32,16 @@ rustPlatform.buildRustPackage rec {
"--skip=different_input_colored"
];
meta = with lib; {
passthru.updateScript = nix-update-script { };
meta = {
description = "Small utility to compare Rust micro-benchmarks";
mainProgram = "cargo-benchcmp";
homepage = "https://github.com/BurntSushi/cargo-benchcmp";
license = with licenses; [
license = with lib.licenses; [
mit
unlicense
];
maintainers = [ ];
maintainers = [ lib.maintainers.progrm_jarvis ];
};
}
})
+15 -7
View File
@@ -4,16 +4,18 @@
fetchFromGitHub,
pkg-config,
openssl,
versionCheckHook,
nix-update-script,
}:
rustPlatform.buildRustPackage rec {
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cargo-component";
version = "0.21.1";
src = fetchFromGitHub {
owner = "bytecodealliance";
repo = "cargo-component";
rev = "v${version}";
tag = "v${finalAttrs.version}";
hash = "sha256-Tlx14q/2k/0jZZ1nECX7zF/xNTeMCZg/fN+fhRM4uhc=";
};
@@ -30,12 +32,18 @@ rustPlatform.buildRustPackage rec {
# requires the wasm32-wasi target
doCheck = false;
meta = with lib; {
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
versionCheckProgramArg = "--version";
passthru.updateScript = nix-update-script { };
meta = {
description = "Cargo subcommand for creating WebAssembly components based on the component model proposal";
homepage = "https://github.com/bytecodealliance/cargo-component";
changelog = "https://github.com/bytecodealliance/cargo-component/releases/tag/${src.rev}";
license = licenses.asl20;
maintainers = [ ];
changelog = "https://github.com/bytecodealliance/cargo-component/releases/tag/v${finalAttrs.version}";
license = lib.licenses.asl20;
maintainers = [ lib.maintainers.progrm_jarvis ];
mainProgram = "cargo-component";
};
}
})
+10 -7
View File
@@ -2,30 +2,33 @@
lib,
rustPlatform,
fetchFromGitHub,
nix-update-script,
}:
rustPlatform.buildRustPackage rec {
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cargo-cranky";
version = "0.3.0";
src = fetchFromGitHub {
owner = "ericseppanen";
repo = "cargo-cranky";
rev = "v${version}";
tag = "v${finalAttrs.version}";
hash = "sha256-3ARl3z+2nz05UaKf8ChN6mvPY2qMjUNxGnGJ1P0xkas=";
};
cargoHash = "sha256-m9n2YyrMpuz/X/kvHgn+g4w9/Pg+n6VnnfwjaOnyPvY=";
meta = with lib; {
passthru.updateScript = nix-update-script { };
meta = {
description = "Easy to configure wrapper for Rust's clippy";
mainProgram = "cargo-cranky";
homepage = "https://github.com/ericseppanen/cargo-cranky";
changelog = "https://github.com/ericseppanen/cargo-cranky/releases/tag/${src.rev}";
license = with licenses; [
changelog = "https://github.com/ericseppanen/cargo-cranky/releases/tag/v${finalAttrs.version}";
license = with lib.licenses; [
asl20
mit
];
maintainers = [ ];
maintainers = [ lib.maintainers.progrm_jarvis ];
};
}
})
@@ -7,16 +7,18 @@
libgit2,
openssl,
zlib,
versionCheckHook,
nix-update-script,
}:
rustPlatform.buildRustPackage rec {
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cargo-local-registry";
version = "0.2.9";
src = fetchFromGitHub {
owner = "dhovart";
repo = "cargo-local-registry";
rev = "v${version}";
tag = "v${finalAttrs.version}";
hash = "sha256-DzBD7N7GQZ9nhF22DnxRse0P8MUGReOcXHQ56KOqW6I=";
};
@@ -37,15 +39,21 @@ rustPlatform.buildRustPackage rec {
# tests require internet access
doCheck = false;
meta = with lib; {
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
versionCheckProgramArg = "--version";
passthru.updateScript = nix-update-script { };
meta = {
description = "Cargo subcommand to manage local registries";
mainProgram = "cargo-local-registry";
homepage = "https://github.com/dhovart/cargo-local-registry";
changelog = "https://github.com/dhovart/cargo-local-registry/releases/tag/${src.rev}";
license = with licenses; [
changelog = "https://github.com/dhovart/cargo-local-registry/releases/tag/v${finalAttrs.version}";
license = with lib.licenses; [
asl20
mit
];
maintainers = [ ];
maintainers = [ lib.maintainers.progrm_jarvis ];
};
}
})
+10 -7
View File
@@ -2,16 +2,17 @@
lib,
rustPlatform,
fetchFromGitHub,
nix-update-script,
}:
rustPlatform.buildRustPackage rec {
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cargo-mutants";
version = "25.3.1";
src = fetchFromGitHub {
owner = "sourcefrog";
repo = "cargo-mutants";
rev = "v${version}";
tag = "v${finalAttrs.version}";
hash = "sha256-T+BMLjp74IO71u/ftNfz67FPSt1LYCgsRP65gL0wScg=";
};
@@ -20,12 +21,14 @@ rustPlatform.buildRustPackage rec {
# too many tests require internet access
doCheck = false;
meta = with lib; {
passthru.updateScript = nix-update-script { };
meta = {
description = "Mutation testing tool for Rust";
mainProgram = "cargo-mutants";
homepage = "https://github.com/sourcefrog/cargo-mutants";
changelog = "https://github.com/sourcefrog/cargo-mutants/releases/tag/${src.rev}";
license = licenses.mit;
maintainers = [ ];
changelog = "https://github.com/sourcefrog/cargo-mutants/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.progrm_jarvis ];
};
}
})
+15 -6
View File
@@ -2,16 +2,18 @@
lib,
rustPlatform,
fetchFromGitHub,
versionCheckHook,
nix-update-script,
}:
rustPlatform.buildRustPackage rec {
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cargo-play";
version = "0.5.1";
src = fetchFromGitHub {
owner = "fanzeyi";
repo = "cargo-play";
tag = version;
tag = finalAttrs.version;
sha256 = "sha256-Z5zcLQYfQeGybsnt2U+4Z+peRHxNPbDriPMKWhJ+PeA=";
};
@@ -23,11 +25,18 @@ rustPlatform.buildRustPackage rec {
"--skip=infer_override"
];
meta = with lib; {
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
versionCheckProgramArg = "--version";
passthru.updateScript = nix-update-script { };
meta = {
description = "Run your rust code without setting up cargo";
mainProgram = "cargo-play";
homepage = "https://github.com/fanzeyi/cargo-play";
license = licenses.mit;
maintainers = [ ];
changelog = "https://github.com/fanzeyi/cargo-play/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.progrm_jarvis ];
};
}
})
+8 -4
View File
@@ -8,16 +8,17 @@
stdenv,
curl,
git,
nix-update-script,
}:
rustPlatform.buildRustPackage rec {
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cargo-release";
version = "0.25.22";
src = fetchFromGitHub {
owner = "crate-ci";
repo = "cargo-release";
tag = "v${version}";
tag = "v${finalAttrs.version}";
hash = "sha256-NFI7UIHbo1xcH+pXim3ar8hvkn2EdIFpI2rpsivhVHg=";
};
@@ -42,17 +43,20 @@ rustPlatform.buildRustPackage rec {
# disable vendored-libgit2 and vendored-openssl
buildNoDefaultFeatures = true;
passthru.updateScript = nix-update-script { };
meta = {
description = ''Cargo subcommand "release": everything about releasing a rust crate'';
mainProgram = "cargo-release";
homepage = "https://github.com/crate-ci/cargo-release";
changelog = "https://github.com/crate-ci/cargo-release/blob/v${version}/CHANGELOG.md";
changelog = "https://github.com/crate-ci/cargo-release/blob/v${finalAttrs.version}/CHANGELOG.md";
license = with lib.licenses; [
asl20 # or
mit
];
maintainers = with lib.maintainers; [
gerschtli
progrm_jarvis
];
};
}
})
+16 -8
View File
@@ -5,16 +5,18 @@
pkg-config,
openssl,
zlib,
versionCheckHook,
nix-update-script,
}:
rustPlatform.buildRustPackage rec {
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cargo-shuttle";
version = "0.57.3";
src = fetchFromGitHub {
owner = "shuttle-hq";
repo = "shuttle";
rev = "v${version}";
tag = "v${finalAttrs.version}";
hash = "sha256-qPevl75wmOYVhTgMiJOi+6j8LBWKzM7HPhd5mdf2B+8=";
};
@@ -32,17 +34,23 @@ rustPlatform.buildRustPackage rec {
"cargo-shuttle"
];
cargoTestFlags = cargoBuildFlags ++ [
cargoTestFlags = finalAttrs.cargoBuildFlags ++ [
# other tests are failing for different reasons
"init::shuttle_init_tests::"
];
meta = with lib; {
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
versionCheckProgramArg = "--version";
passthru.updateScript = nix-update-script { };
meta = {
description = "Cargo command for the shuttle platform";
mainProgram = "cargo-shuttle";
homepage = "https://shuttle.rs";
changelog = "https://github.com/shuttle-hq/shuttle/releases/tag/${src.rev}";
license = licenses.asl20;
maintainers = [ ];
changelog = "https://github.com/shuttle-hq/shuttle/releases/tag/v${finalAttrs.version}";
license = lib.licenses.asl20;
maintainers = [ lib.maintainers.progrm_jarvis ];
};
}
})
+16 -7
View File
@@ -6,16 +6,18 @@
openssl,
stdenv,
curl,
versionCheckHook,
nix-update-script,
}:
rustPlatform.buildRustPackage rec {
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cargo-tarpaulin";
version = "0.34.1";
src = fetchFromGitHub {
owner = "xd009642";
repo = "tarpaulin";
tag = version;
tag = finalAttrs.version;
hash = "sha256-HJgcFQrHINm4BPfZ4c5ZHQYBTSBVYdSl/n0qBlSsNOI=";
};
@@ -33,17 +35,24 @@ rustPlatform.buildRustPackage rec {
doCheck = false;
meta = with lib; {
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
versionCheckProgramArg = "--version";
passthru.updateScript = nix-update-script { };
meta = {
description = "Code coverage tool for Rust projects";
mainProgram = "cargo-tarpaulin";
homepage = "https://github.com/xd009642/tarpaulin";
changelog = "https://github.com/xd009642/tarpaulin/blob/${src.rev}/CHANGELOG.md";
license = with licenses; [
changelog = "https://github.com/xd009642/tarpaulin/blob/${finalAttrs.version}/CHANGELOG.md";
license = with lib.licenses; [
mit # or
asl20
];
maintainers = with maintainers; [
maintainers = with lib.maintainers; [
hugoreeves
progrm_jarvis
];
};
}
})
+13 -5
View File
@@ -4,16 +4,18 @@
fetchFromGitHub,
makeWrapper,
zig,
versionCheckHook,
nix-update-script,
}:
rustPlatform.buildRustPackage rec {
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cargo-zigbuild";
version = "0.20.1";
src = fetchFromGitHub {
owner = "messense";
repo = "cargo-zigbuild";
rev = "v${version}";
tag = "v${finalAttrs.version}";
hash = "sha256-xJiYtVrvWEBsyTbcHKsbnTpbcTryX+ZP/OjD7GP6gQU=";
};
@@ -26,12 +28,18 @@ rustPlatform.buildRustPackage rec {
--prefix PATH : ${zig}/bin
'';
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
versionCheckProgramArg = "--version";
passthru.updateScript = nix-update-script { };
meta = {
description = "Tool to compile Cargo projects with zig as the linker";
mainProgram = "cargo-zigbuild";
homepage = "https://github.com/messense/cargo-zigbuild";
changelog = "https://github.com/messense/cargo-zigbuild/releases/tag/v${version}";
changelog = "https://github.com/messense/cargo-zigbuild/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = [ ];
maintainers = [ lib.maintainers.progrm_jarvis ];
};
}
})