samba4: 4.1.17 -> 4.2.0 YOLO

+87 -20
+16
pkgs/servers/samba/4.x-heimdal-compat.patch
··· 1 + diff --git a/source4/kdc/kdc.c b/source4/kdc/kdc.c 2 + index bb476e1..0a407a4 100644 3 + --- a/source4/kdc/kdc.c 4 + +++ b/source4/kdc/kdc.c 5 + @@ -967,9 +967,9 @@ static void kdc_task_init(struct task_server *task) 6 + * The old behavior in the _kdc_get_preferred_key() 7 + * function is use_strongest_server_key=TRUE. 8 + */ 9 + - kdc->config->as_use_strongest_session_key = false; 10 + + kdc->config->tgt_use_strongest_session_key = false; 11 + + kdc->config->svc_use_strongest_session_key = false; 12 + kdc->config->preauth_use_strongest_session_key = false; 13 + - kdc->config->tgs_use_strongest_session_key = false; 14 + kdc->config->use_strongest_server_key = true; 15 + 16 + /* Register hdb-samba4 hooks for use as a keytab */
+42
pkgs/servers/samba/4.x-no-persistent-install.patch
··· 16 16 # these might be on non persistent storage 17 17 - bld.INSTALL_DIRS("", "${LOCKDIR} ${PIDDIR} ${SOCKET_DIR}") 18 18 + #bld.INSTALL_DIRS("", "${LOCKDIR} ${PIDDIR} ${SOCKET_DIR}") 19 + diff --git a/ctdb/wscript b/ctdb/wscript 20 + index 3e2a992..1b93a4d 100755 21 + --- a/ctdb/wscript 22 + +++ b/ctdb/wscript 23 + @@ -473,10 +473,10 @@ def build(bld): 24 + for t in etc_subdirs: 25 + files = SUBDIR_MODE('%s/%s' % (configdir, t), trim_path=configdir) 26 + for fmode in files: 27 + - bld.INSTALL_FILES(bld.env.CTDB_ETCDIR, 'config/%s' % fmode[0], 28 + + bld.INSTALL_FILES('${EXEC_PREFIX}${CTDB_ETCDIR}', 'config/%s' % fmode[0], 29 + destname=fmode[0], chmod=fmode[1]) 30 + 31 + - bld.INSTALL_FILES(bld.env.CTDB_ETCDIR, 'config/functions', 32 + + bld.INSTALL_FILES('${EXEC_PREFIX}${CTDB_ETCDIR}', 'config/functions', 33 + destname='functions') 34 + 35 + etc_scripts = [ 36 + @@ -489,18 +489,18 @@ def build(bld): 37 + ] 38 + 39 + for t in etc_scripts: 40 + - bld.INSTALL_FILES(bld.env.CTDB_ETCDIR, 'config/%s' % t, 41 + + bld.INSTALL_FILES('${EXEC_PREFIX}${CTDB_ETCDIR}', 'config/%s' % t, 42 + destname=t, chmod=0755) 43 + 44 + - bld.INSTALL_FILES('${SYSCONFDIR}/sudoers.d', 'config/ctdb.sudoers', 45 + + bld.INSTALL_FILES('${EXEC_PREFIX}${SYSCONFDIR}/sudoers.d', 'config/ctdb.sudoers', 46 + destname='ctdb') 47 + 48 + - bld.INSTALL_FILES('${CTDB_ETCDIR}/notify.d', 'config/notify.d.README', 49 + + bld.INSTALL_FILES('${EXEC_PREFIX}${CTDB_ETCDIR}/notify.d', 'config/notify.d.README', 50 + destname='README') 51 + 52 + - bld.install_dir(bld.env.CTDB_LOGDIR) 53 + - bld.install_dir(bld.env.CTDB_RUNDIR) 54 + - bld.install_dir(bld.env.CTDB_VARDIR) 55 + + #bld.install_dir(bld.env.CTDB_LOGDIR) 56 + + #bld.install_dir(bld.env.CTDB_RUNDIR) 57 + + #bld.install_dir(bld.env.CTDB_VARDIR) 58 + 59 + sed_expr = 's/@PACKAGE_VERSION@/%s/g' % VERSION 60 + t = bld.SAMBA_GENERATOR('ctdb-pc',
+25 -15
pkgs/servers/samba/4.x.nix
··· 1 1 { stdenv, fetchurl, python, pkgconfig, perl, libxslt, docbook_xsl_ns 2 2 , docbook_xml_dtd_42, readline, talloc, ntdb, tdb, tevent, ldb, popt, iniparser 3 - , pythonPackages, libbsd 3 + , pythonPackages, libbsd, nss_wrapper, socket_wrapper, uid_wrapper, libarchive 4 4 5 5 # source3/wscript optionals 6 - , heimdal ? null # Samba only supports heimdal for kerberos although mit-krb5 is being worked on 6 + , kerberos ? null 7 7 , openldap ? null 8 8 , cups ? null 9 9 , pam ? null ··· 11 11 , acl ? null 12 12 , libaio ? null 13 13 , fam ? null 14 - , ctdb ? null 15 14 , ceph ? null 16 15 , glusterfs ? null 17 16 ··· 31 30 }: 32 31 33 32 stdenv.mkDerivation rec { 34 - name = "samba-4.1.17"; 33 + name = "samba-4.2.0"; 35 34 36 35 src = fetchurl { 37 36 url = "mirror://samba/pub/samba/stable/${name}.tar.gz"; 38 - sha256 = "07fban97xmf4r5y48jp6ajfdki6vx4239lwq9gmvwjy8x44mvsvs"; 37 + sha256 = "03s9pjdgq6nlv2lcnlmxlhhj8m5drgv6z4xy9zkgwwd92mw0b9k6"; 39 38 }; 40 39 41 - patches = [ ./4.x-no-persistent-install.patch ]; 40 + patches = [ 41 + ./4.x-no-persistent-install.patch 42 + ./4.x-heimdal-compat.patch 43 + ]; 42 44 43 45 buildInputs = [ 44 46 python pkgconfig perl libxslt docbook_xsl_ns docbook_xml_dtd_42 45 47 readline talloc ntdb tdb tevent ldb popt iniparser pythonPackages.subunit 46 - libbsd 48 + libbsd nss_wrapper socket_wrapper uid_wrapper libarchive 47 49 48 - heimdal openldap cups pam avahi acl libaio fam ctdb ceph glusterfs 50 + kerberos openldap cups pam avahi acl libaio fam ceph glusterfs 49 51 50 52 libiconv gettext 51 53 ··· 61 63 "--with-static-modules=NONE" 62 64 "--with-shared-modules=ALL" 63 65 "--with-winbind" 64 - ] ++ (if heimdal != null then [ "--with-ads" ] else [ "--without-ads" ]) 66 + ] ++ (if kerberos != null then [ "--with-ads" ] else [ "--without-ads" ]) 65 67 ++ (if openldap != null then [ "--with-ldap" ] else [ "--without-ldap" ]) 66 68 ++ (if cups != null then [ "--enable-cups" ] else [ "--disable-cups" ]) 67 69 ++ (if pam != null then [ "--with-pam" "--with-pam_smbpass" ] ··· 77 79 "--with-syslog" 78 80 "--with-automount" 79 81 ] ++ (if libaio != null then [ "--with-aio-support" ] else [ "--without-aio-support" ]) 80 - ++ (if fam != null then [ "--with-fam" ] else [ "--without-fam" ]) 81 - ++ (if ctdb != null then [ "--with-cluster-support" "--with-ctdb-dir=${ctdb}" ] 82 - else [ "--without-cluster-support" ]) 83 - ++ (if ceph != null then [ "--with-libcephfs=${ceph}" ] else [ ]) 82 + ++ (if fam != null then [ "--with-fam" ] else [ "--without-fam" ]) ++ [ 83 + "--with-cluster-support" 84 + ] ++ (if ceph != null then [ "--with-libcephfs=${ceph}" ] else [ ]) 84 85 ++ (if glusterfs != null then [ "--enable-glusterfs" ] else [ "--disable-glusterfs" ]) ++ [ 86 + 85 87 # dynconfig/wscript options 86 88 "--enable-fhs" 87 89 "--sysconfdir=/etc" 88 90 "--localstatedir=/var" 89 91 90 92 # buildtools/wafsamba/wscript options 91 - "--bundled-libraries=${if heimdal != null then "NONE" else "com_err"}" 93 + "--bundled-libraries=${if kerberos.implementation == "heimdal" then "NONE" else "com_err"}" 92 94 "--private-libraries=NONE" 93 95 "--builtin-libraries=replace" 94 96 ] ++ (if libiconv != null then [ "--with-libiconv=${libiconv}" ] else [ ]) 95 97 ++ (if gettext != null then [ "--with-gettext=${gettext}" ] else [ "--without-gettext" ]) ++ [ 98 + 96 99 # source4/lib/tls/wscript options 97 100 ] ++ (if gnutls != null && libgcrypt != null && libgpgerror != null 98 101 then [ "--enable-gnutls" ] else [ "--disable-gnutls" ]) ++ [ 102 + 99 103 # wscript options 100 - ] ++ stdenv.lib.optional (heimdal == null) "--without-ad-dc"; 104 + ] ++ stdenv.lib.optional (kerberos.implementation == "krb5") "--with-system-mitkrb5" 105 + ++ stdenv.lib.optional (kerberos == null) "--without-ad-dc" ++ [ 106 + 107 + # ctdb/wscript 108 + "--enable-infiniband" 109 + "--enable-pmda" 110 + ]; 101 111 102 112 stripAllList = [ "bin" "sbin" ]; 103 113
+4 -5
pkgs/top-level/all-packages.nix
··· 8304 8304 samba3 = callPackage ../servers/samba/3.x.nix { }; 8305 8305 8306 8306 samba4 = callPackage ../servers/samba/4.x.nix { 8307 + #glusterfs = null; # Broken in the current build 8308 + libgcrypt = libgcrypt_1_6; 8309 + libiconv = if stdenv.isLinux then null else libiconv; 8307 8310 python = python2; 8308 8311 pythonPackages = python2Packages; 8309 - libiconv = if stdenv.isLinux then null else libiconv; 8310 - libgcrypt = libgcrypt_1_6; 8311 - glusterfs = null; # Broken in the current build 8312 8312 }; 8313 8313 8314 8314 samba = samba4; ··· 8328 8328 8329 8329 samba4_light = lowPrio (samba4.override { 8330 8330 # source3/wscript optionals 8331 - heimdal = null; 8331 + kerberos = null; 8332 8332 openldap = null; 8333 8333 cups = null; 8334 8334 pam = null; ··· 8336 8336 acl = null; 8337 8337 libaio = null; 8338 8338 fam = null; 8339 - ctdb = null; 8340 8339 ceph = null; 8341 8340 glusterfs = null; 8342 8341