nixpkgs/pkgs/servers/shishi/default.nix

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

83 lines
2.7 KiB
Nix
Raw Normal View History

{ lib, stdenv, fetchurl, pkg-config
, libgcrypt, libgpg-error, libtasn1
2015-05-02 13:05:32 +02:00
# Optional Dependencies
, pam ? null, libidn ? null, gnutls ? null
}:
let
mkFlag = trueStr: falseStr: cond: name: val: "--"
+ (if cond then trueStr else falseStr)
+ name
2021-01-15 08:07:56 +01:00
+ lib.optionalString (val != null && cond != false) "=${val}";
2015-05-02 13:05:32 +02:00
mkEnable = mkFlag "enable-" "disable-";
mkWith = mkFlag "with-" "without-";
mkOther = mkFlag "" "" true;
2021-02-25 17:21:13 +01:00
shouldUsePkg = pkg: if pkg != null && lib.meta.availableOn stdenv.hostPlatform pkg then pkg else null;
2015-05-02 13:05:32 +02:00
optPam = shouldUsePkg pam;
optLibidn = shouldUsePkg libidn;
optGnutls = shouldUsePkg gnutls;
in
2021-01-15 08:07:56 +01:00
with lib;
stdenv.mkDerivation rec {
pname = "shishi";
version = "1.0.2";
src = fetchurl {
url = "mirror://gnu/shishi/shishi-${version}.tar.gz";
sha256 = "032qf72cpjdfffq1yq54gz3ahgqf2ijca4vl31sfabmjzq9q370d";
};
2015-05-02 13:05:32 +02:00
# Fixes support for gcrypt 1.6+
patches = [ ./gcrypt-fix.patch ./freebsd-unistd.patch ];
2015-05-02 13:05:32 +02:00
nativeBuildInputs = [ pkg-config ];
buildInputs = [ libgcrypt libgpg-error libtasn1 optPam optLibidn optGnutls ];
2015-05-02 13:05:32 +02:00
configureFlags = [
(mkOther "sysconfdir" "/etc")
(mkOther "localstatedir" "/var")
(mkEnable true "libgcrypt" null)
(mkEnable (optPam != null) "pam" null)
(mkEnable true "ipv6" null)
(mkWith (optLibidn != null) "stringprep" null)
(mkEnable (optGnutls != null) "starttls" null)
(mkEnable true "des" null)
(mkEnable true "3des" null)
(mkEnable true "aes" null)
(mkEnable true "md" null)
(mkEnable false "null" null)
(mkEnable true "arcfour" null)
];
2013-05-27 13:29:11 +02:00
NIX_CFLAGS_COMPILE
2015-05-02 13:05:32 +02:00
= optionalString stdenv.isDarwin "-DBIND_8_COMPAT";
2013-05-27 13:29:11 +02:00
doCheck = true;
2015-05-02 13:05:32 +02:00
installFlags = [ "sysconfdir=\${out}/etc" ];
# Fix *.la files
postInstall = ''
sed -i $out/lib/libshi{sa,shi}.la \
'' + optionalString (optLibidn != null) ''
-e 's,\(-lidn\),-L${optLibidn.out}/lib \1,' \
2015-05-02 13:05:32 +02:00
'' + optionalString (optGnutls != null) ''
-e 's,\(-lgnutls\),-L${optGnutls.out}/lib \1,' \
2015-05-02 13:05:32 +02:00
'' + ''
-e 's,\(-lgcrypt\),-L${libgcrypt.out}/lib \1,' \
-e 's,\(-lgpg-error\),-L${libgpg-error.out}/lib \1,' \
-e 's,\(-ltasn1\),-L${libtasn1.out}/lib \1,'
2015-05-02 13:05:32 +02:00
'';
meta = {
homepage = "https://www.gnu.org/software/shishi/";
2015-05-02 13:05:32 +02:00
description = "An implementation of the Kerberos 5 network security system";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ bjg lovek323 ];
Disable bunch of non-compiling packages on Darwin These ones have a "Last successful build" timestamp in the 2014s or 2015s. Presumably no one will notice if we now stop building them. softether_4_18 2015-09-20 http://hydra.nixos.org/build/39418483 lensfun 2014-09-30 http://hydra.nixos.org/build/39394104 net_snmp 2015-09-20 http://hydra.nixos.org/build/39410553 djview 2015-08-11 http://hydra.nixos.org/build/39413233 libmusicbrainz2 2015-09-20 http://hydra.nixos.org/build/39410106 fox_1_6 2014-05-07 http://hydra.nixos.org/build/39410858 libofx 2015-09-24 http://hydra.nixos.org/build/39423507 yacas 2014-09-30 http://hydra.nixos.org/build/39393150 iomelt 2014-09-30 http://hydra.nixos.org/build/39408486 softether 2015-09-20 http://hydra.nixos.org/build/39425800 mp4v2 2014-09-30 http://hydra.nixos.org/build/39421899 virtuoso7 2014-09-21 http://hydra.nixos.org/build/39415206 man_db 2015-04-23 http://hydra.nixos.org/build/39404236 libdiscid 2014-09-30 http://hydra.nixos.org/build/39412202 zabbix22.agent 2014-09-21 http://hydra.nixos.org/build/39412149 vidalia 2015-08-06 http://hydra.nixos.org/build/39411500 libmtp 2015-09-20 http://hydra.nixos.org/build/39419199 wxGTK29 2015-09-20 http://hydra.nixos.org/build/39415296 ncmpcpp 2015-11-06 http://hydra.nixos.org/build/39404455 libtorrent 2014-09-21 http://hydra.nixos.org/build/39394646 shishi 2014-03-21 http://hydra.nixos.org/build/39418874 ocaml_3_12_1 2014-09-30 http://hydra.nixos.org/build/39392996 djview4 2015-08-11 http://hydra.nixos.org/build/39427799 vimNox 2014-05-23 http://hydra.nixos.org/build/39397012 ttfautohint 2015-08-06 http://hydra.nixos.org/build/39398330 libraw 2015-09-24 http://hydra.nixos.org/build/39402271 wxGTK30 2015-09-20 http://hydra.nixos.org/build/39401871 sbcl_1_2_5 2015-09-20 http://hydra.nixos.org/build/39426091 prover9 2014-09-30 http://hydra.nixos.org/build/39406476 rcs 2015-08-25 http://hydra.nixos.org/build/39392037 gpac 2015-09-24 http://hydra.nixos.org/build/39399470 virtuoso6 2014-09-30 http://hydra.nixos.org/build/39398651 xlslib 2015-09-24 http://hydra.nixos.org/build/39410387 ucommon 2015-03-27 http://hydra.nixos.org/build/39414040 commoncpp2 2014-09-30 http://hydra.nixos.org/build/39420117 virtuoso 2014-09-21 http://hydra.nixos.org/build/39399978 miniHttpd 2014-09-30 http://hydra.nixos.org/build/39392925 mpack 2014-09-26 http://hydra.nixos.org/build/39399535 nbd 2014-09-26 http://hydra.nixos.org/build/39401367 newsbeuter-dev 2014-07-29 http://hydra.nixos.org/build/39406259 gimp_2_8 2015-09-20 http://hydra.nixos.org/build/39436271 gimp 2015-09-20 http://hydra.nixos.org/build/39435976 zabbix20.agent 2014-09-30 http://hydra.nixos.org/build/39393242 gst_all_1.gst-plugins-good 2015-09-20 http://hydra.nixos.org/build/39408506 ocaml_4_00_1 2014-09-30 http://hydra.nixos.org/build/39399526 inadyn 2014-09-30 http://hydra.nixos.org/build/39426389 gst_all_1.gst-plugins-bad 2015-09-20 http://hydra.nixos.org/build/39392970 zabbix.agent 2014-09-30 http://hydra.nixos.org/build/39421412 cmake-2_8 2015-09-24 http://hydra.nixos.org/build/39399443 liblastfm 2015-08-06 http://hydra.nixos.org/build/39421812 newsbeuter 2014-07-29 http://hydra.nixos.org/build/39396605 sdcv 2014-09-26 http://hydra.nixos.org/build/39412928
2016-09-01 19:39:33 +02:00
platforms = platforms.linux;
};
}