Files

50 lines
1.2 KiB
Nix

{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
openssl,
versionCheckHook,
nix-update-script,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cargo-component";
version = "0.21.1";
src = fetchFromGitHub {
owner = "bytecodealliance";
repo = "cargo-component";
tag = "v${finalAttrs.version}";
hash = "sha256-Tlx14q/2k/0jZZ1nECX7zF/xNTeMCZg/fN+fhRM4uhc=";
};
cargoHash = "sha256-ZwxVhoqAzkaIgcH9GMR+IGkJ6IOQVtmt0qcDjdix6cU=";
nativeBuildInputs = [
pkg-config
];
buildInputs = [
openssl
];
# requires the wasm32-wasi target
doCheck = false;
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/v${finalAttrs.version}";
license = lib.licenses.asl20;
maintainers = [ lib.maintainers.progrm_jarvis ];
mainProgram = "cargo-component";
};
})