This repository has been archived on 2022-03-27. You can view files and clone it, but cannot push or open issues/pull-requests.
presis/flake.nix

86 lines
2.0 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

{
inputs = {
#nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
# At the time of writing, netlify-clis build is failing on unstable.
nixpkgs.url = "github:sbruder/nixpkgs/fix-netlify-cli";
flake-utils.url = "github:numtide/flake-utils";
revealjs.url = "github:hakimel/reveal.js/4.1.0";
revealjs.flake = false;
};
outputs = { self, flake-utils, nixpkgs, revealjs }: flake-utils.lib.eachDefaultSystem (system:
let
pkgs = nixpkgs.legacyPackages.${system};
in
rec {
packages.sbruder.presis =
let
python = (pkgs.python38.withPackages (ps: with ps; [
CommonMark
jinja2
pyyaml
]));
texlive = pkgs.texlive.combine {
inherit (pkgs.texlive)
scheme-medium
appendixnumberbeamer
beamertheme-focus
beamertheme-metropolis
biber
biblatex
csquotes
datetime
datetime2
datetime2-english
datetime2-german
enumitem
fmtcount
multirow
pgfopts;
};
in
pkgs.stdenv.mkDerivation {
name = "sbruder-presis";
nativeBuildInputs = [
python
texlive
];
src = self;
FONTCONFIG_FILE = pkgs.makeFontsConf {
fontDirectories = with pkgs; [
fira
iosevka
];
};
enableParallelBuilding = true;
configurePhase = ''
ln -sfT ${revealjs} revealjs/_assets/reveal.js
'';
installPhase = ''
cp -r . $out;
'';
dontFixup = true;
};
defaultPackage = packages.sbruder.presis;
devShell = pkgs.mkShell {
buildInputs = packages.sbruder.presis.nativeBuildInputs ++ (with pkgs; [
bash
netlify-cli
]);
shellHook = packages.sbruder.presis.configurePhase;
};
});
}