nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
fork

Configure Feed

Select the types of activity you want to include in your feed.

samba: Revert style changes and get rid of some dependencies

Packages like glusterfs are now optional dependencies. A bunch of
dependencies like subunit are gone: as far as I can tell, these are
only used by Samba's test suite, which we're not even running, so
they're pointless.

Fixes #8067.

+61 -160
+1 -2
pkgs/os-specific/gnu/default.nix
··· 1 1 # Packages that make up the GNU/Hurd operating system (aka. GNU). 2 2 3 3 args@{ fetchgit, stdenv, autoconf, automake, automake111x, libtool 4 - , texinfo, glibcCross, hurdPartedCross, libuuid, samba_light 4 + , texinfo, glibcCross, hurdPartedCross, libuuid, samba 5 5 , gccCrossStageStatic, gccCrossStageFinal 6 6 , forceNativeDrv, forceSystem, newScope, platform, config, crossSystem 7 7 , overrides ? {} }: ··· 91 91 mig_raw = callPackage ./mig {}; 92 92 93 93 smbfs = callPackage ./smbfs { 94 - samba = samba_light; 95 94 hurd = gnu.hurdCross; 96 95 }; 97 96
+48 -118
pkgs/servers/samba/4.x.nix
··· 1 - { stdenv, fetchurl, python, pkgconfig, perl, libxslt, docbook_xsl 1 + { lib, stdenv, fetchurl, python, pkgconfig, perl, libxslt, docbook_xsl 2 2 , docbook_xml_dtd_42, docbook_xml_dtd_45, readline, talloc, ntdb, tdb, tevent 3 - , ldb, popt, iniparser, subunit, libbsd, nss_wrapper, socket_wrapper 4 - , uid_wrapper, libarchive 3 + , ldb, popt, iniparser, libbsd, libarchive, libiconv, gettext 4 + , kerberos, zlib, openldap, cups, pam, avahi, acl, libaio, fam, libceph, glusterfs 5 + , gnutls, libgcrypt, libgpgerror 6 + , ncurses, libunwind, libibverbs, librdmacm, systemd 5 7 6 - # source3/wscript optionals 7 - , kerberos ? null 8 - , zlib ? null 9 - , openldap ? null 10 - , cups ? null 11 - , pam ? null 12 - , avahi ? null 13 - , acl ? null 14 - , libaio ? null 15 - , fam ? null 16 - , libceph ? null 17 - , glusterfs ? null 18 - 19 - # buildtools/wafsamba/wscript optionals 20 - , libiconv ? null 21 - , gettext ? null 22 - 23 - # source4/lib/tls/wscript optionals 24 - , gnutls ? null 25 - , libgcrypt ? null 26 - , libgpgerror ? null 27 - 28 - # other optionals 29 - , ncurses ? null 30 - , libunwind ? null 31 - , dbus ? null 32 - , libibverbs ? null 33 - , librdmacm ? null 34 - , systemd ? null 8 + , enableKerberos ? false 9 + , enableInfiniband ? false 10 + , enableLDAP ? false 11 + , enablePrinting ? false 12 + , enableMDNS ? false 13 + , enableDomainController ? false 14 + , enableRegedit ? true 15 + , enableCephFS ? false 16 + , enableGlusterFS ? false 35 17 }: 36 18 37 - assert kerberos != null -> zlib != null; 19 + with lib; 38 20 39 - let 40 - bundledLibs = if kerberos != null && kerberos.implementation == "heimdal" then "NONE" else "com_err"; 41 - hasGnutls = gnutls != null && libgcrypt != null && libgpgerror != null; 42 - isKrb5OrNull = if kerberos != null && kerberos.implementation == "krb5" then true else null; 43 - hasInfinibandOrNull = if libibverbs != null && librdmacm != null then true else null; 44 - in 45 - with stdenv.lib; 46 21 stdenv.mkDerivation rec { 47 22 name = "samba-4.2.1"; 48 23 ··· 26 51 sha256 = "1hsakc8h6rs48xr6i55m90pd53hpxcqjjnlwq8i2rp0nq4ws5sip"; 27 52 }; 28 53 29 - patches = [ 30 - ./4.x-no-persistent-install.patch 31 - ./4.x-fix-ctdb-deps.patch 32 - ] ++ optional (kerberos != null) ./4.x-heimdal-compat.patch; 54 + patches = 55 + [ ./4.x-no-persistent-install.patch 56 + ./4.x-fix-ctdb-deps.patch 57 + ] ++ stdenv.lib.optional enableKerberos ./4.x-heimdal-compat.patch; 33 58 34 - buildInputs = [ 35 - python pkgconfig perl libxslt docbook_xsl docbook_xml_dtd_42 36 - docbook_xml_dtd_45 readline talloc ntdb tdb tevent ldb popt iniparser 37 - subunit libbsd nss_wrapper socket_wrapper uid_wrapper 38 - libarchive 39 - 40 - kerberos zlib openldap cups pam avahi acl libaio fam libceph glusterfs 41 - 42 - libiconv gettext 43 - 44 - gnutls libgcrypt libgpgerror 45 - 46 - ncurses libunwind dbus libibverbs librdmacm systemd 47 - ]; 59 + buildInputs = 60 + [ python pkgconfig perl libxslt docbook_xsl docbook_xml_dtd_42 /* 61 + docbook_xml_dtd_45 */ readline talloc ntdb tdb tevent ldb popt iniparser 62 + libbsd libarchive zlib acl fam libiconv gettext libunwind 63 + ] 64 + ++ optionals stdenv.isLinux [ libaio pam systemd ] 65 + ++ optional enableKerberos kerberos 66 + ++ optionals (enableInfiniband && stdenv.isLinux) [ libibverbs librdmacm ] 67 + ++ optional enableLDAP openldap 68 + ++ optional (enablePrinting && stdenv.isLinux) cups 69 + ++ optional enableMDNS avahi 70 + ++ optional enableDomainController gnutls 71 + ++ optional enableRegedit ncurses 72 + ++ optional (enableCephFS && stdenv.isLinux) libceph 73 + ++ optional (enableGlusterFS && stdenv.isLinux) glusterfs; 48 74 49 75 postPatch = '' 50 76 # Removes absolute paths in scripts ··· 55 79 sed -i "s,\(XML_CATALOG_FILES=\"\),\1$XML_CATALOG_FILES ,g" buildtools/wafsamba/wafsamba.py 56 80 ''; 57 81 82 + configureFlags = 83 + [ "--with-static-modules=NONE" 84 + "--with-shared-modules=ALL" 85 + "--enable-fhs" 86 + "--sysconfdir=/etc" 87 + "--localstatedir=/var" 88 + "--bundled-libraries=${if enableKerberos && kerberos.implementation == "heimdal" then "NONE" else "com_err"}" 89 + "--private-libraries=NONE" 90 + "--builtin-libraries=replace" 91 + ] 92 + ++ optional (enableKerberos != null && kerberos.implementation == "krb5") "--with-system-mitkrb5" 93 + ++ optional (!enableDomainController) "--without-ad-dc" 94 + ++ optionals (!enableLDAP) [ "--without-ldap" "--without-ads" ]; 95 + 58 96 enableParallelBuilding = true; 59 97 60 - configureFlags = [ 61 - # source3/wscript options 62 - (mkWith true "static-modules" "NONE") 63 - (mkWith true "shared-modules" "ALL") 64 - (mkWith true "winbind" null) 65 - (mkWith (openldap != null) "ads" null) 66 - (mkWith (openldap != null) "ldap" null) 67 - (mkEnable (cups != null) "cups" null) 68 - (mkEnable (cups != null) "iprint" null) 69 - (mkWith (pam != null) "pam" null) 70 - (mkWith (pam != null) "pam_smbpass" null) 71 - (mkWith true "quotas" null) 72 - (mkWith true "sendfile-support" null) 73 - (mkWith true "utmp" null) 74 - (mkWith true "utmp" null) 75 - (mkEnable true "pthreadpool" null) 76 - (mkEnable (avahi != null) "avahi" null) 77 - (mkWith true "iconv" null) 78 - (mkWith (acl != null) "acl-support" null) 79 - (mkWith true "dnsupdate" null) 80 - (mkWith true "syslog" null) 81 - (mkWith true "automount" null) 82 - (mkWith (libaio != null) "aio-support" null) 83 - (mkWith (fam != null) "fam" null) 84 - (mkWith (libarchive != null) "libarchive" null) 85 - (mkWith true "cluster-support" null) 86 - (mkWith (ncurses != null) "regedit" null) 87 - (mkWith libceph "libcephfs" libceph) 88 - (mkEnable (glusterfs != null) "glusterfs" null) 89 - 90 - # dynconfig/wscript options 91 - (mkEnable true "fhs" null) 92 - (mkOther "sysconfdir" "/etc") 93 - (mkOther "localstatedir" "/var") 94 - 95 - # buildtools/wafsamba/wscript options 96 - (mkOther "bundled-libraries" bundledLibs) 97 - (mkOther "private-libraries" "NONE") 98 - (mkOther "builtin-libraries" "replace") 99 - (mkWith libiconv "libiconv" libiconv) 100 - (mkWith (gettext != null) "gettext" gettext) 101 - 102 - # source4/lib/tls/wscript options 103 - (mkEnable hasGnutls "gnutls" null) 104 - 105 - # wscript options 106 - (mkWith isKrb5OrNull "system-mitkrb5" null) 107 - (if hasGnutls then null else "--without-ad-dc") 108 - 109 - # ctdb/wscript 110 - (mkEnable hasInfinibandOrNull "infiniband" null) 111 - (mkEnable null "pmda" null) 112 - ]; 113 - 114 98 stripAllList = [ "bin" "sbin" ]; 115 - 116 - postInstall = '' 117 - # Remove unecessary components 118 - rm -r $out/{lib,share}/ctdb-tests 119 - rm $out/bin/ctdb_run{_cluster,}_tests 120 - ''; 121 99 122 100 postFixup = '' 123 101 export SAMBA_LIBS="$(find $out -type f -name \*.so -exec dirname {} \; | sort | uniq)"
+12 -40
pkgs/top-level/all-packages.nix
··· 8986 8986 python = python2; 8987 8987 kerberos = heimdal; 8988 8988 gnutls = gnutls33; 8989 - cups = if stdenv.isDarwin then null else cups; 8990 - pam = if stdenv.isDarwin then null else pam; 8991 - libaio = if stdenv.isDarwin then null else libaio; 8992 - libceph = if stdenv.isDarwin then null else libceph; 8993 - glusterfs = if stdenv.isDarwin then null else glusterfs; 8994 - dbus = if stdenv.isLinux then dbus else null; 8995 - libibverbs = if stdenv.isLinux then libibverbs else null; 8996 - librdmacm = if stdenv.isLinux then librdmacm else null; 8997 - systemd = if stdenv.isLinux then systemd else null; 8989 + # enableLDAP 8998 8990 }; 8999 8991 9000 8992 samba = samba4; ··· 9004 9012 libunwind = null; 9005 9013 }); 9006 9014 9007 - samba4_light = lowPrio (samba4.override { 9008 - # source3/wscript optionals 9009 - kerberos = null; 9010 - zlib = null; 9011 - openldap = null; 9012 - cups = null; 9013 - pam = null; 9014 - avahi = null; 9015 - acl = null; 9016 - libaio = null; 9017 - fam = null; 9018 - libceph = null; 9019 - glusterfs = null; 9020 - 9021 - # buildtools/wafsamba/wscript optionals 9022 - libiconv = null; 9023 - gettext = null; 9024 - 9025 - # source4/lib/tls/wscript optionals 9026 - gnutls = null; 9027 - libgcrypt = null; 9028 - libgpgerror = null; 9029 - 9030 - # other optionals 9031 - ncurses = null; 9032 - libunwind = null; 9033 - dbus = null; 9034 - libibverbs = null; 9035 - librdmacm = null; 9036 - systemd = null; 9015 + samba4Full = lowPrio (samba4.override { 9016 + enableKerberos = true; 9017 + enableInfiniband = true; 9018 + enableLDAP = true; 9019 + enablePrinting = true; 9020 + enableMDNS = true; 9021 + enableDomainController = true; 9022 + enableRegedit = true; 9023 + enableCephFS = true; 9024 + enableGlusterFS = true; 9037 9025 }); 9038 9026 9039 - samba_light = samba4_light; 9027 + sambaFull = samba4Full; 9040 9028 9041 9029 shairport-sync = callPackage ../servers/shairport-sync { }; 9042 9030