Skip to content
Snippets Groups Projects
Verified Commit 429d4d33 authored by Nádudvari Ákos's avatar Nádudvari Ákos
Browse files

feat: document metadata section

parent 37ae24ae
Branches
No related tags found
No related merge requests found
......@@ -7,6 +7,10 @@ in
options = {
perSystem = mkPerSystemOption ({ config, self', inputs', pkgs, system, ... }: {
options = {
document.variables = mkOption {
type = types.attrsOf types.str;
default = { };
};
document.source = mkOption {
type = types.path;
};
......@@ -34,18 +38,30 @@ in
config =
let
texvars = toString (lib.mapAttrsToList (k: v: ''\def\${k}{${v}}'') config.document.variables);
mainFile = config.document.mainFile;
buildCommand = /* sh */ ''
buildCommand = lib.getExe (pkgs.writeShellScriptBin "build-document" ''
BUILDDATE="$(TZ='Europe/Budapest' LC_TIME='hu_HU.UTF-8' date +'%Y. %b. %d. %T')"
BUILDCOMMIT="$(git rev-parse --short HEAD || echo '${ if (self' ? rev) then self'.rev else "<ismeretlen>"}')"
VARS="\\def\\builddate{$BUILDDATE} \\def\\buildcommit{$BUILDCOMMIT}"
latexmk -interaction=nonstopmode -pdf -lualatex \
-outdir="./build" -synctex=1 \
"${mainFile}.tex"
'';
-pretex="\relax${texvars} $VARS" \
-usepretex "${mainFile}.tex"
'');
locales = pkgs.glibcLocales.override {
locales = [
"en_US.UTF-8/UTF8"
"hu_HU.UTF-8/UTF8"
];
};
in
{
packages.document = pkgs.stdenvNoCC.mkDerivation {
name = "latex-document";
src = config.document.source;
buildInputs = [ pkgs.coreutils config.document.texlive config.document.font ];
buildInputs = [ pkgs.coreutils config.document.texlive config.document.font locales ];
phases = [ "unpackPhase" "buildPhase" "installPhase" ];
buildPhase = ''
set -o errexit
......@@ -59,17 +75,10 @@ in
}
trap cleanup EXIT
build () {
env TEXMFHOME="$TEMP/.cache" \
TEXMFVAR="$TEMP/.cache/texf-var" \
OSFONTDIR=${config.document.font}/share/fonts \
${buildCommand}
}
echo "[BUILD] First run"
build
echo "[BUILD] Second run"
build
'';
installPhase = ''
mkdir -p $out
......
\chapter{Melléklet}
\chapter{Dolgozat metaadatai}
Ide kerülnek azok a dolgok, amik segítik a dolgozat megértését, de 1) nem a te munkád, 2) nem feltétlenül szükséges a megértéshez, vagy 3) simán csak érdekességek. Na, meg ha rengeteg képed van ugyanarról a dologról, és nem szeretnéd ezzel teletömni a szakdogád, akkor ide is nyugodtan berakhatod őket.
\ No newline at end of file
\begin{center}
\begin{tabular}{r l}
Jelen dokumentum generálásának dátuma & \builddate \\
Git revízió rövidített lenyomata & \href{https://dev.itk.ppke.hu/nadudvari.akos/szakdolgozat/-/commit/\buildcommit}{\buildcommit\ \ExternalLink}
\end{tabular}
\end{center}
A dolgozat mindenkori legújabb változata \href{https://dev.itk.ppke.hu/api/v4/projects/1348/jobs/artifacts/main/raw/szakdolgozat.pdf?job=build-document}{itt\ \ExternalLink} érhető el.
\section{A dolgozat írásához használt eszközök és technológiák}
Ebben a mellékelt fejezetben csupán az érdekesség kedvéért ismertetem a dolgozat írásához felhasznált technológiákat.
Itt azok számára adom ajánlásomat, akik szeretnének hasonló dokumentumokat előállítani és publikálni, illetve belátást nyerhetnek az általam használt környezetre.
% \chapter{Melléklet}
% Ide kerülnek azok a dolgok, amik segítik a dolgozat megértését, de 1) nem a te munkád, 2) nem feltétlenül szükséges a megértéshez, vagy 3) simán csak érdekességek. Na, meg ha rengeteg képed van ugyanarról a dologról, és nem szeretnéd ezzel teletömni a szakdogád, akkor ide is nyugodtan berakhatod őket.
......@@ -135,6 +135,31 @@
% Ez meg egy másik felesleges warning-ot némít el (https://tex.stackexchange.com/a/451193)
\usepackage{silence}
\WarningFilter{biblatex}{File 'english-ieee.lbx'}
\usepackage{tikz}
% forrás: https://tex.stackexchange.com/a/294990
\newcommand{\ExternalLink}{%
\tikz[x=1.2ex, y=1.2ex, baseline=-0.05ex]{%
\begin{scope}[x=1ex, y=1ex]
\clip (-0.1,-0.1)
--++ (-0, 1.2)
--++ (0.6, 0)
--++ (0, -0.6)
--++ (0.6, 0)
--++ (0, -1);
\path[draw,
line width = 0.5,
rounded corners=0.5]
(0,0) rectangle (1,1);
\end{scope}
\path[draw, line width = 0.5] (0.5, 0.5)
-- (1, 1);
\path[draw, line width = 0.5] (0.6, 1)
-- (1, 1) -- (1, 0.6);
}
}
% -------------------------------------------------------
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment