fvwm: add readline, fix man build, refactor fetch

The fvwm.1 man page was missing for the standard build of fvwm. While
digging, I also noticed that readline was not included (which, when
included, makes FvwmConsole much more pleasant to use). Based on those
two items, the following changes are in this commit.

- Add libxslt for xsltproc tool, used in building documentation

- Explicitly direct creation of man pages (prior to this change, the
fvwm.1 man page was not built)

- Explicitly direct HTML documentation not to be built

- Add readline for use in FvwmConsole

While changing things in this package anyway, I made the following
adjustments.

- Use fetchFromGitHub instead of fetchUrl

- Reformat with nixfmt

+26 -16
+26 -16
pkgs/applications/window-managers/fvwm/default.nix
··· 1 - { gestures ? false 2 - , lib, stdenv, fetchurl, pkg-config 3 - , cairo, fontconfig, freetype, libXft, libXcursor, libXinerama 4 - , libXpm, libXt, librsvg, libpng, fribidi, perl 5 - , libstroke ? null 6 - }: 7 - 8 - assert gestures -> libstroke != null; 1 + { autoreconfHook, enableGestures ? false, lib, stdenv, fetchFromGitHub 2 + , pkg-config, cairo, fontconfig, freetype, libXft, libXcursor, libXinerama 3 + , libXpm, libXt, librsvg, libpng, fribidi, perl, libstroke, readline, libxslt }: 9 4 10 5 stdenv.mkDerivation rec { 11 6 pname = "fvwm"; 12 7 version = "2.6.9"; 13 8 14 - src = fetchurl { 15 - url = "https://github.com/fvwmorg/fvwm/releases/download/${version}/${pname}-${version}.tar.gz"; 16 - sha256 = "1bliqcnap7vb3m2rn8wvxyfhbf35h9x34s41fl4301yhrkrlrihv"; 9 + src = fetchFromGitHub { 10 + owner = "fvwmorg"; 11 + repo = pname; 12 + rev = version; 13 + sha256 = "14jwckhikc9n4h93m00pzjs7xm2j0dcsyzv3q5vbcnknp6p4w5dh"; 17 14 }; 18 15 19 - nativeBuildInputs = [ pkg-config ]; 16 + nativeBuildInputs = [ autoreconfHook pkg-config ]; 20 17 buildInputs = [ 21 - cairo fontconfig freetype 22 - libXft libXcursor libXinerama libXpm libXt 23 - librsvg libpng fribidi perl 24 - ] ++ lib.optional gestures libstroke; 18 + cairo 19 + fontconfig 20 + freetype 21 + libXft 22 + libXcursor 23 + libXinerama 24 + libXpm 25 + libXt 26 + librsvg 27 + libpng 28 + fribidi 29 + perl 30 + readline 31 + libxslt 32 + ] ++ lib.optional enableGestures libstroke; 33 + 34 + configureFlags = [ "--enable-mandoc" "--disable-htmldoc" ]; 25 35 26 36 meta = { 27 37 homepage = "http://fvwm.org";