diff options
Diffstat (limited to 'pkgs/tools/graphics/fgallery/default.nix')
-rw-r--r-- | pkgs/tools/graphics/fgallery/default.nix | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/pkgs/tools/graphics/fgallery/default.nix b/pkgs/tools/graphics/fgallery/default.nix new file mode 100644 index 000000000000..4b0531aa1ced --- /dev/null +++ b/pkgs/tools/graphics/fgallery/default.nix @@ -0,0 +1,48 @@ +{ stdenv, fetchurl, unzip, makeWrapper, perl, ImageExifTool, JSON +, coreutils, zip, imagemagick, pngcrush, lcms2, fbida +}: + +# TODO: add optional dependencies (snippet from fgallery source): +# +# if(system("jpegoptim -V >/dev/null 2>&1")) { +# $jpegoptim = 0; +# } +# if($facedet && system("facedetect -h >/dev/null 2>&1")) { +# fatal("cannot run \"facedetect\" (see http://www.thregr.org/~wavexx/hacks/facedetect/)"); + +stdenv.mkDerivation rec { + name = "fgallery-1.7"; + + src = fetchurl { + url = "http://www.thregr.org/~wavexx/software/fgallery/releases/${name}.zip"; + sha256 = "1iix6p8viwnsq3zn9vg99sx20nmgk2p5als3j1lk914nz3anvai4"; + }; + + buildInputs = [ unzip makeWrapper perl ImageExifTool JSON ]; + + installPhase = '' + mkdir -p "$out/bin" + mkdir -p "$out/share/fgallery" + + cp -r * "$out/share/fgallery" + ln -s -r "$out/share/fgallery/fgallery" "$out/bin/fgallery" + + # Don't preserve file attributes when copying files to output directories. + # (fgallery copies parts of itself to each output directory, and without + # this change the read-only nix store causes some bumps in the workflow.) + sed -i -e "s|'cp'|'cp', '--no-preserve=all'|g" "$out/share/fgallery/fgallery" + + wrapProgram "$out/share/fgallery/fgallery" \ + --set PERL5LIB "$PERL5LIB" \ + --set PATH "${stdenv.lib.makeSearchPath "bin" + [ coreutils zip imagemagick pngcrush lcms2 fbida ]}" + ''; + + meta = with stdenv.lib; { + description = "Static photo gallery generator"; + homepage = http://www.thregr.org/~wavexx/software/fgallery/; + license = licenses.gpl2; + platforms = platforms.all; + maintainers = [ maintainers.bjornfor ]; + }; +} |