diff options
author | V3n3RiX <venerix@koprulu.sector> | 2024-01-05 20:03:56 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2024-01-05 20:03:56 +0000 |
commit | 17ad5d72e60411f0ed843a9dbeb450d89f63d62c (patch) | |
tree | 6760805f03473ce66ac45f6d86c78db649702a7e /sys-auth/sssd | |
parent | 8fd9d385e5bc3c01115ec2ddcb2227607eb90861 (diff) |
gentoo auto-resync : 05:01:2024 - 20:03:55
Diffstat (limited to 'sys-auth/sssd')
-rw-r--r-- | sys-auth/sssd/Manifest | 6 | ||||
-rw-r--r-- | sys-auth/sssd/metadata.xml | 1 | ||||
-rw-r--r-- | sys-auth/sssd/sssd-2.6.0-r3.ebuild (renamed from sys-auth/sssd/sssd-2.9.1.ebuild) | 7 | ||||
-rw-r--r-- | sys-auth/sssd/sssd-2.9.1-r1.ebuild | 333 |
4 files changed, 343 insertions, 4 deletions
diff --git a/sys-auth/sssd/Manifest b/sys-auth/sssd/Manifest index 0d2354296e50..8d1fc4c3c82d 100644 --- a/sys-auth/sssd/Manifest +++ b/sys-auth/sssd/Manifest @@ -4,6 +4,8 @@ AUX sssd-2.9.1-certmap-fix-partial-string-comparison.patch 3182 BLAKE2B 1e4a41d8 AUX sssd-2.9.1-conditional-python-install.patch 533 BLAKE2B ce076e4e00bd1b3e8a18427fde385b6a65fbbc65f28a542f575d3b77b8e7d277ebc829a7d43fdbced51475b69553de4fd6e564d52d06c6a83edcae7fa8a2a53a SHA512 4348577c16ab96717e0b92dcae00e955e76e9be6c58a6f6c4435f2315c8393336396e7a0ccdd05f50b97233a956ef674fd64589780500159748ac47c65edb623 AUX sssd-2.9.1-sssct-allow-cert-show-and-cert-eval-rule-as-non-root.patch 2137 BLAKE2B 58207d28ab800ae880aa7df1ac90055a9750bef31dcdef2a1152c0108797f82419aa3d26b6ab645e52449cff507f946e750ed261cf767b7181217dd979160bec SHA512 ca2794f7484b1b845184acbcb68dfa09dc582e0f6bd9a15b6c9929027414eb6a7fac7b77ba83585c12924dc9c70c3875e43dd6a71d4f83bc7aabef2506685f54 AUX sssd.conf 124 BLAKE2B b6f9c016a014510f97b036d23d5f50e1e13085220fe82b0e6ef7a3ceeb114e59af935f39e66e4ad60a46f43983930e5d381b16b0ed31ba4349abe38c4b509367 SHA512 f16908c44b213edbf6b0c6e8d49df92e8c06fc623279037074fe51e49b8aca7dc18f5ed83f71909fc8209df80dfc150583edb1687f88e61588bdf9d1fbf6ed5a +DIST sssd-2.6.0.tar.gz 7440969 BLAKE2B 6b05fcea09ef10a5b2f373dc6a66032edc4c4f46f65f42fdc9ffb5b676025095e16de4a86b3088351c22746e062829d1d68fa7e960cccb7c5a77d960e6d38e2a SHA512 0b9e169424cbadfa6132a3e5e9789facf82f04cce94cb5344b8ff49370ae8817c2cb16cf21caddf6a7cd42e661d5ff5bf97843d79681683aacff0053ff93f64b DIST sssd-2.9.1.tar.gz 7943540 BLAKE2B 9113b63d54beb40ba85c5b5c75068197317b3b8088119cf6557c6b4aed113d2d67f0bc64fc68fb34f4dbef54cccdb8b32ef44112115930751fdec5ec92e0a09b SHA512 eb7345dcfbbd51f005f67ee5032364d369d24589111ded60701e2dbe09563f0b862d343f231dd2e9d548acd8c560a036c8b88a0601f9aa048a7202da8202cd9b -EBUILD sssd-2.9.1.ebuild 8469 BLAKE2B 36d63a03c6bafb3833b36338494aa19c0c63b8699012ae336711eb50d595a3aa044be5735828a809237d42eaa26ca04e02de9330df4a35f49b127b33d561e1c4 SHA512 1be0d63f6a2c3c04024f398f4561003e6d08afc72cce356f1c5b7f8ac620040530872fd06a6a12c89d08852623614acfa23c3fbe98c2ef4f40d2634a02f606ed -MISC metadata.xml 1267 BLAKE2B 847adab267e38c20cf971df0613afbc7fce8c062dd29ce67df7f95fa5c631da010bfb9031bfbf300400359db6dc11a5a9a3b38cdaef01f48a8c8f47747bede68 SHA512 d088e62bf9365810693a46d765c4f951bdf96a6569ad52c161a7ea70adfe6e183f57894cb2e8aa45f2f9ebd3227b521e11fb5d2314783274bc2536ed393ec0e6 +EBUILD sssd-2.6.0-r3.ebuild 8594 BLAKE2B 850d1931cb612fe619a52f18420ef7ef990d5c678650a91b103f23a73ea20bef85f9b99fe346c90ddb4775b019152424a53b7453bd75cd57755d82c13988258d SHA512 6da4c6e44257bbf9cd6c7fac5528efc3e56ff16e39157d27d19137fc24912a2d768ca71d72645852534209875b2569e4cde15f53e324d08c83411a9ee0a1705a +EBUILD sssd-2.9.1-r1.ebuild 8594 BLAKE2B cb5cecb5cca8a7438db8a5ccbefd802b8bbdaf09e9a6193508f98a7ee778c7637ec8006b23ef7c4c9f4390a58552bb40bdc13e7c57d819c1e3cbf548bf14db3c SHA512 8ee3419dae9625f76f3657192741886649a0e12c504ba56182239a0874e0c455089dc0e6a1a32ba57ff08dc73e7160704c73660d9df3c166eb42dd87c3a28dec +MISC metadata.xml 1382 BLAKE2B 858581b958e6b5fed53b36447b8b91455e44d097694d4e940292274070e2e8a14a77f8f002db96359145c80502a8e1461e7c5124caa3956dfaf3ede959d2ae51 SHA512 218e910742da465683987e0d6941bdcdb234e3f3d59be4fb7765e2e28c1724c585f55f8fc4398ad0d0ae06a84ec6a29b8ae5190ac044a9bd22c6d50f914547a7 diff --git a/sys-auth/sssd/metadata.xml b/sys-auth/sssd/metadata.xml index e719d6e332fd..a4f6c50a3f9e 100644 --- a/sys-auth/sssd/metadata.xml +++ b/sys-auth/sssd/metadata.xml @@ -15,6 +15,7 @@ </maintainer> <use> <flag name="acl"> Build and use the cifsidmap plugin</flag> + <flag name="keyutils">Controls whether the kernel keyring should be used via <pkg>sys-apps/keyutils</pkg></flag> <flag name="netlink">Add support for netlink protocol via <pkg>dev-libs/libnl</pkg></flag> <flag name="nfsv4">Add support for the nfsv4 idmapd plugin provided by <pkg>net-fs/nfs-utils</pkg></flag> <flag name="samba">Add Privileged Attribute Certificate Support for Kerberos</flag> diff --git a/sys-auth/sssd/sssd-2.9.1.ebuild b/sys-auth/sssd/sssd-2.6.0-r3.ebuild index 416554744465..0f782032dec8 100644 --- a/sys-auth/sssd/sssd-2.9.1.ebuild +++ b/sys-auth/sssd/sssd-2.6.0-r3.ebuild @@ -24,7 +24,7 @@ fi LICENSE="GPL-3" SLOT="0" KEYWORDS="amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc x86" -IUSE="acl doc +netlink nfsv4 nls +man python samba selinux subid sudo systemd systemtap test" +IUSE="acl doc +netlink keyutils nfsv4 nls +man python samba selinux subid sudo systemd systemtap test" REQUIRED_USE=" python? ( ${PYTHON_REQUIRED_USE} ) test? ( sudo )" @@ -44,7 +44,6 @@ DEPEND=" >=net-dns/c-ares-1.10.0-r1:=[${MULTILIB_USEDEP}] >=net-nds/openldap-2.4.30:=[sasl,experimental] >=sys-apps/dbus-1.6 - >=sys-apps/keyutils-1.5:= >=sys-libs/pam-0-r1[${MULTILIB_USEDEP}] >=sys-libs/talloc-2.0.7 >=sys-libs/tdb-1.2.9 @@ -52,6 +51,7 @@ DEPEND=" >=sys-libs/ldb-1.1.17-r1:= virtual/libintl acl? ( net-fs/cifs-utils[acl] ) + keyutils? ( >=sys-apps/keyutils-1.5:= ) netlink? ( dev-libs/libnl:3 ) nfsv4? ( >=net-fs/nfs-utils-2.3.1-r2 ) nls? ( >=sys-devel/gettext-0.18 ) @@ -172,6 +172,9 @@ src_configure() { multilib_src_configure() { local myconf=() + export ac_cv_header_keyutils_h=$(usex keyutils) + export ac_cv_lib_keyutils_add_key=$(usex keyutils) + myconf+=( --libexecdir="${EPREFIX}"/usr/libexec --localstatedir="${EPREFIX}"/var diff --git a/sys-auth/sssd/sssd-2.9.1-r1.ebuild b/sys-auth/sssd/sssd-2.9.1-r1.ebuild new file mode 100644 index 000000000000..a8949592e303 --- /dev/null +++ b/sys-auth/sssd/sssd-2.9.1-r1.ebuild @@ -0,0 +1,333 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PLOCALES="ca de es fr ja ko pt_BR ru sv tr uk" +PLOCALES_BIN="${PLOCALES} bg cs eu fi hu id it ka nb nl pl pt tg zh_TW zh_CN" +PLOCALE_BACKUP="sv" +PYTHON_COMPAT=( python3_{10..12} ) + +inherit autotools linux-info multilib-minimal optfeature plocale \ + python-single-r1 pam systemd toolchain-funcs + +DESCRIPTION="System Security Services Daemon provides access to identity and authentication" +HOMEPAGE="https://github.com/SSSD/sssd" +if [[ ${PV} != 9999 ]]; then + SRC_URI="https://github.com/SSSD/sssd/releases/download/${PV}/${P}.tar.gz" +else + inherit git-r3 + EGIT_REPO_URI="https://github.com/SSSD/sssd.git" + EGIT_BRANCH="master" +fi + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc x86" +IUSE="acl doc keyutils +netlink nfsv4 nls +man python samba selinux subid sudo systemd systemtap test" +REQUIRED_USE=" + python? ( ${PYTHON_REQUIRED_USE} ) + test? ( sudo )" +RESTRICT="!test? ( test )" + +DEPEND=" + >=app-crypt/mit-krb5-1.19.1[${MULTILIB_USEDEP}] + app-crypt/p11-kit + >=dev-libs/ding-libs-0.2 + >=dev-libs/cyrus-sasl-2.1.25-r3[kerberos] + dev-libs/jansson:= + dev-libs/libpcre2:= + dev-libs/libunistring:= + >=dev-libs/popt-1.16 + >=dev-libs/openssl-1.0.2:= + >=net-dns/bind-tools-9.9[gssapi] + >=net-dns/c-ares-1.10.0-r1:=[${MULTILIB_USEDEP}] + >=net-nds/openldap-2.4.30:=[sasl,experimental] + >=sys-apps/dbus-1.6 + >=sys-libs/pam-0-r1[${MULTILIB_USEDEP}] + >=sys-libs/talloc-2.0.7 + >=sys-libs/tdb-1.2.9 + >=sys-libs/tevent-0.9.16 + >=sys-libs/ldb-1.1.17-r1:= + virtual/libintl + acl? ( net-fs/cifs-utils[acl] ) + keyutils? ( >=sys-apps/keyutils-1.5:= ) + netlink? ( dev-libs/libnl:3 ) + nfsv4? ( >=net-fs/nfs-utils-2.3.1-r2 ) + nls? ( >=sys-devel/gettext-0.18 ) + python? ( + ${PYTHON_DEPS} + systemd? ( + $(python_gen_cond_dep ' + dev-python/python-systemd[${PYTHON_USEDEP}] + ') + ) + ) + samba? ( >=net-fs/samba-4.10.2[winbind] ) + selinux? ( + >=sys-libs/libselinux-2.1.9 + >=sys-libs/libsemanage-2.1 + ) + subid? ( >=sys-apps/shadow-4.9 ) + systemd? ( + sys-apps/systemd:= + sys-apps/util-linux + ) + systemtap? ( dev-util/systemtap )" +RDEPEND="${DEPEND} + selinux? ( >=sec-policy/selinux-sssd-2.20120725-r9 )" +BDEPEND=" + virtual/pkgconfig + ${PYTHON_DEPS} + doc? ( app-doc/doxygen ) + man? ( + app-text/docbook-xml-dtd:4.4 + >=dev-libs/libxslt-1.1.26 + nls? ( app-text/po4a ) + ) + nls? ( sys-devel/gettext ) + test? ( + dev-libs/check + dev-libs/softhsm:2 + dev-util/cmocka + net-libs/gnutls[pkcs11,tools] + sys-libs/libfaketime + sys-libs/nss_wrapper + sys-libs/pam_wrapper + sys-libs/uid_wrapper + ) +" + +CONFIG_CHECK="~KEYS" + +PATCHES=( + "${FILESDIR}/${PN}-2.8.2-krb5_pw_locked.patch" + "${FILESDIR}/${PN}-2.9.1-BUILD-Accept-krb5-1.21-for-building-the-PAC-plugin.patch" + "${FILESDIR}/${PN}-2.9.1-certmap-fix-partial-string-comparison.patch" + "${FILESDIR}/${PN}-2.9.1-sssct-allow-cert-show-and-cert-eval-rule-as-non-root.patch" + "${FILESDIR}/${PN}-2.9.1-conditional-python-install.patch" +) + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/ipa_hbac.h + /usr/include/sss_idmap.h + /usr/include/sss_nss_idmap.h + # --with-ifp + /usr/include/sss_sifp.h + /usr/include/sss_sifp_dbus.h + # from 1.15.3 + /usr/include/sss_certmap.h +) + +pkg_setup() { + linux-info_pkg_setup + python-single-r1_pkg_setup +} + +src_prepare() { + default + + plocale_get_locales > src/man/po/LINGUAS || die + + sed -i \ + -e "/_langs]/ s/ .*//" \ + src/man/po/po4a.cfg \ + || die + enable_locale() { + local locale=${1} + + sed -i \ + -e "/_langs]/ s/$/ ${locale}/" \ + src/man/po/po4a.cfg \ + || die + } + + plocale_for_each_locale enable_locale + + PLOCALES="${PLOCALES_BIN}" + plocale_get_locales > po/LINGUAS || die + + sed -i \ + -e 's:/var/run:/run:' \ + src/examples/logrotate \ + || die + + # disable flaky test, see https://github.com/SSSD/sssd/issues/5631 + sed -i \ + -e '/^\s*pam-srv-tests[ \\]*$/d' \ + Makefile.am \ + || die + + eautoreconf + + multilib_copy_sources +} + +src_configure() { + local native_dbus_cflags=$($(tc-getPKG_CONFIG) --cflags dbus-1 || die) + + multilib-minimal_src_configure +} + +multilib_src_configure() { + local myconf=() + + export ac_cv_header_keyutils_h=$(usex keyutils) + export ac_cv_lib_keyutils_add_key=$(usex keyutils) + + myconf+=( + --libexecdir="${EPREFIX}"/usr/libexec + --localstatedir="${EPREFIX}"/var + --runstatedir="${EPREFIX}"/run + --sbindir="${EPREFIX}"/usr/sbin + --with-pid-path="${EPREFIX}"/run + --with-plugin-path="${EPREFIX}"/usr/$(get_libdir)/sssd + --enable-pammoddir="${EPREFIX}"/$(getpam_mod_dir) + --with-ldb-lib-dir="${EPREFIX}"/usr/$(get_libdir)/samba/ldb + --with-db-path="${EPREFIX}"/var/lib/sss/db + --with-gpo-cache-path="${EPREFIX}"/var/lib/sss/gpo_cache + --with-pubconf-path="${EPREFIX}"/var/lib/sss/pubconf + --with-pipe-path="${EPREFIX}"/var/lib/sss/pipes + --with-mcache-path="${EPREFIX}"/var/lib/sss/mc + --with-secrets-db-path="${EPREFIX}"/var/lib/sss/secrets + --with-log-path="${EPREFIX}"/var/log/sssd + --with-kcm + --enable-kcm-renewal + --with-os=gentoo + --disable-rpath + --disable-static + # Valgrind is only used for tests + --disable-valgrind + $(use_with samba) + --with-smb-idmap-interface-version=6 + $(multilib_native_use_enable acl cifs-idmap-plugin) + $(multilib_native_use_with selinux) + $(multilib_native_use_with selinux semanage) + --enable-krb5-locator-plugin + $(use_enable samba pac-responder) + $(multilib_native_use_with nfsv4 nfsv4-idmapd-plugin) + $(use_enable nls) + $(multilib_native_use_with netlink libnl) + $(multilib_native_use_with man manpages) + $(multilib_native_use_with sudo) + $(multilib_native_with autofs) + $(multilib_native_with ssh) + --without-oidc-child + --without-passkey + $(use_with subid) + $(use_enable systemtap) + --without-python2-bindings + $(multilib_native_use_with python python3-bindings) + # Annoyingly configure requires that you pick systemd XOR sysv + --with-initscript=$(usex systemd systemd sysv) + ) + + use systemd && myconf+=( + --with-systemdunitdir=$(systemd_get_systemunitdir) + ) + + if ! multilib_is_native_abi; then + # work-around all the libraries that are used for CLI and server + myconf+=( + {POPT,TALLOC,TDB,TEVENT,LDB}_{CFLAGS,LIBS}=' ' + # ldb headers are fine since native needs it + # ldb lib fails... but it does not seem to bother + {DHASH,UNISTRING,INI_CONFIG_V{0,1,1_1,1_3}}_{CFLAGS,LIBS}=' ' + {PCRE,CARES,SYSTEMD_LOGIN,SASL,DBUS,CRYPTO,P11_KIT}_{CFLAGS,LIBS}=' ' + {NDR_NBT,SAMBA_UTIL,SMBCLIENT,NDR_KRB5PAC,JANSSON}_{CFLAGS,LIBS}=' ' + + # use native include path for dbus (needed for build) + DBUS_CFLAGS="${native_dbus_cflags}" + + # non-pkgconfig checks + ac_cv_lib_ldap_ldap_search=yes + --without-kcm + --without-manpages + ) + fi + + econf "${myconf[@]}" +} + +multilib_src_compile() { + if multilib_is_native_abi; then + default + use doc && emake docs + else + emake libnss_sss.la pam_sss.la pam_sss_gss.la + emake sssd_krb5_locator_plugin.la + use samba && emake sssd_pac_plugin.la + fi +} + +multilib_src_test() { + if multilib_is_native_abi; then + local -x CK_TIMEOUT_MULTIPLIER=10 + emake check VERBOSE=yes + fi +} + +multilib_src_install() { + if multilib_is_native_abi; then + emake -j1 DESTDIR="${D}" install + if use python; then + python_fix_shebang "${ED}" + python_optimize + fi + else + # easier than playing with automake... + dopammod .libs/pam_sss.so + dopammod .libs/pam_sss_gss.so + + into / + dolib.so .libs/libnss_sss.so* + + exeinto /usr/$(get_libdir)/krb5/plugins/libkrb5 + doexe .libs/sssd_krb5_locator_plugin.so + + if use samba; then + exeinto /usr/$(get_libdir)/krb5/plugins/authdata + doexe .libs/sssd_pac_plugin.so + fi + fi +} + +multilib_src_install_all() { + einstalldocs + + insinto /etc/sssd + insopts -m600 + doins src/examples/sssd-example.conf + + insinto /etc/logrotate.d + insopts -m644 + newins src/examples/logrotate sssd + + newconfd "${FILESDIR}"/sssd.conf sssd + + keepdir /var/lib/sss/db + keepdir /var/lib/sss/deskprofile + keepdir /var/lib/sss/gpo_cache + keepdir /var/lib/sss/keytabs + keepdir /var/lib/sss/mc + keepdir /var/lib/sss/pipes/private + keepdir /var/lib/sss/pubconf/krb5.include.d + keepdir /var/lib/sss/secrets + keepdir /var/log/sssd + + # strip empty dirs + if ! use doc; then + rm -r "${ED}"/usr/share/doc/"${PF}"/doc || die + rm -r "${ED}"/usr/share/doc/"${PF}"/{hbac,idmap,nss_idmap}_doc || die + fi + + rm -r "${ED}"/run || die + find "${ED}" -type f -name '*.la' -delete || die +} + +pkg_postinst() { + elog "You must set up sssd.conf (default installed into /etc/sssd)" + elog "and (optionally) configuration in /etc/pam.d in order to use SSSD" + elog "features." + optfeature "Kerberos keytab renew (see krb5_renew_interval)" app-crypt/adcli +} |