@@ -1,64 +1,75 @@
1−{ lib, stdenv
1+{ lib
2+, stdenv
23, fetchurl
3−, pkg-config
44, gettext
5+, ghostscript
56, guile
6−, guile-reader
77, guile-lib
8−, ploticus
8+, guile-reader
99, imagemagick
10−, ghostscript
11−, transfig
12−, enableEmacs ? false, emacs ? null
13−, enableLout ? true, lout ? null
14−, enableTex ? true, tex ? null
1510, makeWrapper
11+, pkg-config
12+, ploticus
13+, transfig
14+, enableEmacs ? false, emacs
15+, enableLout ? true, lout
16+, enableTex ? true, tex
1617}:
1718
1819let
20+ inherit (lib) optional;
21+in stdenv.mkDerivation rec{
1922 pname = "skribilo";
2023 version = "0.9.5";
21− inherit (lib) optional;
22−in stdenv.mkDerivation {
23− inherit pname version;
2424
2525 src = fetchurl {
2626 url = "http://download.savannah.nongnu.org/releases/skribilo/${pname}-${version}.tar.gz";
2727 sha256 = "sha256-AIJqIcRjT7C0EO6J60gGjERdgAglh0ZU49U9XKPwvwk=";
2828 };
2929
30− nativeBuildInputs = [ pkg-config makeWrapper ];
31−
32− buildInputs = [ gettext guile ploticus imagemagick ghostscript transfig ]
30+ nativeBuildInputs = [
31+ pkg-config
32+ makeWrapper
33+ ];
34+ buildInputs = [
35+ gettext
36+ ghostscript
37+ guile
38+ guile-lib
39+ guile-reader
40+ imagemagick
41+ ploticus
42+ transfig
43+ ]
3344 ++ optional enableEmacs emacs
3445 ++ optional enableLout lout
3546 ++ optional enableTex tex;
3647
37− propagatedBuildInputs = [ guile-reader guile-lib ];
38−
39− postInstall = ''
40− wrapProgram $out/bin/skribilo \
41− --prefix GUILE_LOAD_PATH : "$out/share/guile/site:${guile-lib}/share/guile/site:${guile-reader}/share/guile/site" \
42− --prefix GUILE_LOAD_COMPILED_PATH : "$out/share/guile/site:${guile-lib}/share/guile/site:${guile-reader}/share/guile/site"
43− '';
48+ postInstall =
49+ let
50+ guileVersion = lib.versions.majorMinor guile.version;
51+ in
52+ ''
53+ wrapProgram $out/bin/skribilo \
54+ --prefix GUILE_LOAD_PATH : "$out/share/guile/site/${guileVersion}:$GUILE_LOAD_PATH" \
55+ --prefix GUILE_LOAD_COMPILED_PATH : "$out/lib/guile/${guileVersion}/site-ccache:$GUILE_LOAD_COMPILED_PATH"
56+ '';
4457
45− meta = with lib;{
58+ meta = with lib; {
59+ homepage = "https://www.nongnu.org/skribilo/";
4660 description = "The Ultimate Document Programming Framework";
4761 longDescription = ''
48− Skribilo is a free document production tool that takes a
49− structured document representation as its input and renders that
50− document in a variety of output formats: HTML and Info for
51− on-line browsing, and Lout and LaTeX for high-quality hard
52− copies.
62+ Skribilo is a free document production tool that takes a structured
63+ document representation as its input and renders that document in a
64+ variety of output formats: HTML and Info for on-line browsing, and Lout
65+ and LaTeX for high-quality hard copies.
5366
5467 The input document can use Skribilo's markup language to provide
55− information about the document's structure, which is similar to
56− HTML or LaTeX and does not require expertise. Alternatively, it
57− can use a simpler, "markup-less" format that borrows from Emacs'
58− outline mode and from other conventions used in emails, Usenet
59− and text.
68+ information about the document's structure, which is similar to HTML or
69+ LaTeX and does not require expertise. Alternatively, it can use a simpler,
70+ "markup-less" format that borrows from Emacs' outline mode and from other
71+ conventions used in emails, Usenet and text.
6072 '';
61− homepage = "https://www.nongnu.org/skribilo/";
6273 license = licenses.gpl3Plus;
6374 maintainers = with maintainers; [ AndersonTorres ];
6475 platforms = platforms.unix;