diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 6cb590d3a614..14f2417297a4 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -25297,6 +25297,13 @@ githubId = 35622998; name = "Suwon Park"; }; + sepointon = { + email = "sampointon@gmail.com"; + github = "sepointon"; + githubId = 209542026; + matrix = "sampointon:matrix.org"; + name = "Sam Pointon"; + }; seppeljordan = { email = "sebastian.jordan.mail@googlemail.com"; github = "seppeljordan"; diff --git a/pkgs/by-name/wa/wasm-component-ld/package.nix b/pkgs/by-name/wa/wasm-component-ld/package.nix new file mode 100644 index 000000000000..ccc96dd71141 --- /dev/null +++ b/pkgs/by-name/wa/wasm-component-ld/package.nix @@ -0,0 +1,40 @@ +{ + lib, + fetchFromGitHub, + rustPlatform, +}: + +rustPlatform.buildRustPackage (finalAttrs: { + pname = "wasm-component-ld"; + version = "0.5.25"; + + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "bytecodealliance"; + repo = "wasm-component-ld"; + tag = "v${finalAttrs.version}"; + hash = "sha256-EQqNm3GRuMafbrOyzsdZ5e1pX4LH40wCyKVgSgm8A48="; + }; + + cargoHash = "sha256-1e54TLWGjfNORwr6uLIe/XhdDDOkbalw/6/0UGuBiPk="; + + # Tests require a rustc that can target wasm32-wasip1, including std. This is awkward for + # Nixpkgs to provide at the same time as providing a rustc that's targetting the actual target. + # TODO: work around by patching the test suite to invoke pkgsBuildTarget.rustc rather than just looking in PATH for any old rustc + doCheck = false; + + meta = { + description = "Command line linker for creating WebAssembly components"; + homepage = "https://github.com/bytecodealliance/wasm-component-ld"; + license = with lib.licenses; [ + asl20 + llvm-exception + mit + ]; + maintainers = with lib.maintainers; [ + sepointon + ]; + mainProgram = "wasm-component-ld"; + }; +})