aboutsummaryrefslogtreecommitdiff
path: root/default.nix
blob: 24c265fdf954ea33110c78a6c5f7202311ca4826 (plain) (blame)
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
54
55
56
57
58
59
60
{ pkgs ? import ./nix {} }:

let
  texlive = (pkgs.texlive.combine { inherit (pkgs.texlive) scheme-context; });
in rec {
  pdf = pkgs.stdenv.mkDerivation {
    name = "resume-pdf";
    phases = [ "buildPhase" "installPhase" ];
    buildPhase = ''
      mkdir -p build
      cp ${./resume.md} build/resume.md

      pandoc \
        build/resume.md \
        --pdf-engine=context \
        --template ${./styles}/chmduquesne.tex \
        --variable papersize=A4\
        -o build/resume.pdf
    '';

    installPhase = ''
      mkdir -p $out
      cp build/resume.pdf $out/resume.pdf
    '';

    buildInputs = [
      pkgs.pandoc
      texlive
    ];

    TEXMF="${texlive}/share/texmf";
  };

  html = pkgs.stdenv.mkDerivation {
    name = "resume-html";
    phases = [ "buildPhase" "installPhase" ];
    buildPhase = ''
      mkdir -p build
      cp ${./resume.md} build/resume.md

      pandoc \
        build/resume.md \
        --include-in-header ${./styles}/chmduquesne.css \
        --metadata pagetitle='Zoltan Szabatin - Resume' \
        -o build/resume.html
    '';

      installPhase = ''
        mkdir -p $out
        cp build/resume.html $out/resume.html
      '';

      buildInputs = [
        pkgs.pandoc
        texlive
      ];

      TEXMF="${texlive}/share/texmf";
  };
}