diff --git a/common/shlibs b/common/shlibs index 079e0ebe5d0..98fc15ee985 100644 --- a/common/shlibs +++ b/common/shlibs @@ -3997,55 +3997,46 @@ libevemu.so.3 evemu-2.7.0_1 libantilib.so.1 libantimicrox-3.1.2_1 libinih.so.0 inih-52_1 libpcaudio.so.0 pcaudiolib-1.1_1 -libauth-unix-token-samba4.so samba-4.13.2_1 -libauth4-samba4.so samba-4.13.2_1 -libdcerpc-samba4.so samba-4.13.2_1 libdcerpc-samr.so.0 samba-4.13.2_1 libdcerpc-server-core.so.0 samba-4.13.2_1 -libdsdb-module-samba4.so samba-4.13.2_1 -libgpext-samba4.so samba-4.13.2_1 -libnet-keytab-samba4.so samba-4.13.2_1 libnetapi.so.0 samba-4.13.2_1 libnss_winbind.so.2 samba-4.13.2_1 libnss_wins.so.2 samba-4.13.2_1 +libsamba-policy.so.0 samba-4.13.2_1 +libauth-unix-token-samba4.so samba-4.13.2_1 +libdcerpc-samba4.so samba-4.13.2_1 +libdsdb-module-samba4.so samba-4.13.2_1 +libgpext-samba4.so samba-4.13.2_1 libposix-eadb-samba4.so samba-4.13.2_1 libprinting-migrate-samba4.so samba-4.13.2_1 libsamba-net-samba4.so samba-4.13.2_1 -libsamba-policy.so.0 samba-4.13.2_1 -libsamba-python-samba4.so samba-4.13.2_1 libshares-samba4.so samba-4.13.2_1 libsmbd-base-samba4.so samba-4.13.2_1 libsmbd-conn-samba4.so samba-4.13.2_1 -libsmbpasswdparser-samba4.so samba-4.13.2_1 libxattr-tdb-samba4.so samba-4.13.2_1 -libcli-ldap-samba4.so samba-libs-4.13.2_1 -libcliauth-samba4.so samba-libs-4.13.2_1 -libcluster-samba4.so samba-libs-4.13.2_1 -libcommon-auth-samba4.so samba-libs-4.13.2_1 libdcerpc.so.0 samba-libs-4.13.2_1 libdcerpc-binding.so.0 samba-libs-4.13.2_1 -libdcerpc-samba-samba4.so samba-libs-4.13.2_1 -libflag-mapping-samba4.so samba-libs-4.13.2_1 -libgpo-samba4.so samba-libs-4.13.2_1 -libiov-buf-samba4.so samba-libs-4.13.2_1 libndr-krb5pac.so.0 samba-libs-4.13.2_1 libndr-nbt.so.0 samba-libs-4.13.2_1 -libndr-samba-samba4.so samba-libs-4.13.2_1 -libndr-samba4.so samba-libs-4.13.2_1 libndr-standard.so.0 samba-libs-4.13.2_1 libndr.so.1 samba-libs-4.13.2_1 -libprinter-driver-samba4.so samba-libs-4.13.2_1 libsamba-credentials.so.0 samba-libs-4.13.2_1 libsamba-errors.so.1 samba-libs-4.13.2_1 libsamba-hostconfig.so.0 samba-libs-4.13.2_1 libsamba-passdb.so.0 samba-libs-4.13.2_1 libsamba-util.so.0 samba-libs-4.13.2_1 libsamdb.so.0 samba-libs-4.13.2_1 -libsmb-transport-samba4.so samba-libs-4.13.2_1 libsmbclient.so.0 samba-libs-4.13.2_1 libsmbconf.so.0 samba-libs-4.13.2_1 libsmbldap.so.2 samba-libs-4.13.2_1 -libtdb-wrap-samba4.so samba-libs-4.13.2_1 -libutil-cmdline-samba4.so samba-libs-4.13.2_1 libwbclient.so.0 samba-libs-4.13.2_1 +libcli-ldap-samba4.so samba-libs-4.13.2_1 +libcliauth-samba4.so samba-libs-4.13.2_1 +libcommon-auth-samba4.so samba-libs-4.13.2_1 +libdcerpc-samba-samba4.so samba-libs-4.13.2_1 +libgpo-samba4.so samba-libs-4.13.2_1 +libndr-samba-samba4.so samba-libs-4.13.2_1 +libndr-samba4.so samba-libs-4.13.2_1 +libsmb-transport-samba4.so samba-libs-4.13.2_1 +libutil-cmdline-samba4.so samba-libs-4.13.2_1 libwinbind-client-samba4.so samba-libs-4.13.2_1 diff --git a/srcpkgs/samba-ctdb b/srcpkgs/samba-ctdb new file mode 120000 index 00000000000..cba1f39180b --- /dev/null +++ b/srcpkgs/samba-ctdb @@ -0,0 +1 @@ +samba \ No newline at end of file diff --git a/srcpkgs/samba-glusterfs b/srcpkgs/samba-glusterfs new file mode 120000 index 00000000000..cba1f39180b --- /dev/null +++ b/srcpkgs/samba-glusterfs @@ -0,0 +1 @@ +samba \ No newline at end of file diff --git a/srcpkgs/samba/files/ctdbd/log/run b/srcpkgs/samba/files/ctdbd/log/run new file mode 100644 index 00000000000..7b12895c740 --- /dev/null +++ b/srcpkgs/samba/files/ctdbd/log/run @@ -0,0 +1,2 @@ +#!/bin/sh +exec logger -p daemon.notice -t ctdbd diff --git a/srcpkgs/samba/files/ctdbd/run b/srcpkgs/samba/files/ctdbd/run new file mode 100644 index 00000000000..f93d43eb862 --- /dev/null +++ b/srcpkgs/samba/files/ctdbd/run @@ -0,0 +1,2 @@ +#!/bin/sh +exec ctdbd -i diff --git a/srcpkgs/samba/patches/missing-headers.patch b/srcpkgs/samba/patches/missing-headers.patch index 44a5418e0bd..a91db73b758 100644 --- a/srcpkgs/samba/patches/missing-headers.patch +++ b/srcpkgs/samba/patches/missing-headers.patch @@ -36,3 +36,17 @@ index 2cd6122..0c84ec2 100644 #include "torture/torture.h" #include "torture/local/proto.h" + +diff --git ctdb/tests/src/protocol_util_test.c ctdb/tests/src/protocol_util_test.c +index edd2a34..48ce96e 100644 +--- ctdb/tests/src/protocol_util_test.c ++++ ctdb/tests/src/protocol_util_test.c +@@ -20,6 +20,7 @@ + #include "replace.h" + #include "system/network.h" + ++#include + #include + + #include "protocol/protocol_basic.c" + diff --git a/srcpkgs/samba/template b/srcpkgs/samba/template index b0612faddc6..501981db0d2 100644 --- a/srcpkgs/samba/template +++ b/srcpkgs/samba/template @@ -1,7 +1,7 @@ # Template file for 'samba' pkgname=samba version=4.13.2 -revision=1 +revision=2 build_style=waf3 build_helper="qemu" configure_script="buildtools/bin/waf" @@ -13,7 +13,7 @@ configure_args="--enable-fhs --sbindir=/usr/bin --localstatedir=/var --with-privatedir=/etc/samba/private --with-pammodulesdir=/usr/lib/security --with-modulesdir=/usr/lib/samba --disable-rpath --disable-rpath-install --without-systemd --without-gettext --bundled-libraries=NONE - --with-system-mitkrb5 --without-ad-dc + --with-system-mitkrb5 --without-ad-dc --with-cluster-support --with-shared-modules=${_idmap_modules},${_pdb_modules},${_auth_modules}" hostmakedepends="pkg-config perl-Parse-Yapp rpcsvc-proto docbook2x libtasn1-tools tdb-python3 tevent-python3 talloc-python3" @@ -30,9 +30,13 @@ checksum=276464396a05d88b775bda01ac2eb1e5a636ccf7010b0fd28efc3d85583af2b4 lib32disabled=yes conf_files="/etc/pam.d/samba /etc/samba/smb.conf" make_dirs="/etc/samba/private 0750 root root" +subpackages="smbclient samba-ctdb samba-libs samba-devel samba-python3" if [ "$XBPS_TARGET_LIBC" = "musl" ]; then makedepends+=" musl-legacy-compat" +else + makedepends+=" glusterfs-devel" + subpackages+=" samba-glusterfs" fi # By default, samba wants to install a bunch of private "*-samba4.so" shared @@ -41,16 +45,16 @@ fi # that shouldn't be exposed locally. For those that cannot be built in, make # sure to install them into /usr/lib so xbps-src picks them up. _privlibs="CHARSET3 MESSAGING_SEND MESSAGING LIBWBCLIENT_OLD addns ads \ - asn1util auth authkrb5 cmdline_contexts cmdline-credentials cli_cldap \ - cli-ldap-common cli-nbt cli_smb_common cli_spoolss clidns common-auth dbwrap \ - events flag-mapping genrand gensec gse http interfaces iov-buf krb5samba \ + asn1util auth auth4 authkrb5 cmdline_contexts cmdline-credentials cli_cldap \ + cli-ldap-common cli-nbt cli_smb_common cli_spoolss clidns cluster common-auth \ + dbwrap events flag_mapping genrand gensec gse http interfaces iov_buf krb5samba \ ldbsamba libcli_lsa3 libcli_netlogon3 libsmb messages_dgm messages_util mscat \ - msghdr msrpc3 netif npa_tstream popt_samba3 popt_samba3_cmdline \ - printer-driver registry replace samba-cluster-support samba-debug \ + msghdr msrpc3 netif net_keytab npa_tstream popt_samba3 popt_samba3_cmdline \ + printer_driver registry replace samba-cluster-support samba-debug \ samba-modules samba-security samba-sockets samba3-util samdb-common secrets3 \ - server_id_db server-role smbclient-raw smbd_shim socket-blocking \ - sys_rw talloc_report_printf talloc_report tdb_wrap time-basic trusts_util \ - util_reg util_setid util_tdb tevent-util" + server_id_db server-role samba_python smbclient-raw smbd_shim smbpasswdparser \ + socket-blocking sys_rw talloc_report_printf talloc_report tdb-wrap tevent-util \ + time-basic torture trusts_util util_reg util_setid util_tdb ctdb-event-client" configure_args+=" --with-privatelibdir=/usr/lib --builtin-libraries=${_privlibs// /,}" export PYTHON_CONFIG="${XBPS_CROSS_BASE}/usr/bin/python3-config" @@ -84,6 +88,12 @@ post_install() { # Link cups backend vmkdir usr/lib/cups/backend ln -fs /usr/bin/smbspool ${DESTDIR}/usr/lib/cups/backend/smb + + # Do not ship sudo rule that grants nopasswd privileges by default + rm -rf ${DESTDIR}/etc/sudoers.d + + # Do not ship no-op sysvinit scripts + rm -rf ${DESTDIR}/etc/init.d } smbclient_package() { @@ -125,6 +135,30 @@ smbclient_package() { } } +samba-ctdb_package() { + depends="${sourcepkg}>=${version}_${revision}" + short_desc+=" - Clustered TDB support" + pkg_install() { + local _f + vmove "usr/bin/ctdb*" + + for _f in man{1,5,7}; do + vmove "usr/share/man/${_f}/ctdb*" + done + + for _f in ltdbtool onnode ping_pong; do + vmove "usr/bin/${_f}" + vmove "usr/share/man/man1/${_f}.1" + done + + vmove usr/libexec/ctdb + vmove usr/share/ctdb + vmove etc/ctdb + + vsv ctdbd + } +} + samba-libs_package() { short_desc+=" - core libraries" provides="libsmbclient-${version}_${revision}" @@ -134,9 +168,8 @@ samba-libs_package() { _libs="dcerpc dcerpc-binding ndr-krb5pac ndr-nbt ndr-standard ndr samba-credentials samba-errors samba-hostconfig samba-passdb samba-util samdb smbclient smbconf smbldap wbclient" - _privlibs="cli-ldap cliauth cluster common-auth dcerpc-samba - flag-mapping gpo iov-buf ndr-samba ndr printer-driver - smb-transport tdb-wrap util-cmdline winbind-client" + _privlibs="cli-ldap cliauth common-auth dcerpc-samba gpo + ndr-samba ndr smb-transport util-cmdline winbind-client" for _lib in ${_libs}; do vmove "usr/lib/lib${_lib}.so.*" @@ -151,7 +184,8 @@ samba-libs_package() { } samba-devel_package() { - depends="${sourcepkg}>=${version}_${revision}" + depends="samba-libs>=${version}_${revision} + ${sourcepkg}>=${version}_${revision}" short_desc+=" - development files" pkg_install() { vmove usr/include @@ -173,3 +207,11 @@ samba-python3_package() { vmove ${py3_lib} } } + +samba-glusterfs_package() { + short_desc+=" - GlusterFS VFS module" + pkg_install() { + vmove usr/lib/samba/vfs/glusterfs.so + vmove usr/share/man/man8/vfs_glusterfs.8 + } +}