Skip to content
Snippets Groups Projects
Commit 25e3b302 authored by Millian Poquet's avatar Millian Poquet
Browse files

pipe use example

parent 355bdc0f
No related branches found
No related tags found
No related merge requests found
Showing
with 65252 additions and 0 deletions
fig/*.pdf
Reproduce
=========
1. Open shell with all dependencies (ninja, inkscape, latex suite): `nix-shell -A slides`
2. Generate the slides: `ninja`
rule svg_to_pdf
command = inkscape -o $out $in
rule tex_to_pdf
command = pdflatex -interaction=nonstopmode $in
build slides.pdf slides.aux slides.log slides.nav slides.out slides.snm slides.toc: tex_to_pdf slides.tex | fig/00-parent-begin.pdf fig/01-parent-pipe.pdf fig/02-parent-fork.pdf fig/03-parent-fork-focus-pipe.pdf fig/04-parent-switch.pdf fig/05-parent-close.pdf fig/06-parent-close-done.pdf fig/07-parent-read-blocked.pdf fig/08-child-switch.pdf fig/09-child-close.pdf fig/10-child-close-done.pdf fig/11-child-dup2.pdf fig/12-child-dup2-done.pdf fig/13-child-dup2-done2.pdf fig/14-child-exec.pdf fig/15-child-exec-done.pdf fig/16-parent-read-loop.pdf fig/17-child-exit.pdf fig/18-child-exit-done.pdf fig/19-parent-close.pdf fig/20-parent-close-done.pdf
build fig/00-parent-begin.pdf: svg_to_pdf fig/00-parent-begin.svg
build fig/01-parent-pipe.pdf: svg_to_pdf fig/01-parent-pipe.svg
build fig/02-parent-fork.pdf: svg_to_pdf fig/02-parent-fork.svg
build fig/03-parent-fork-focus-pipe.pdf: svg_to_pdf fig/03-parent-fork-focus-pipe.svg
build fig/04-parent-switch.pdf: svg_to_pdf fig/04-parent-switch.svg
build fig/05-parent-close.pdf: svg_to_pdf fig/05-parent-close.svg
build fig/06-parent-close-done.pdf: svg_to_pdf fig/06-parent-close-done.svg
build fig/07-parent-read-blocked.pdf: svg_to_pdf fig/07-parent-read-blocked.svg
build fig/08-child-switch.pdf: svg_to_pdf fig/08-child-switch.svg
build fig/09-child-close.pdf: svg_to_pdf fig/09-child-close.svg
build fig/10-child-close-done.pdf: svg_to_pdf fig/10-child-close-done.svg
build fig/11-child-dup2.pdf: svg_to_pdf fig/11-child-dup2.svg
build fig/12-child-dup2-done.pdf: svg_to_pdf fig/12-child-dup2-done.svg
build fig/13-child-dup2-done2.pdf: svg_to_pdf fig/13-child-dup2-done2.svg
build fig/14-child-exec.pdf: svg_to_pdf fig/14-child-exec.svg
build fig/15-child-exec-done.pdf: svg_to_pdf fig/15-child-exec-done.svg
build fig/16-parent-read-loop.pdf: svg_to_pdf fig/16-parent-read-loop.svg
build fig/17-child-exit.pdf: svg_to_pdf fig/17-child-exit.svg
build fig/18-child-exit-done.pdf: svg_to_pdf fig/18-child-exit-done.svg
build fig/19-parent-close.pdf: svg_to_pdf fig/19-parent-close.svg
build fig/20-parent-close-done.pdf: svg_to_pdf fig/20-parent-close-done.svg
{ pkgs ? import (fetchTarball {
url = "https://github.com/NixOS/nixpkgs/archive/22.05.tar.gz";
sha256 = "0d643wp3l77hv2pmg2fi7vyxn4rwy0iyr8djcw1h5x72315ck9ik";
}) {}
}:
let
self = rec {
slides = pkgs.stdenv.mkDerivation rec {
name = "report";
nativeBuildInputs = with pkgs; [
texlive.combined.scheme-full
ninja
inkscape
];
src = pkgs.lib.sourceByRegex ./. [
".*\.tex"
"build\.ninja"
"fig"
"fig/.*\.svg"
];
installPhase = ''
mkdir -p $out
mv slides.pdf $out/
'';
};
};
in
self
Source diff could not be displayed: it is too large. Options to address this: view the blob.
Source diff could not be displayed: it is too large. Options to address this: view the blob.
Source diff could not be displayed: it is too large. Options to address this: view the blob.
Source diff could not be displayed: it is too large. Options to address this: view the blob.
Source diff could not be displayed: it is too large. Options to address this: view the blob.
Source diff could not be displayed: it is too large. Options to address this: view the blob.
Source diff could not be displayed: it is too large. Options to address this: view the blob.
Source diff could not be displayed: it is too large. Options to address this: view the blob.
Source diff could not be displayed: it is too large. Options to address this: view the blob.
Source diff could not be displayed: it is too large. Options to address this: view the blob.
Source diff could not be displayed: it is too large. Options to address this: view the blob.
Source diff could not be displayed: it is too large. Options to address this: view the blob.
Source diff could not be displayed: it is too large. Options to address this: view the blob.
Source diff could not be displayed: it is too large. Options to address this: view the blob.
Source diff could not be displayed: it is too large. Options to address this: view the blob.
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment