Assignment 7 #4

Merged
saschato merged 75 commits from Assignment-7 into master 2024-07-08 11:19:51 +02:00
Showing only changes of commit cd43a6744a - Show all commits

View file

@ -16,7 +16,7 @@
"aarch64-linux" "aarch64-linux"
] (system: function { ] (system: function {
inherit system; inherit system;
pkgs = nixpkgs.legacyPackages.${system}; pkgs = import nixpkgs { inherit system; overlays = [ self.overlay ]; };
}); });
forAllAssignments = function: forAllAssignments = function:
@ -28,34 +28,32 @@
lastModifiedDate = self.lastModifiedDate or self.lastModified or "19700101"; lastModifiedDate = self.lastModifiedDate or self.lastModified or "19700101";
version = builtins.substring 0 8 lastModifiedDate; version = builtins.substring 0 8 lastModifiedDate;
nixpkgsFor = system: import nixpkgs { inherit system; overlays = [ self.overlay ]; };
in rec { in rec {
packages = forAllSystems({system, pkgs}: forAllAssignments(assignment: let packages =
tex = texPackages pkgs; forAllSystems({system, pkgs}: forAllAssignments(assignment: let
document = pkgs.stdenvNoCC.mkDerivation rec { tex = texPackages pkgs;
name = assignment; document = pkgs.stdenvNoCC.mkDerivation rec {
src = self; name = assignment;
buildInputs = [ pkgs.coreutils tex ]; src = self;
phases = [ "unpackPhase" "buildPhase" "installPhase" ]; buildInputs = [ pkgs.coreutils tex ];
buildPhase = '' phases = [ "unpackPhase" "buildPhase" "installPhase" ];
export PATH="${pkgs.lib.makeBinPath buildInputs}"; buildPhase = ''
mkdir -p .cache/texmf-var export PATH="${pkgs.lib.makeBinPath buildInputs}";
cd "./${assignment}" mkdir -p .cache/texmf-var
env TEXMFHOME=.cache TEXMFVAR=.cache/texmf-var \ cd "./${assignment}"
latexmk -interaction=nonstopmode -pdf -lualatex \ env TEXMFHOME=.cache TEXMFVAR=.cache/texmf-var \
"./abgabe.tex" latexmk -interaction=nonstopmode -pdf -lualatex \
''; "./abgabe.tex"
installPhase = '' '';
mkdir -p $out installPhase = ''
cp *.pdf $out/ mkdir -p $out
''; cp *.pdf $out/
}; '';
in document) // { };
default = packages.${system}.${pkgs.lib.last assignments}; in document) // {
}) // { default = packages.${system}.${pkgs.lib.last assignments};
"x86_64-linux"."Assignment 7" = (nixpkgsFor "x86_64-linux").signatureProxy; "Assignment 7" = pkgs.signatureProxy;
}; });
devShells = forAllSystems({pkgs, ...}: let devShells = forAllSystems({pkgs, ...}: let
tex = texPackages pkgs; tex = texPackages pkgs;
@ -98,7 +96,6 @@
}; };
}; };
hydraJobs = packages;
}; };
} }