btrbk: add mainProgram
[NixPkgs.git] / pkgs / by-name / lo / lout / package.nix
blobd675aceb933fcfa93eda80a2c025729585cdec38
1 {lib, stdenv, fetchFromGitHub, ghostscript}:
3 stdenv.mkDerivation rec {
4   pname = "lout";
5   version = "3.43";
7   src = fetchFromGitHub {
8     owner = "william8000";
9     repo = pname;
10     rev = version;
11     hash = "sha256-YUFrlM7BnDlG1rUV90yBvWG6lOKW5qKxs/xdq6I/kI0=";
12   };
14   buildInputs = [ ghostscript ];
16   makeFlags = [ "PREFIX=$(out)/" "CC=${stdenv.cc.targetPrefix}cc" ];
18   meta = {
19     description = "Document layout system similar in style to LaTeX";
21     longDescription = ''
22       The Lout document formatting system is now reads a high-level
23       description of a document similar in style to LaTeX and produces
24       a PostScript or plain text output file.
26       Lout offers an unprecedented range of advanced features,
27       including optimal paragraph and page breaking, automatic
28       hyphenation, PostScript EPS file inclusion and generation,
29       equation formatting, tables, diagrams, rotation and scaling,
30       sorted indexes, bibliographic databases, running headers and
31       odd-even pages, automatic cross referencing, multilingual
32       documents including hyphenation (most European languages are
33       supported), formatting of computer programs, and much more, all
34       ready to use.  Furthermore, Lout is easily extended with
35       definitions which are very much easier to write than troff of
36       TeX macros because Lout is a high-level, purely functional
37       language, the outcome of an eight-year research project that
38       went back to the beginning.
39     '';
41     homepage = "https://github.com/william8000/lout";
43     license = lib.licenses.gpl3Plus;
45     platforms = lib.platforms.all;
46     maintainers = [ ];
47   };