about summary refs log tree commit diff
path: root/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'default.nix')
-rw-r--r--default.nix47
1 files changed, 47 insertions, 0 deletions
diff --git a/default.nix b/default.nix
new file mode 100644
index 000000000000..c4ac8a472a78
--- /dev/null
+++ b/default.nix
@@ -0,0 +1,47 @@
+# This derivation builds the LaTeX presentation.
+
+{ pkgs ? import <nixpkgs> {} }:
+
+with pkgs; let tex = texlive.combine {
+  inherit (texlive)
+    beamer
+    beamertheme-metropolis
+    etoolbox
+    euenc
+    extsizes
+    fontspec
+    lualibs
+    luaotfload
+    luatex
+    luatex-def
+    minted
+    ms
+    pgfopts
+    scheme-basic;
+};
+in stdenv.mkDerivation {
+  name = "nuug-reproducible-slides.pdf";
+  src = ./.;
+
+  FONTCONFIG_FILE = makeFontsConf {
+    fontDirectories = [ fira fira-code fira-mono ];
+  };
+
+  buildInputs = [ tex fira fira-code fira-mono ];
+  buildPhase = ''
+    # LaTeX needs a cache folder in /home/ ...
+    mkdir home
+    export HOME=$PWD/home
+    # ${tex}/bin/luaotfload-tool -ufv
+
+    # As usual, TeX needs to be run twice ...
+    function run() {
+      ${tex}/bin/lualatex presentation.tex
+    }
+    run && run
+  '';
+
+  installPhase = ''
+    cp presentation.pdf $out
+  '';
+}