-
GUILLOTEAU Quentin authoredGUILLOTEAU Quentin authored
flake.nix 2.54 KiB
{
description = "A very basic flake";
inputs.nixpkgs.url = "github:nixos/nixpkgs/22.05";
outputs = { self, nixpkgs }:
let
system = "x86_64-linux";
pkgs = import nixpkgs { inherit system; };
version = "v0.0";
flakeImage = pkgs.dockerTools.pullImage {
imageName = "nixpkgs/nix-flakes";
imageDigest =
"sha256:653ac11d23bbe5b9693f156cafeb97c7e8000b187d1bafec3798f6c92238fde2";
sha256 = "15543hvgw2g8aadkx335pprrxq3ldcv93a9qq9c4am0rbkw8prrw";
finalImageName = "nixpkgs/nix-flakes";
finalImageTag = "nixos-21.11";
};
in
rec {
packages.${system} = rec {
mdbook-admonish = pkgs.callPackage ./pages/mdbook-admonish.nix { };
doc = pkgs.stdenv.mkDerivation {
name = "pages_tuto";
src = ./pages;
nativeBuildInputs = with pkgs; [ mdbook mdbook-mermaid mdbook-admonish ]; # mdbook-linkcheck pour checker la validiter des liens
buildCommand = ''
mkdir $out
cp -r --no-preserve=mode $src/* .
mdbook build -d $out
'';
};
tuto-doc-docker = pkgs.dockerTools.buildImageWithNixDb {
name = "registry.gitlab.inria.fr/control-for-computing/tutorial/doc";
tag = version;
fromImage = flakeImage;
contents = with pkgs; [ mdbook mdbook-mermaid mdbook-admonish ]; # mdbook-linkcheck pour checker la validiter des liens
};
slides = pkgs.stdenv.mkDerivation {
name = "slides-tuto";
src = ./slides;
buildInputs = with pkgs; [
texlive.combined.scheme-full
pandoc
rubber
];
buildPhase = ''
pandoc --from=markdown --to=beamer --slide-level=1 --template=template.tex --output=main.tex main.md
rubber -d main.tex
'';
installPhase = ''
mkdir -p $out
cp main.pdf $out/slides.pdf
'';
};
slides-docker = pkgs.dockerTools.buildImageWithNixDb {
name = "registry.gitlab.inria.fr/control-for-computing/tutorial/slides";
tag = version;
fromImage = flakeImage;
contents = with pkgs; [
texlive.combined.scheme-full
pandoc
rubber
];
};