diff --git a/pkgs/development/tools/rust/typeshare/default.nix b/pkgs/development/tools/rust/typeshare/default.nix new file mode 100644 index 000000000000..2dc405b85134 --- /dev/null +++ b/pkgs/development/tools/rust/typeshare/default.nix @@ -0,0 +1,27 @@ +{ lib, rustPlatform, fetchCrate }: + +rustPlatform.buildRustPackage rec { + pname = "typeshare"; + version = "1.0.0"; + + src = fetchCrate { + inherit version; + pname = "typeshare-cli"; + sha256 = "sha256-KDmE5f9B2lNVbjdF8d81NTJIwpvPhsoLMA8w7iYIIl8="; + }; + + cargoSha256 = "sha256-b983tSue9WHkPrcIhp5QSjwj+lESURUYueebjXUWMJY="; + + buildFeatures = [ "go" ]; + + postInstall = '' + ln -s $out/bin/typeshare{-cli,} + ''; + + meta = with lib; { + description = "Command Line Tool for generating language files with typeshare"; + homepage = "https://github.com/1password/typeshare"; + license = with licenses; [ asl20 /* or */ mit ]; + maintainers = with maintainers; [ figsoda ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0a09e5f6322f..7c1fa43aa483 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -15254,6 +15254,7 @@ with pkgs; openssl = openssl_1_1; }; rusty-man = callPackage ../development/tools/rust/rusty-man { }; + typeshare = callPackage ../development/tools/rust/typeshare { }; sagittarius-scheme = callPackage ../development/compilers/sagittarius-scheme {};