1{
2 lib,
3 stdenv,
4 fetchurl,
5 perl,
6 bsd-finger,
7 withAbook ? true,
8 abook,
9 withGnupg ? true,
10 gnupg,
11 withGoobook ? true,
12 goobook,
13 withKhard ? true,
14 khard,
15 withMu ? true,
16 mu,
17}:
18
19let
20 perl' = perl.withPackages (
21 p: with p; [
22 AuthenSASL
23 ConvertASN1
24 IOSocketSSL
25 perlldap
26 ]
27 );
28in
29stdenv.mkDerivation rec {
30 pname = "lbdb";
31 version = "0.56";
32
33 src = fetchurl {
34 url = "https://www.spinnaker.de/lbdb/download/lbdb-${version}.tar.gz";
35 sha256 = "sha256-uqaiO2E5TXkreyIeGWHZulcQYUyTJOj1mzXBJsK0504=";
36 };
37
38 buildInputs = [
39 perl'
40 ]
41 ++ lib.optional (!stdenv.hostPlatform.isDarwin) bsd-finger
42 ++ lib.optional withAbook abook
43 ++ lib.optional withGnupg gnupg
44 ++ lib.optional withGoobook goobook
45 ++ lib.optional withKhard khard
46 ++ lib.optional withMu mu;
47
48 configureFlags =
49 [ ]
50 ++ lib.optional withAbook "--with-abook"
51 ++ lib.optional withGnupg "--with-gpg"
52 ++ lib.optional withGoobook "--with-goobook"
53 ++ lib.optional withKhard "--with-khard"
54 ++ lib.optional withMu "--with-mu";
55
56 patches = [
57 ./add-methods-to-rc.patch
58 ];
59
60 meta = with lib; {
61 homepage = "https://www.spinnaker.de/lbdb/";
62 description = "Little Brother's Database";
63 license = licenses.gpl2Plus;
64 maintainers = with maintainers; [
65 kaiha
66 bfortz
67 ];
68 platforms = platforms.all;
69 };
70}