Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at flake-libs 83 lines 2.1 kB view raw
1{ 2 lib, 3 idris2Packages, 4 fetchFromGitHub, 5 clang, 6 chez, 7 gmp, 8 zsh, 9 makeBinaryWrapper, 10 stdenv, 11}: 12let 13 inherit (idris2Packages) idris2Api buildIdris; 14 toml = buildIdris { 15 ipkgName = "toml"; 16 version = "2022-05-05"; 17 src = fetchFromGitHub { 18 owner = "cuddlefishie"; 19 repo = "toml-idr"; 20 rev = "b4f5a4bd874fa32f20d02311a62a1910dc48123f"; 21 hash = "sha256-+bqfCE6m0aJ+S65urT+zQLuZUtUkC1qcuSsefML/fAE="; 22 }; 23 idrisLibraries = [ ]; 24 }; 25 filepath = buildIdris { 26 ipkgName = "filepath"; 27 version = "2023-12-04"; 28 src = fetchFromGitHub { 29 owner = "stefan-hoeck"; 30 repo = "idris2-filepath"; 31 rev = "eac02d51b631633f32330c788bcebeb24221fa09"; 32 hash = "sha256-noylxQvT2h50H0xmAiwe/cI6vz5gkbOhSD7mXuhJGfU="; 33 }; 34 idrisLibraries = [ ]; 35 }; 36 packPkg = buildIdris { 37 ipkgName = "pack"; 38 version = "2024-02-07"; 39 src = fetchFromGitHub { 40 owner = "stefan-hoeck"; 41 repo = "idris2-pack"; 42 rev = "305123401a28a57b02f750c589c35af628b2a5eb"; 43 hash = "sha256-IPAkwe6fEYWT3mpyKKkUPU0qFJX9gGIM1f7OeNWyB9w="; 44 }; 45 idrisLibraries = [ 46 idris2Api 47 toml 48 filepath 49 ]; 50 51 nativeBuildInputs = [ makeBinaryWrapper ]; 52 53 buildInputs = [ 54 gmp 55 clang 56 chez 57 ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ zsh ]; 58 59 postInstall = '' 60 wrapProgram $out/bin/pack \ 61 --suffix C_INCLUDE_PATH : ${lib.makeIncludePath [ gmp ]} \ 62 --suffix PATH : ${ 63 lib.makeBinPath ( 64 [ 65 clang 66 chez 67 ] 68 ++ lib.optionals stdenv.hostPlatform.isDarwin [ zsh ] 69 ) 70 } 71 ''; 72 73 meta = { 74 description = "An Idris2 Package Manager with Curated Package Collections"; 75 mainProgram = "pack"; 76 homepage = "https://github.com/stefan-hoeck/idris2-pack"; 77 license = lib.licenses.bsd3; 78 maintainers = with lib.maintainers; [ mattpolzin ]; 79 inherit (idris2Packages.idris2.meta) platforms; 80 }; 81 }; 82in 83packPkg.executable