nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at 22.05 39 lines 1.2 kB view raw
1{ lib, stdenv, fetchFromGitHub, zip, unzip, firefox, bash }: 2 3stdenv.mkDerivation rec { 4 pname = "slimerjs"; 5 version = "1.0.0"; 6 7 src = fetchFromGitHub { 8 owner = "laurentj"; 9 repo = "slimerjs"; 10 sha256 = "sha256-RHd9PqcSkO9FYi5x+09TN7c4fKGf5pCPXjoCUXZ2mvA="; 11 rev = version; 12 }; 13 14 buildInputs = [ zip ]; 15 nativeBuildInputs = [ unzip ]; 16 17 preConfigure = '' 18 test -d src && cd src 19 test -f omni.ja || zip omni.ja -r */ 20 ''; 21 22 installPhase = '' 23 mkdir -p "$out"/{bin,share/doc/slimerjs,lib/slimerjs} 24 cp LICENSE README* "$out/share/doc/slimerjs" 25 cp -r * "$out/lib/slimerjs" 26 echo '#!${bash}/bin/bash' >> "$out/bin/slimerjs" 27 echo 'export SLIMERJSLAUNCHER=${firefox}/bin/firefox' >> "$out/bin/slimerjs" 28 echo "'$out/lib/slimerjs/slimerjs' \"\$@\"" >> "$out/bin/slimerjs" 29 chmod a+x "$out/bin/slimerjs" 30 sed -e 's@MaxVersion=[3456][0-9][.]@MaxVersion=99.@' -i "$out/lib/slimerjs/application.ini" 31 ''; 32 33 meta = with lib; { 34 description = "Gecko-based programmatically-driven browser"; 35 license = licenses.mpl20; 36 maintainers = with maintainers; [ raskin ]; 37 platforms = platforms.linux; 38 }; 39}