lol

Merge pull request #181319 from eigengrau/add-ballerina

authored by

Sandro and committed by
GitHub
7b06baf3 5107111c

+53
+6
maintainers/maintainer-list.nix
··· 3744 3744 githubId = 537775; 3745 3745 name = "Emery Hemingway"; 3746 3746 }; 3747 + eigengrau = { 3748 + email = "seb@schattenkopie.de"; 3749 + name = "Sebastian Reuße"; 3750 + github = "eigengrau"; 3751 + githubId = 4939947; 3752 + }; 3747 3753 eikek = { 3748 3754 email = "eike.kettner@posteo.de"; 3749 3755 github = "eikek";
+45
pkgs/development/compilers/ballerina/default.nix
··· 1 + { ballerina, lib, writeText, runCommand, makeWrapper, fetchzip, stdenv, openjdk }: 2 + let 3 + version = "2201.1.0"; 4 + codeName = "swan-lake"; 5 + in stdenv.mkDerivation { 6 + pname = "ballerina"; 7 + inherit version; 8 + 9 + src = fetchzip { 10 + url = "https://dist.ballerina.io/downloads/${version}/ballerina-${version}-${codeName}.zip"; 11 + sha256 = "sha256-WZ6CvgnES1indYeMSuC3odDqwR2J27k+D8RktvHsELs="; 12 + }; 13 + 14 + nativeBuildInputs = [ makeWrapper ]; 15 + 16 + installPhase = '' 17 + runHook preInstall 18 + cp -rv distributions/ballerina-${version} $out 19 + runHook postInstall 20 + ''; 21 + preFixup = '' 22 + wrapProgram $out/bin/bal --set JAVA_HOME ${openjdk}/lib/openjdk 23 + ''; 24 + 25 + passthru.tests.smokeTest = let 26 + helloWorld = writeText "hello-world.bal" '' 27 + import ballerina/io; 28 + public function main() { 29 + io:println("Hello, World!"); 30 + } 31 + ''; 32 + in runCommand "ballerina-${version}-smoketest" { } '' 33 + ${ballerina}/bin/bal run ${helloWorld} >$out 34 + read result <$out 35 + [[ $result = "Hello, World!" ]] 36 + ''; 37 + 38 + meta = with lib; { 39 + description = "An open-source programming language for the cloud"; 40 + license = licenses.asl20; 41 + platforms = openjdk.meta.platforms; 42 + maintainers = with maintainers; [ eigengrau ]; 43 + sourceProvenance = with sourceTypes; [ binaryBytecode ]; 44 + }; 45 + }
+2
pkgs/top-level/all-packages.nix
··· 12818 12818 12819 12819 avra = callPackage ../development/compilers/avra { }; 12820 12820 12821 + ballerina = callPackage ../development/compilers/ballerina { }; 12822 + 12821 12823 beekeeper-studio = callPackage ../development/tools/database/beekeeper-studio { }; 12822 12824 12823 12825 bigloo = callPackage ../development/compilers/bigloo { };