diff --git a/pkgs/by-name/ai/aiken/package.nix b/pkgs/by-name/ai/aiken/package.nix new file mode 100644 index 000000000000..3ebdb3706b55 --- /dev/null +++ b/pkgs/by-name/ai/aiken/package.nix @@ -0,0 +1,44 @@ +{ + lib, + openssl, + pkg-config, + rustPlatform, + fetchFromGitHub, + darwin, + stdenv, +}: + +rustPlatform.buildRustPackage rec { + pname = "aiken"; + version = "1.0.29-alpha"; # all releases are 'alpha' + + src = fetchFromGitHub { + owner = "aiken-lang"; + repo = "aiken"; + rev = "v${version}"; + hash = "sha256-fikXypc9HKil4Ut4jdgQtTTy/CHEogEpDprwdTgd9b4="; + }; + + cargoHash = "sha256-UWDPXnq2k/PoogrfuW93ieRW8AfuNIEfri9Jo6gHkdg="; + + buildInputs = + [ openssl ] + ++ lib.optionals stdenv.isDarwin ( + with darwin.apple_sdk.frameworks; + [ + Security + CoreServices + SystemConfiguration + ] + ); + + nativeBuildInputs = [ pkg-config ]; + + meta = { + description = "Modern smart contract platform for Cardano"; + homepage = "https://aiken-lang.org"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ t4ccer ]; + mainProgram = "aiken"; + }; +}