nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
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}