nixpkgs/pkgs/tools/graphics/fgallery/default.nix
Profpatsch 4a7f99d55d treewide: with stdenv.lib; in meta -> with lib;
Part of: https://github.com/NixOS/nixpkgs/issues/108938

meta = with stdenv.lib;

is a widely used pattern. We want to slowly remove
the `stdenv.lib` indirection and encourage people
to use `lib` directly. Thus let’s start with the meta
field.

This used a rewriting script to mostly automatically
replace all occurances of this pattern, and add the
`lib` argument to the package header if it doesn’t
exist yet.

The script in its current form is available at
https://cs.tvl.fyi/depot@2f807d7f141068d2d60676a89213eaa5353ca6e0/-/blob/users/Profpatsch/nixpkgs-rewriter/default.nix
2021-01-11 10:38:22 +01:00

47 lines
1.5 KiB
Nix

{ lib, stdenv, fetchurl, unzip, makeWrapper, perlPackages
, coreutils, zip, imagemagick, pngcrush, lcms2
, facedetect, fbida }:
# TODO: add optional dependencies (snippet from fgallery source):
#
# if(system("jpegoptim -V >/dev/null 2>&1")) {
# $jpegoptim = 0;
# }
stdenv.mkDerivation rec {
name = "fgallery-1.8.2";
src = fetchurl {
url = "https://www.thregr.org/~wavexx/software/fgallery/releases/${name}.zip";
sha256 = "18wlvqbxcng8pawimbc8f2422s8fnk840hfr6946lzsxr0ijakvf";
};
buildInputs = [ unzip makeWrapper ] ++ (with perlPackages; [ perl ImageExifTool CpanelJSONXS ]);
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.makeBinPath
[ coreutils zip imagemagick pngcrush lcms2 facedetect fbida ]}"
'';
meta = with lib; {
description = "Static photo gallery generator";
homepage = "http://www.thregr.org/~wavexx/software/fgallery/";
license = licenses.gpl2;
platforms = platforms.all;
maintainers = [ maintainers.bjornfor ];
};
}