23 lines
662 B
Nix
23 lines
662 B
Nix
{ pkgs ? import <nixpkgs> { system = "x86_64-linux"; } }:
|
|
let
|
|
build-article = pkgs.writeShellApplication {
|
|
name = "build-article";
|
|
runtimeInputs = with pkgs; [ which texliveFull emacs git ];
|
|
text = builtins.readFile ./build/build-article.sh;
|
|
};
|
|
|
|
articles = pkgs.stdenv.mkDerivation {
|
|
name = "articles";
|
|
src = builtins.filterSource
|
|
(path: type: !(pkgs.lib.strings.hasPrefix "result" (baseNameOf path)))
|
|
./.;
|
|
buildInputs = with pkgs; [ emacs git build-article ];
|
|
|
|
buildPhase = ''
|
|
cp -a . $out
|
|
cd $out
|
|
find . -name '*.org' -exec build-article {} \;
|
|
'';
|
|
};
|
|
in { inherit build-article articles; }
|