biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / servers / mail / postgrey / default.nix
blob07b351bfb216169905e85cf921e01f15a9363118
1 { fetchurl, perlPackages, lib, runCommand, postfix }:
3 let
4     mk-perl-flags = inputs: lib.concatStringsSep " " (map (dep: "-I ${dep}/${perlPackages.perl.libPrefix}") inputs);
5     postgrey-flags = mk-perl-flags (with perlPackages; [
6       NetServer BerkeleyDB DigestSHA1 NetAddrIP IOMultiplex
7     ]);
8     policy-test-flags = mk-perl-flags (with perlPackages; [
9       ParseSyslog
10     ]);
11     version = "1.37";
12     name = "postgrey-${version}";
13 in runCommand name {
14   src = fetchurl {
15     url = "https://postgrey.schweikert.ch/pub/${name}.tar.gz";
16     sha256 = "1xx51xih4711vrvc6d57il9ccallbljj5zhgqdb07jzmz11rakgz";
17   };
18   meta = with lib; {
19     description = "A postfix policy server to provide greylisting";
20     homepage = "https://postgrey.schweikert.ch/";
21     platforms = postfix.meta.platforms;
22     license = licenses.gpl2;
23   };
24 } ''
25     mkdir -p $out/bin
26     cd $out
27     tar -xzf $src --strip-components=1
28     mv postgrey policy-test bin
29     sed -i -e "s,#!/usr/bin/perl -T,#!${perlPackages.perl}/bin/perl -T ${postgrey-flags}," \
30            -e "s#/etc/postfix#$out#" \
31         bin/postgrey
32     sed -i -e "s,#!/usr/bin/perl,#!${perlPackages.perl}/bin/perl ${policy-test-flags}," \
33         bin/policy-test