blob: 2ea78a2357e6f101c6a45b5bf8d43d360ca6bb19 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
{ pkgs ? import <nixpkgs> { } }:
with pkgs;
let
isabelle2021_1 = stdenv.mkDerivation {
pname = "isabelle-unpatched";
version = "2021-1";
src = fetchzip {
url = "https://isabelle.in.tum.de/dist/Isabelle2021-1_linux.tar.gz";
sha256 = "sha256-kJsFPcdlcV8SMWYoqUVJ0sPm7bTAhRDFJ8nddz0Pyik=";
};
phases = [ "buildPhase" ];
buildPhase = ''
mkdir -p $out
cp -r $src/* $out
'';
};
isabelle2022 = stdenv.mkDerivation {
pname = "isabelle-unpatched";
version = "2022";
src = fetchzip {
url = "https://isabelle.in.tum.de/dist/Isabelle2022_linux.tar.gz";
sha256 = "sha256-qwcCRAa8fuGMXbI8og+kbZ0HCel1YKb34EJsc7GUz3s=";
};
phases = [ "buildPhase" ];
buildPhase = ''
mkdir -p $out
cp -r $src/* $out
'';
};
mkEnv = name: isabelle: buildFHSUserEnv {
inherit name;
targetPkgs = pkgs: with pkgs; [
dbus expat file fontconfig freetype gdb glib
gmp
nspr nss udev xorg.libX11
xorg.libXScrnSaver xorg.libXcomposite xorg.libXcursor xorg.libXdamage
xorg.libXext xorg.libXfixes xorg.libXi xorg.libXrandr xorg.libXrender
xorg.libXtst xorg.libxcb xorg.xcbutilkeysyms zlib
# for the dotnet component (icu is optional; without it set DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1)
openssl icu
];
runScript = isabelle;
};
in {
isabelle2021_1 = mkEnv "isabelle" "${isabelle2021_1}/bin/isabelle";
isabelle2022 = mkEnv "isabelle" "${isabelle2022}/bin/isabelle";
inherit mkEnv;
}
|