Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 97 lines 1.9 kB view raw
1{ 2 lib, 3 buildFHSEnv, 4 fetchFromGitHub, 5 ocl-icd, 6 openssl, 7 re2, 8 libevent, 9 git, 10 zlib, 11 expat, 12 scons, 13 stdenv, 14 extraPkgs ? [ ], 15}: 16let 17 pname = "fah-client"; 18 version = "8.4.9"; 19 20 cbangSrc = fetchFromGitHub { 21 owner = "cauldrondevelopmentllc"; 22 repo = "cbang"; 23 rev = "bastet-v${version}"; 24 sha256 = "sha256-xApE5m8YyIFRJLQYeboWelWukuuIjHNZxPDyq0RzSL4="; 25 }; 26 27 fah-client = stdenv.mkDerivation { 28 inherit pname version; 29 30 src = fetchFromGitHub { 31 owner = "FoldingAtHome"; 32 repo = "fah-client-bastet"; 33 rev = "v${version}"; 34 sha256 = "sha256-PewXhmkTru2yJhMkenbn7pcmVsa7eomjrMvs1PUGph8="; 35 }; 36 37 nativeBuildInputs = [ 38 scons 39 re2 40 libevent 41 git 42 ]; 43 44 buildInputs = [ openssl ]; 45 46 postUnpack = '' 47 export CBANG_HOME=$NIX_BUILD_TOP/cbang 48 49 cp -r --no-preserve=mode ${cbangSrc} $CBANG_HOME 50 ''; 51 52 preBuild = '' 53 scons -C $CBANG_HOME 54 ''; 55 56 installPhase = '' 57 runHook preInstall 58 59 mkdir -p $out/{bin,share/applications} 60 61 cp fah-client $out/bin/fah-client 62 63 cp install/lin/fah-client.desktop.in $out/share/applications/fah-client.desktop 64 sed \ 65 -e "s|Icon=.*|Icon=$out/share/feh-client/images/fahlogo.png|g" \ 66 -e "s|%(PACKAGE_URL)s|https://github.com/FoldingAtHome/fah-client-bastet|g" \ 67 -i $out/share/applications/fah-client.desktop 68 69 runHook postInstall 70 ''; 71 72 }; 73in 74buildFHSEnv { 75 inherit pname version; 76 77 targetPkgs = 78 _: 79 [ 80 fah-client 81 ocl-icd 82 zlib 83 expat 84 ] 85 ++ extraPkgs; 86 87 runScript = "/bin/fah-client"; 88 89 meta = { 90 description = "Folding@home client"; 91 homepage = "https://foldingathome.org/"; 92 license = lib.licenses.gpl3; 93 mainProgram = "fah-client"; 94 maintainers = [ lib.maintainers.zimbatm ]; 95 platforms = [ "x86_64-linux" ]; 96 }; 97}