From 782af557b635e9a90c6f82dd96ffa474d47942e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christina=20S=C3=B8rensen?= Date: Wed, 27 Sep 2023 18:41:44 +0200 Subject: [PATCH] uiua: init at unstable-2023-09-28 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Christina Sørensen --- pkgs/by-name/ui/uiua/package.nix | 43 ++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 pkgs/by-name/ui/uiua/package.nix diff --git a/pkgs/by-name/ui/uiua/package.nix b/pkgs/by-name/ui/uiua/package.nix new file mode 100644 index 000000000000..12343db35960 --- /dev/null +++ b/pkgs/by-name/ui/uiua/package.nix @@ -0,0 +1,43 @@ +{ + lib, + rustPlatform, + fetchFromGitHub, + audioSupport ? true, + alsa-lib, + pkg-config +}: +rustPlatform.buildRustPackage { + pname = "uiua"; + version = "unstable-2023-09-28"; + + src = fetchFromGitHub { + owner = "uiua-lang"; + repo = "uiua"; + rev = "9b8c65332396f521f170b0ed3ce104b7a8bcf7c0"; + hash = "sha256-+pleCEEwgRj+p+k9oKIvbsGUWC49qByV/juv76ZdBcc="; + }; + + cargoHash = "sha256-L8TCMe6eHS3QRy6HuTc1WvMfzsDhKx9YYupAkNeBwpk="; + + nativeBuildInputs = lib.optional audioSupport pkg-config; + buildInputs = lib.optionals audioSupport [ alsa-lib ]; + buildFeatures = lib.optional audioSupport "audio"; + + doCheck = true; + + meta = with lib; { + description = "A stack-oriented array programming language with a focus on simplicity, beauty, and tacit code"; + longDescription = '' + Uiua combines the stack-oriented and array-oriented paradigms in a single + language. Combining these already terse paradigms results in code with a very + high information density and little syntactic noise. + ''; + homepage = "https://www.uiua.org/"; + license = licenses.mit; + mainProgram = "uiua"; + maintainers = with maintainers; [cafkafk]; + # TODO: add MacOS support, it should be possible, but I don't own a Mac to + # hack on + platforms = platforms.linux; + }; +}