feat(tazjin/presentations): bootstrap tvix-eval-2023 presentation
I spent way too much time fighting LaTeX to do roughly what I want here again, but all the alternatives are even worse. Change-Id: Ibe12a4ce175ceb73e9d6e276613dcd4827dd76c4 Reviewed-on: https://cl.tvl.fyi/c/depot/+/9150 Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: Mark Shevchenko <markshevchenko@gmail.com> Tested-by: BuildkiteCI
This commit is contained in:
parent
88c3e2b4a0
commit
eb0b33db72
6 changed files with 288 additions and 0 deletions
54
users/tazjin/presentations/tvix-eval-2023/default.nix
Normal file
54
users/tazjin/presentations/tvix-eval-2023/default.nix
Normal file
|
@ -0,0 +1,54 @@
|
|||
{ depot, pkgs, ... }:
|
||||
|
||||
let
|
||||
inherit (pkgs) fontconfig texlive stdenv imagemagick;
|
||||
|
||||
tex = texlive.combine {
|
||||
inherit (texlive)
|
||||
babel
|
||||
babel-russian
|
||||
beamer
|
||||
beamertheme-metropolis
|
||||
etoolbox
|
||||
euenc
|
||||
extsizes
|
||||
fontspec
|
||||
listings
|
||||
xetex
|
||||
minted
|
||||
ms
|
||||
pgfopts
|
||||
scheme-basic
|
||||
translator;
|
||||
};
|
||||
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = "progmsk-tvix-eval";
|
||||
src = ./.;
|
||||
|
||||
nativeBuildInputs = [ tex imagemagick fontconfig ];
|
||||
|
||||
FONTCONFIG_FILE = pkgs.makeFontsConf {
|
||||
fontDirectories = with pkgs; [ jetbrains-mono fira fira-code fira-mono ];
|
||||
};
|
||||
|
||||
buildPhase = ''
|
||||
# LaTeX needs a cache folder in /home/ ...
|
||||
mkdir home
|
||||
export HOME=$PWD/home
|
||||
|
||||
# webp images can't be included directly, need to convert to PNG
|
||||
convert ${depot.tvix.website}/tvix-logo.webp tvix-logo.png
|
||||
|
||||
# As usual, TeX needs to be run twice ...
|
||||
${tex}/bin/xelatex presentation.tex
|
||||
${tex}/bin/xelatex presentation.tex
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
cp presentation.pdf $out/
|
||||
cp $src/presentation.pdfpc $out/
|
||||
'';
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue