* ssmtp updated to 2.64. Also get rid of the cyclic symlink $out/lib/sendmail.

svn path=/nixpkgs/trunk/; revision=26711
This commit is contained in:
Eelco Dolstra 2011-04-06 11:41:36 +00:00
parent 9fd6ab096d
commit 20a5c4d74a

View File

@ -3,29 +3,27 @@
assert tlsSupport -> openssl != null; assert tlsSupport -> openssl != null;
stdenv.mkDerivation { stdenv.mkDerivation {
name = "ssmtp-2.61-12"; name = "ssmtp-2.64";
src = fetchurl { src = fetchurl {
url = http://ftp.debian.org/debian/pool/main/s/ssmtp/ssmtp_2.61.orig.tar.gz; url = http://ftp.debian.org/debian/pool/main/s/ssmtp/ssmtp_2.64.orig.tar.bz2;
sha256 = "2151ad18cb73f9a254f796dde2b48be7318b45410b59fedbb258db5a41044fb5"; sha256 = "0dps8s87ag4g3jr6dk88hs9zl46h3790marc5c2qw7l71k4pvhr2";
}; };
patches = [
(fetchurl { configureFlags = "--sysconfdir=/etc ${if tlsSupport then "--enable-ssl" else ""}";
url = http://ftp.debian.org/debian/pool/main/s/ssmtp/ssmtp_2.61-12.diff.gz;
sha256 = "2eb5b2af76d220f14e5133ec4078bab531209fb2f9f8f4e780a0ab8de4818d39"; postConfigure =
}) ''
]; # Don't run the script that interactively generates a config file.
configureFlags = "${if tlsSupport then "--enable-ssl" else ""}"; # Also don't install the broken, cyclic symlink /lib/sendmail.
postConfigure = " sed -e '/INSTALLED_CONFIGURATION_FILE/d' \
sed -e '/INSTALLED_CONFIGURATION_FILE/d' \\ -e 's|/lib/sendmail|$(TMPDIR)/sendmail|' \
-e 's|\\(DSSMTPCONFDIR.*\\).(.*)\\(.*$\\)|\\1/etc/ssmtp\\2|' \\ -i Makefile
-e 's|\\(DCONFIGURATION_FILE.*\\).(.*)\\(.*$\\)|\\1/etc/ssmtp/ssmtp.conf\\2|' \\ '';
-e 's|\\(DREVALIASES_FILE.*\\).(.*)\\(.*$\\)|\\1/etc/ssmtp/revaliases\\2|' \\
-e \"s| /lib| $out/lib|\" -i Makefile installFlags = "etcdir=$(out)/etc";
substituteInPlace ssmtp.c --replace gnutls/ openssl/ --replace openssl.h ssl.h
substituteInPlace Makefile --replace /usr/lib/libgnutls-openssl.so -lssl
";
preInstall = "ensureDir $out/lib";
installTargets = [ "install" "install-sendmail" ]; installTargets = [ "install" "install-sendmail" ];
postInstall = "install ssmtp.conf $out/etc/ssmtp ";
buildInputs = stdenv.lib.optional tlsSupport openssl; buildInputs = stdenv.lib.optional tlsSupport openssl;
} }