{ lib , stdenv , fetchurl , fetchpatch , perl , bsd-finger , withAbook ? true, abook , withGnupg ? true, gnupg , withGoobook ? true, goobook , withKhard ? true, khard , withMu ? true, mu }: let perl' = perl.withPackages (p: with p; [ AuthenSASL ConvertASN1 IOSocketSSL perlldap ]); in stdenv.mkDerivation rec { pname = "lbdb"; version = "0.48.1"; src = fetchurl { url = "https://www.spinnaker.de/lbdb/download/lbdb_${version}.tar.gz"; sha256 = "1gr5l2fr9qbdccga8bhsrpvz6jxigvfkdxrln9wyf2xpps5cdjxh"; }; buildInputs = [ perl' ] ++ lib.optional (!stdenv.isDarwin) bsd-finger ++ lib.optional withAbook abook ++ lib.optional withGnupg gnupg ++ lib.optional withGoobook goobook ++ lib.optional withKhard khard ++ lib.optional withMu mu; configureFlags = [ ] ++ lib.optional withAbook "--with-abook" ++ lib.optional withGnupg "--with-gpg" ++ lib.optional withGoobook "--with-goobook" ++ lib.optional withKhard "--with-khard" ++ lib.optional withMu "--with-mu"; patches = [ ./add-methods-to-rc.patch # fix undefined exec_prefix. Remove with the next release (fetchpatch { url = "https://github.com/RolandRosenfeld/lbdb/commit/60b7bae255011f59212d96adfbded459d6a27129.patch"; sha256 = "129zg086glmlalrg395jq8ljcp787dl3rxjf9v7apsd8mqfdkl2v"; excludes = [ "debian/changelog" ]; }) ]; meta = with lib; { homepage = "https://www.spinnaker.de/lbdb/"; description = "Little Brother's Database"; license = licenses.gpl2Plus; maintainers = with maintainers; [ kaiha bfortz ]; platforms = platforms.all; }; }