nixpkgs/pkgs/tools/typesetting/lout/default.nix
Thomas Gerbet 95c17b8e72 lout: 3.40 -> 3.42.2
https://github.com/william8000/lout/blob/3.42.2/whatsnew#L621

It seems that lout is now maintained on GitHub:
https://lists.nongnu.org/archive/html/lout-users/2021-04/msg00001.html

The recent changes made to the repository seems to be reasonable:
https://github.com/william8000/lout/commits/3.42.2

Comparing the content of svn://svn.savannah.nongnu.org/lout/tags/3.39
with the `3.39` tag in the GitHub repo shows no significant differences.
2023-01-30 09:06:23 +01:00

49 lines
1.6 KiB
Nix

{lib, stdenv, fetchFromGitHub, ghostscript}:
stdenv.mkDerivation rec {
pname = "lout";
version = "3.42.2";
src = fetchFromGitHub {
owner = "william8000";
repo = pname;
rev = version;
hash = "sha256-rzCRxmwppBno6o4RM2GjE0pe/5yvyzyo375XdfX04As=";
};
buildInputs = [ ghostscript ];
makeFlags = [ "PREFIX=$(out)/" "CC=${stdenv.cc.targetPrefix}cc" ];
meta = {
description = "Document layout system similar in style to LaTeX";
longDescription = ''
The Lout document formatting system is now reads a high-level
description of a document similar in style to LaTeX and produces
a PostScript or plain text output file.
Lout offers an unprecedented range of advanced features,
including optimal paragraph and page breaking, automatic
hyphenation, PostScript EPS file inclusion and generation,
equation formatting, tables, diagrams, rotation and scaling,
sorted indexes, bibliographic databases, running headers and
odd-even pages, automatic cross referencing, multilingual
documents including hyphenation (most European languages are
supported), formatting of computer programs, and much more, all
ready to use. Furthermore, Lout is easily extended with
definitions which are very much easier to write than troff of
TeX macros because Lout is a high-level, purely functional
language, the outcome of an eight-year research project that
went back to the beginning.
'';
homepage = "https://github.com/william8000/lout";
license = lib.licenses.gpl3Plus;
platforms = lib.platforms.all;
maintainers = [ ];
};
}