From 57c2e006d0af9ab77ced676461d7100cade4a716 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 23 Nov 2022 01:07:24 +0000 Subject: gentoo auto-resync : 23:11:2022 - 01:07:24 --- sys-apps/Manifest.gz | Bin 49303 -> 49309 bytes sys-apps/gawk/Manifest | 5 +- sys-apps/gawk/gawk-5.2.1.ebuild | 131 ++++++++++ sys-apps/gawk/gawk-5.2.1_beta.ebuild | 131 ---------- sys-apps/shadow/Manifest | 3 +- .../files/shadow-4.13-configure-clang16.patch | 38 +++ sys-apps/shadow/shadow-4.13-r1.ebuild | 263 +++++++++++++++++++++ sys-apps/shadow/shadow-4.13.ebuild | 259 -------------------- 8 files changed, 437 insertions(+), 393 deletions(-) create mode 100644 sys-apps/gawk/gawk-5.2.1.ebuild delete mode 100644 sys-apps/gawk/gawk-5.2.1_beta.ebuild create mode 100644 sys-apps/shadow/files/shadow-4.13-configure-clang16.patch create mode 100644 sys-apps/shadow/shadow-4.13-r1.ebuild delete mode 100644 sys-apps/shadow/shadow-4.13.ebuild (limited to 'sys-apps') diff --git a/sys-apps/Manifest.gz b/sys-apps/Manifest.gz index 70ee954bb667..4afbf7ef8349 100644 Binary files a/sys-apps/Manifest.gz and b/sys-apps/Manifest.gz differ diff --git a/sys-apps/gawk/Manifest b/sys-apps/gawk/Manifest index 4b8962026c7e..171483cf5050 100644 --- a/sys-apps/gawk/Manifest +++ b/sys-apps/gawk/Manifest @@ -1,6 +1,7 @@ DIST gawk-5.1.1.tar.xz 3250860 BLAKE2B 35eec6f4c9bf52496ac16e4b0e1b98947ae0dd46d0ab1df9ec13ede24374a4917214e492182a16e25fc515fa62a765340914feac16a006d980ba1328634a5291 SHA512 794538fff03fdb9a8527a6898b26383d01988e8f8456f8d48131676387669a8bb3e706fa1a17f6b6316ddba0ebe653c24ad5dd769f357de509d6ec25f3ff1a43 DIST gawk-5.1.1.tar.xz.sig 488 BLAKE2B 1c7813753f3e982e1ef31efc7a1d78da4b977064b395e7b138ce09e68c1b9cb9a7b7de0d0b36afd6d39a2e62d5563cf7ceac6fcc73e9124ab07eceb56c0aa040 SHA512 71ecfa1b3a9e3005f033e83a75abce5c576c7941c62ed571cb6124032426db0e220bcdd577395d1af00a53c13dd1c8e6de71702cbe9c71960d3a3ff76dc026bd -DIST gawk-5.2.0b.tar.gz 6592187 BLAKE2B 3c6111fd8668597db6d2862e78f706dae0c826af82778cf96cd8aa2274e239c1d8c092def0dd4654a0bb8cf9b7fef3c3f20fcf29ce70c4c1298eca744d4609a9 SHA512 217ad67ee8a8f8dd03d4c10536c1c535a5b62cd6b7d63a1cd3248748b9fb5e180a669ef04b9887d88cd98ac00132450ac95b8ea820329cf0cca494d187af1d5d +DIST gawk-5.2.1.tar.xz 3411420 BLAKE2B 5dbbfe92ed4c11a38b2f995e9267dd2e392a9f393af1c63aaf3c5dd6d1681c01db900e05a118831125f914fcffe2218de7f30891ccc6f64abc5f572aef5feeff SHA512 f81da3e61987d1460326dc79fdbabacfd4660219bf66ec8ba18877500fd24e160761e401a5b868067f82bec46a6a808098f3f6a1f4c8b710e439cd3f99ffa56c +DIST gawk-5.2.1.tar.xz.sig 488 BLAKE2B 5dcdc9ae90d4744a968cc750526a9c1c38915f85c56c2eca80b219ba8519c927ab55b7f569d55054b0499f7bf37d3413b97e9d3cf36f5573f9ecd4855663064e SHA512 97a9cfb069f235bef31892ec6e5c56ee6a8733129ae3d02e871d5407de4d7a6140fc0a87001b2b21e3cffd714d1b4d164876de47144dfdce6dea92c670ed0217 EBUILD gawk-5.1.1-r2.ebuild 2762 BLAKE2B dc12406f53b61c3a99cfd3dfbbe0a430b4746920a78be5fb611b8d6c61a8de5e82ff2002d3b8c3d90562d408d26453ada810f60ceb4bef961875b677c8079e64 SHA512 96941cc2cf82f799bca38f8707b9cdce9764a817e5fdd950fd91be3de00f5ae6fee2660a2fd77b7effd9d42263a33ce40927525f076c2140a83d84b3af7fb887 -EBUILD gawk-5.2.1_beta.ebuild 3164 BLAKE2B d020c6d7164390dfd7ebdd4b2ce9819d4bc1b1c6b8d77adb7206a749eb0f638868a9e8ff8dcdf9a36a243f2c429db60da88c14997306bbb460b02f803b6213c4 SHA512 6dbb184abcca581af62c0551856fba3c741a9832b81610f4aafeeca2fc60e81f4cea9499bc88bdbf9cda0d7324034031b091d770f6e7cf58c98d87a9c922a7b1 +EBUILD gawk-5.2.1.ebuild 3163 BLAKE2B 6db3e5ed3bcb67114fb658df07e7e98e556bba3780e1185e8420eca420214b8de24800fae7ce1f3a708b0b8a61d880b5ec204073428613537f337c9cf5fe31d1 SHA512 b47425e0b3b35decfbf6d2872787ff65feda06f7a06c0218c9da25b4e34974b935ee6abca616a7910aa86ded51330f604a8c6ac3a52c2f8fd12f4d4bc02cd154 MISC metadata.xml 654 BLAKE2B e04183a376da2006e727296257a18431f2e4f29fdabcee48edebb1c9dbf099c846af6bfe90d9e551ec4536c2dd034a80b47e6a1b8e442a89c1228929bef7d956 SHA512 9bb5a19c4b9a8ff7669c7ae7320a88d64eb68b4897f06d2046f71efe562a4846cb8c611bcc03b0111dfde19b40275f3357a5cd6285d4d5f0b4464a9c8b3eacb2 diff --git a/sys-apps/gawk/gawk-5.2.1.ebuild b/sys-apps/gawk/gawk-5.2.1.ebuild new file mode 100644 index 000000000000..53a5f8031952 --- /dev/null +++ b/sys-apps/gawk/gawk-5.2.1.ebuild @@ -0,0 +1,131 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GAWK_IS_BETA=no + +DESCRIPTION="GNU awk pattern-matching language" +HOMEPAGE="https://www.gnu.org/software/gawk/gawk.html" + +if [[ ${GAWK_IS_BETA} == yes || ${PV} == *_beta* ]] ; then + if [[ ${PV} == *_beta* ]] ; then + # Beta versioning is sometimes for the release prior, e.g. + # 5.2.1_beta is labelled upstream as 5.2.0b. + MY_PV=${PV/_beta/b} + MY_PV=$(ver_cut 1-2 ${MY_PV}).$(($(ver_cut 3 ${MY_PV}) - 1))$(ver_cut 4- ${MY_PV}) + MY_P=${PN}-${MY_PV} + + S="${WORKDIR}"/${MY_P} + else + MY_P=${P} + fi + + SRC_URI="https://www.skeeve.com/gawk/${MY_P}.tar.gz" +else + VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/gawk.asc + inherit verify-sig + + SRC_URI="mirror://gnu/gawk/${P}.tar.xz" + SRC_URI+=" verify-sig? ( mirror://gnu/gawk/${P}.tar.xz.sig )" + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +fi + +LICENSE="GPL-3+" +SLOT="0" +IUSE="mpfr pma nls readline" + +RDEPEND=" + mpfr? ( + dev-libs/gmp:= + dev-libs/mpfr:= + ) + readline? ( sys-libs/readline:= ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + >=sys-apps/texinfo-6.7 + >=sys-devel/bison-3.5.4 + nls? ( sys-devel/gettext ) +" + +if [[ ${GAWK_IS_BETA} != yes ]] ; then + BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-gawk )" +fi + +src_prepare() { + default + + # Use symlinks rather than hardlinks, and disable version links + sed -i \ + -e '/^LN =/s:=.*:= $(LN_S):' \ + -e '/install-exec-hook:/s|$|\nfoo:|' \ + Makefile.in doc/Makefile.in || die + + # bug #413327 + sed -i '/^pty1:$/s|$|\n_pty1:|' test/Makefile.in || die + + # Fix standards conflict on Solaris + if [[ ${CHOST} == *-solaris* ]] ; then + sed -i \ + -e '/\<_XOPEN_SOURCE\>/s/1$/600/' \ + -e '/\<_XOPEN_SOURCE_EXTENDED\>/s/1//' \ + extension/inplace.c || die + fi +} + +src_configure() { + # Avoid automagic dependency on libsigsegv + export ac_cv_libsigsegv=no + + local myeconfargs=( + --cache-file="${S}"/config.cache + --libexec='$(libdir)/misc' + $(use_with mpfr) + $(use_enable nls) + $(use_enable pma) + $(use_with readline) + ) + + econf "${myeconfargs[@]}" +} + +src_install() { + # Automatic dodocs barfs + rm -rf README_d || die + + default + + # Install headers + insinto /usr/include/awk + doins *.h + rm "${ED}"/usr/include/awk/config.h || die +} + +pkg_postinst() { + # Symlink creation here as the links do not belong to gawk, but to any awk + if has_version app-admin/eselect && has_version app-eselect/eselect-awk ; then + eselect awk update ifunset + else + local l + for l in "${EROOT}"/usr/share/man/man1/gawk.1* "${EROOT}"/usr/bin/gawk ; do + if [[ -e ${l} ]] && ! [[ -e ${l/gawk/awk} ]] ; then + ln -s "${l##*/}" "${l/gawk/awk}" || die + fi + done + + if ! [[ -e ${EROOT}/bin/awk ]] ; then + # /bin might not exist yet (stage1) + [[ -d "${EROOT}/bin" ]] || mkdir "${EROOT}/bin" || die + + ln -s "../usr/bin/gawk" "${EROOT}/bin/awk" || die + fi + fi +} + +pkg_postrm() { + if has_version app-admin/eselect && has_version app-eselect/eselect-awk ; then + eselect awk update ifunset + fi +} diff --git a/sys-apps/gawk/gawk-5.2.1_beta.ebuild b/sys-apps/gawk/gawk-5.2.1_beta.ebuild deleted file mode 100644 index a9b72f556c44..000000000000 --- a/sys-apps/gawk/gawk-5.2.1_beta.ebuild +++ /dev/null @@ -1,131 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -GAWK_IS_BETA=yes - -DESCRIPTION="GNU awk pattern-matching language" -HOMEPAGE="https://www.gnu.org/software/gawk/gawk.html" - -if [[ ${GAWK_IS_BETA} == yes || ${PV} == *_beta* ]] ; then - if [[ ${PV} == *_beta* ]] ; then - # Beta versioning is sometimes for the release prior, e.g. - # 5.2.1_beta is labelled upstream as 5.2.0b. - MY_PV=${PV/_beta/b} - MY_PV=$(ver_cut 1-2 ${MY_PV}).$(($(ver_cut 3 ${MY_PV}) - 1))$(ver_cut 4- ${MY_PV}) - MY_P=${PN}-${MY_PV} - - S="${WORKDIR}"/${MY_P} - else - MY_P=${P} - fi - - SRC_URI="https://www.skeeve.com/gawk/${MY_P}.tar.gz" -else - VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/gawk.asc - inherit verify-sig - - SRC_URI="mirror://gnu/gawk/${P}.tar.xz" - SRC_URI+=" verify-sig? ( mirror://gnu/gawk/${P}.tar.xz.sig )" - - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -fi - -LICENSE="GPL-3+" -SLOT="0" -IUSE="mpfr pma nls readline" - -RDEPEND=" - mpfr? ( - dev-libs/gmp:= - dev-libs/mpfr:= - ) - readline? ( sys-libs/readline:= ) -" -DEPEND="${RDEPEND}" -BDEPEND=" - >=sys-apps/texinfo-6.7 - >=sys-devel/bison-3.5.4 - nls? ( sys-devel/gettext ) -" - -if [[ ${GAWK_IS_BETA} != yes ]] ; then - BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-gawk )" -fi - -src_prepare() { - default - - # Use symlinks rather than hardlinks, and disable version links - sed -i \ - -e '/^LN =/s:=.*:= $(LN_S):' \ - -e '/install-exec-hook:/s|$|\nfoo:|' \ - Makefile.in doc/Makefile.in || die - - # bug #413327 - sed -i '/^pty1:$/s|$|\n_pty1:|' test/Makefile.in || die - - # Fix standards conflict on Solaris - if [[ ${CHOST} == *-solaris* ]] ; then - sed -i \ - -e '/\<_XOPEN_SOURCE\>/s/1$/600/' \ - -e '/\<_XOPEN_SOURCE_EXTENDED\>/s/1//' \ - extension/inplace.c || die - fi -} - -src_configure() { - # Avoid automagic dependency on libsigsegv - export ac_cv_libsigsegv=no - - local myeconfargs=( - --cache-file="${S}"/config.cache - --libexec='$(libdir)/misc' - $(use_with mpfr) - $(use_enable nls) - $(use_enable pma) - $(use_with readline) - ) - - econf "${myeconfargs[@]}" -} - -src_install() { - # Automatic dodocs barfs - rm -rf README_d || die - - default - - # Install headers - insinto /usr/include/awk - doins *.h - rm "${ED}"/usr/include/awk/config.h || die -} - -pkg_postinst() { - # Symlink creation here as the links do not belong to gawk, but to any awk - if has_version app-admin/eselect && has_version app-eselect/eselect-awk ; then - eselect awk update ifunset - else - local l - for l in "${EROOT}"/usr/share/man/man1/gawk.1* "${EROOT}"/usr/bin/gawk ; do - if [[ -e ${l} ]] && ! [[ -e ${l/gawk/awk} ]] ; then - ln -s "${l##*/}" "${l/gawk/awk}" || die - fi - done - - if ! [[ -e ${EROOT}/bin/awk ]] ; then - # /bin might not exist yet (stage1) - [[ -d "${EROOT}/bin" ]] || mkdir "${EROOT}/bin" || die - - ln -s "../usr/bin/gawk" "${EROOT}/bin/awk" || die - fi - fi -} - -pkg_postrm() { - if has_version app-admin/eselect && has_version app-eselect/eselect-awk ; then - eselect awk update ifunset - fi -} diff --git a/sys-apps/shadow/Manifest b/sys-apps/shadow/Manifest index 02f1b4868635..51448aaee496 100644 --- a/sys-apps/shadow/Manifest +++ b/sys-apps/shadow/Manifest @@ -4,10 +4,11 @@ AUX pam.d-include/passwd 144 BLAKE2B 95e159c70416218950ad5cdc41c83b52f8d2ec042d3 AUX pam.d-include/shadow 152 BLAKE2B 82d1f678abc60586ea873da7e2f4907349d77a64085cc475fa09c47cb008b41a7a00a7de2816b2c5cb2f48452d1b07523be35f8dd29026736ba8fbd3ae3d7c56 SHA512 d07611c350d0d6f3386db5080c80a84e4135cf33e44fd3a390cb1092e034f9bd2a69495fadd4bda6ede9962e9658e77f2c8e12d3189cdcda6c7b3c607336f0c3 AUX pam.d-include/shadow-r1 116 BLAKE2B bc7baa8e224cb90b6ef79762941b3b7505fcf4b8ed8c5da06a33a8a7fefa91098e4ac0c0f915eeca4a19714d60a2bf43e3922805347e3dfe0ccc80f210bf88e4 SHA512 ddecc5cc8f667f9931ddf5d98d89a986712c5a6e44826add1e1d9ead37064758a3879f6afd1fc45c89c216956593852051e2ef3abc52e2ab58a0e191adfe75d1 AUX shadow-4.1.3-dots-in-usernames.patch 302 BLAKE2B a83f463be9267c3a704997b98d67cd0daddf8ee05debf447d091530517a855078bd53ce28c87045643b2b8c467dd09caad06a4eb0a6568c271e6a42b49a54dcc SHA512 ad20fb3f4f0292f39b5da796e41df71e9e8b1b81dd11a99b2d988440c1b435b0061333a0a5a37a909598d5a840a75946e8c59c74426bae7452de88cf673a5f7d +AUX shadow-4.13-configure-clang16.patch 1129 BLAKE2B 701c7e417c57265d9a7a2ee8eb6620ef6846018de24edacc04d0d4f63ff2e7e0a67382c459003d2bfa11e4dd3a49a227464315a4ef115da58c27889d7bdd7226 SHA512 057ea8a546953bea88ecb0b787b37d24113ea4881a9f86e55318647f85f8b56e204dbf3815811897d0cad2a8e50427c9fa84b6389e332e26c8cacc690835a942 DIST shadow-4.12.3.tar.xz 1747620 BLAKE2B 63b10d75a11d419156a996b8acf1bebbfab28999c2ab796e6625c028882073d4021806d8b56224190886c076a1205955e7797cb6f797ef73af3a8a33ac34bf2f SHA512 0529889258f54e7634762dc154aa680d55f8c5f1654afadd1b7431cfbb890a3b1ba27c7ff4b7c45986e4ee2289946db2e420b23ed13e4e5b15800a1fb3a013bc DIST shadow-4.12.3.tar.xz.asc 488 BLAKE2B b23525c3303f78df9d046c0225ed3ee1715cb000650630daae8b41fb71413daa45b5fe39a98fc640aaafa0f219fbaf9e065afa6b44f051373fb1967358ccc43d SHA512 d3f294d86c0e2174c88809810a801737c01cd01f9cadbe7b1ae382b2745d86e2e30c0718fa6489c2abb65500ed94c8ac1961d05243b5a1800c966384c69281c9 DIST shadow-4.13.tar.xz 1762908 BLAKE2B 315ab8a7e598aeefb50c11293e20cfa0982c3c3ae21c35ae243d09a4facf97a13c1d672990876e74ef94f5284402acf14997663743e2aaefa6cfc4369b7d24dc SHA512 2949a728c3312bef13d23138d6b79caf402781b1cb179e33b5be546c1790971ec20778d0e9cd3dbe09691d928ffcbe88e60da42fab58c69a90d5ebe5e3e2ab8e DIST shadow-4.13.tar.xz.asc 488 BLAKE2B de1f8285c5713a772343a2a7c638d1d13429dd4fa867d4f91d4922aa0d083b4a3110d38e8a8ab82137fdf4fecb12ba3677f3fb235401fc6438ae663fbd9bfbd2 SHA512 f8549c4e699c65721d53946d61b6127712572f7ad9ee13018ef3a25307002992aa727471c948d1bb22dcddf112715bed387d28f436123f30e153ae6bc0cd3648 EBUILD shadow-4.12.3.ebuild 6482 BLAKE2B bc7bc19a961369429b2850e04957c3c4b66aa6b57482897f051b4f93e9ca68c0dc1979e75b3323e498ed6da8bed01f0e56605a4fed0edb58f90e3ad8de9c42e7 SHA512 842e434b064fc30675805c360c1ff73830c9d01016d5f9a8f74ba70d0892f48de8e792e963d25b82db2d75380a51fcfd0789fc655f85e720f9c86d5bfc081192 -EBUILD shadow-4.13.ebuild 6601 BLAKE2B 1db9e6a25abefdf8f36228ffeeaf4f100e3bf2a0f053f6e2c218a41fcfeb3209f9e33698d572fae4841587b0fea792a9e3f93da2aa8c5472e0217715e53c2b6c SHA512 8f85e3d56e4af2154e233c1ee82e9b5eb8cb559b23f5c0ae19a98a19fce2b0d96294ad8a020140434fde7a8f77ae8c68a14390c17ab73a5d960ed0d2c8e7ec01 +EBUILD shadow-4.13-r1.ebuild 6658 BLAKE2B 6b124e978a6107dd2425c40450589b58252c33a2574deab3269c8032e6c09d5d8ddc494bdf57ab9e11d0f43d91977a31bead094a33fcc3696322d1cfd7d612ed SHA512 0a0e1e6c38f8ff7a1c325b8afe7f067a1e383833efbc09e44dcc6a40fee5d9a5ceb233a270d522833c7cf34275a2f36bc4fcb7c7c5bcd4744a151f5004759a4d MISC metadata.xml 606 BLAKE2B 2b14042f4702a908f8250c3fb6499ea33d8a8c44072707aa44881a36e3cc710256a821f8cd82c5214b32e9f5632745db4fdf00dd722f6fb7401e2f6b0bfbb4fd SHA512 694e039ae781982e8cbe6670b4e9c93b43455715ce4b9830a5fa61e6bf3eb91abcc284bf29c64fab055ba9754edaeab5d2da8140dbb2794fc1f534e2ccbb2b16 diff --git a/sys-apps/shadow/files/shadow-4.13-configure-clang16.patch b/sys-apps/shadow/files/shadow-4.13-configure-clang16.patch new file mode 100644 index 000000000000..4e703db93a6c --- /dev/null +++ b/sys-apps/shadow/files/shadow-4.13-configure-clang16.patch @@ -0,0 +1,38 @@ +https://github.com/shadow-maint/shadow/commit/a281f241b592aec636d1b93a99e764499d68c7ef +https://github.com/shadow-maint/shadow/pull/595 + +From a281f241b592aec636d1b93a99e764499d68c7ef Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Mon, 21 Nov 2022 11:52:45 +0100 +Subject: [PATCH] Fix HAVE_SHADOWGRP configure check + +The missing #include causes the configure check to fail +spuriously, resulting in HAVE_SHADOWGRP not being defined even +on systems that actually have sgetsgent (such as current glibc). +--- a/configure.ac ++++ b/configure.ac +@@ -116,6 +116,10 @@ if test "$ac_cv_header_shadow_h" = "yes"; then + ac_cv_libc_shadowgrp, + AC_RUN_IFELSE([AC_LANG_SOURCE([ + #include ++ #ifdef HAVE_GSHADOW_H ++ #include ++ #endif ++ int + main() + { + struct sgrp *sg = sgetsgent("test:x::"); + +--- a/configure ++++ b/configure +@@ -15684,6 +15684,10 @@ else $as_nop + /* end confdefs.h. */ + + #include ++ #ifdef HAVE_GSHADOW_H ++ #include ++ #endif ++ int + main() + { + struct sgrp *sg = sgetsgent("test:x::"); diff --git a/sys-apps/shadow/shadow-4.13-r1.ebuild b/sys-apps/shadow/shadow-4.13-r1.ebuild new file mode 100644 index 000000000000..16d90343c084 --- /dev/null +++ b/sys-apps/shadow/shadow-4.13-r1.ebuild @@ -0,0 +1,263 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Upstream sometimes pushes releases as pre-releases before marking them +# official. Don't keyword the pre-releases! +# Check https://github.com/shadow-maint/shadow/releases. + +VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/sergehallyn.asc +inherit libtool pam verify-sig + +DESCRIPTION="Utilities to deal with user accounts" +HOMEPAGE="https://github.com/shadow-maint/shadow" +SRC_URI="https://github.com/shadow-maint/shadow/releases/download/${PV}/${P}.tar.xz" +SRC_URI+=" verify-sig? ( https://github.com/shadow-maint/shadow/releases/download/${PV}/${P}.tar.xz.asc )" + +LICENSE="BSD GPL-2" +# Subslot is for libsubid's SONAME. +SLOT="0/4" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="acl audit bcrypt cracklib nls pam selinux skey split-usr su xattr" +# Taken from the man/Makefile.am file. +LANGS=( cs da de es fi fr hu id it ja ko pl pt_BR ru sv tr zh_CN zh_TW ) + +REQUIRED_USE="?? ( cracklib pam )" + +COMMON_DEPEND=" + virtual/libcrypt:= + acl? ( sys-apps/acl:0= ) + audit? ( >=sys-process/audit-2.6:0= ) + cracklib? ( >=sys-libs/cracklib-2.7-r3:0= ) + nls? ( virtual/libintl ) + pam? ( sys-libs/pam:0= ) + skey? ( sys-auth/skey:0= ) + selinux? ( + >=sys-libs/libselinux-1.28:0= + sys-libs/libsemanage:0= + ) + xattr? ( sys-apps/attr:0= ) +" +DEPEND="${COMMON_DEPEND} + >=sys-kernel/linux-headers-4.14 +" +RDEPEND="${COMMON_DEPEND} + !=sys-auth/pambase-20150213 ) + su? ( !sys-apps/util-linux[su(-)] ) +" +BDEPEND=" + app-arch/xz-utils + sys-devel/gettext + verify-sig? ( sec-keys/openpgp-keys-sergehallyn ) +" + +PATCHES=( + "${FILESDIR}"/${P}-configure-clang16.patch +) + +src_prepare() { + default + + elibtoolize +} + +src_configure() { + local myeconfargs=( + --disable-account-tools-setuid + --disable-static + --with-btrfs + --without-group-name-max-length + --without-tcb + $(use_enable nls) + $(use_with acl) + $(use_with audit) + $(use_with bcrypt) + $(use_with cracklib libcrack) + $(use_with elibc_glibc nscd) + $(use_with pam libpam) + $(use_with selinux) + $(use_with skey) + $(use_with su) + $(use_with xattr attr) + ) + + econf "${myeconfargs[@]}" + + if use nls ; then + local l langs="po" # These are the pot files. + for l in ${LANGS[*]} ; do + has ${l} ${LINGUAS-${l}} && langs+=" ${l}" + done + sed -i "/^SUBDIRS = /s:=.*:= ${langs}:" man/Makefile || die + fi +} + +set_login_opt() { + local comment="" opt=${1} val=${2} + if [[ -z ${val} ]]; then + comment="#" + sed -i \ + -e "/^${opt}\>/s:^:#:" \ + "${ED}"/etc/login.defs || die + else + sed -i -r \ + -e "/^#?${opt}\>/s:.*:${opt} ${val}:" \ + "${ED}"/etc/login.defs + fi + local res=$(grep "^${comment}${opt}\>" "${ED}"/etc/login.defs) + einfo "${res:-Unable to find ${opt} in /etc/login.defs}" +} + +src_install() { + emake DESTDIR="${D}" suidperms=4711 install + + # 4.9 regression: https://github.com/shadow-maint/shadow/issues/389 + emake DESTDIR="${D}" -C man install + + find "${ED}" -name '*.la' -type f -delete || die + + insinto /etc + if ! use pam ; then + insopts -m0600 + doins etc/login.access etc/limits + fi + + # needed for 'useradd -D' + insinto /etc/default + insopts -m0600 + doins "${FILESDIR}"/default/useradd + + if use split-usr ; then + # move passwd to / to help recover broke systems #64441 + # We cannot simply remove this or else net-misc/scponly + # and other tools will break because of hardcoded passwd + # location + dodir /bin + mv "${ED}"/usr/bin/passwd "${ED}"/bin/ || die + dosym ../../bin/passwd /usr/bin/passwd + fi + + cd "${S}" || die + insinto /etc + insopts -m0644 + newins etc/login.defs login.defs + + set_login_opt CREATE_HOME yes + if ! use pam ; then + set_login_opt MAIL_CHECK_ENAB no + set_login_opt SU_WHEEL_ONLY yes + set_login_opt CRACKLIB_DICTPATH /usr/lib/cracklib_dict + set_login_opt LOGIN_RETRIES 3 + set_login_opt ENCRYPT_METHOD SHA512 + set_login_opt CONSOLE + else + dopamd "${FILESDIR}"/pam.d-include/shadow + + for x in chsh shfn ; do + newpamd "${FILESDIR}"/pam.d-include/passwd ${x} + done + + for x in chpasswd newusers ; do + newpamd "${FILESDIR}"/pam.d-include/chpasswd ${x} + done + + newpamd "${FILESDIR}"/pam.d-include/shadow-r1 groupmems + + # Comment out login.defs options that pam hates + local opt sed_args=() + for opt in \ + CHFN_AUTH \ + CONSOLE \ + CRACKLIB_DICTPATH \ + ENV_HZ \ + ENVIRON_FILE \ + FAILLOG_ENAB \ + FTMP_FILE \ + LASTLOG_ENAB \ + MAIL_CHECK_ENAB \ + MOTD_FILE \ + NOLOGINS_FILE \ + OBSCURE_CHECKS_ENAB \ + PASS_ALWAYS_WARN \ + PASS_CHANGE_TRIES \ + PASS_MIN_LEN \ + PORTTIME_CHECKS_ENAB \ + QUOTAS_ENAB \ + SU_WHEEL_ONLY + do + set_login_opt ${opt} + sed_args+=( -e "/^#${opt}\>/b pamnote" ) + done + sed -i "${sed_args[@]}" \ + -e 'b exit' \ + -e ': pamnote; i# NOTE: This setting should be configured via /etc/pam.d/ and not in this file.' \ + -e ': exit' \ + "${ED}"/etc/login.defs || die + + # Remove manpages that pam will install for us + # and/or don't apply when using pam + find "${ED}"/usr/share/man -type f \ + '(' -name 'limits.5*' -o -name 'suauth.5*' ')' \ + -delete + + # Remove pam.d files provided by pambase. + rm "${ED}"/etc/pam.d/{login,passwd} || die + if use su ; then + rm "${ED}"/etc/pam.d/su || die + fi + fi + + # Remove manpages that are handled by other packages + find "${ED}"/usr/share/man -type f \ + '(' -name id.1 -o -name getspnam.3 ')' \ + -delete || die + + if ! use su ; then + find "${ED}"/usr/share/man -type f -name su.1 -delete || die + fi + + cd "${S}" || die + dodoc ChangeLog NEWS TODO + newdoc README README.download + cd doc || die + dodoc HOWTO README* WISHLIST *.txt +} + +pkg_preinst() { + rm -f "${EROOT}"/etc/pam.d/system-auth.new \ + "${EROOT}/etc/login.defs.new" +} + +pkg_postinst() { + # Missing entries from /etc/passwd can cause odd system blips. + # See bug #829872. + if ! pwck -r -q -R "${EROOT:-/}" &>/dev/null ; then + ewarn "Running 'pwck' returned errors. Please run it manually to fix any errors." + fi + + # Enable shadow groups. + if [[ ! -f "${EROOT}"/etc/gshadow ]] ; then + if grpck -r -R "${EROOT:-/}" 2>/dev/null ; then + grpconv -R "${EROOT:-/}" + else + ewarn "Running 'grpck' returned errors. Please run it by hand, and then" + ewarn "run 'grpconv' afterwards!" + fi + fi + + [[ ! -f "${EROOT}"/etc/subgid ]] && + touch "${EROOT}"/etc/subgid + [[ ! -f "${EROOT}"/etc/subuid ]] && + touch "${EROOT}"/etc/subuid + + einfo "The 'adduser' symlink to 'useradd' has been dropped." +} diff --git a/sys-apps/shadow/shadow-4.13.ebuild b/sys-apps/shadow/shadow-4.13.ebuild deleted file mode 100644 index 49415126ddb3..000000000000 --- a/sys-apps/shadow/shadow-4.13.ebuild +++ /dev/null @@ -1,259 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Upstream sometimes pushes releases as pre-releases before marking them -# official. Don't keyword the pre-releases! -# Check https://github.com/shadow-maint/shadow/releases. - -VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/sergehallyn.asc -inherit libtool pam verify-sig - -DESCRIPTION="Utilities to deal with user accounts" -HOMEPAGE="https://github.com/shadow-maint/shadow" -SRC_URI="https://github.com/shadow-maint/shadow/releases/download/${PV}/${P}.tar.xz" -SRC_URI+=" verify-sig? ( https://github.com/shadow-maint/shadow/releases/download/${PV}/${P}.tar.xz.asc )" - -LICENSE="BSD GPL-2" -# Subslot is for libsubid's SONAME. -SLOT="0/4" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="acl audit bcrypt cracklib nls pam selinux skey split-usr su xattr" -# Taken from the man/Makefile.am file. -LANGS=( cs da de es fi fr hu id it ja ko pl pt_BR ru sv tr zh_CN zh_TW ) - -REQUIRED_USE="?? ( cracklib pam )" - -COMMON_DEPEND=" - virtual/libcrypt:= - acl? ( sys-apps/acl:0= ) - audit? ( >=sys-process/audit-2.6:0= ) - cracklib? ( >=sys-libs/cracklib-2.7-r3:0= ) - nls? ( virtual/libintl ) - pam? ( sys-libs/pam:0= ) - skey? ( sys-auth/skey:0= ) - selinux? ( - >=sys-libs/libselinux-1.28:0= - sys-libs/libsemanage:0= - ) - xattr? ( sys-apps/attr:0= ) -" -DEPEND="${COMMON_DEPEND} - >=sys-kernel/linux-headers-4.14 -" -RDEPEND="${COMMON_DEPEND} - !=sys-auth/pambase-20150213 ) - su? ( !sys-apps/util-linux[su(-)] ) -" -BDEPEND=" - app-arch/xz-utils - sys-devel/gettext - verify-sig? ( sec-keys/openpgp-keys-sergehallyn ) -" - -src_prepare() { - default - - elibtoolize -} - -src_configure() { - local myeconfargs=( - --disable-account-tools-setuid - --disable-static - --with-btrfs - --without-group-name-max-length - --without-tcb - $(use_enable nls) - $(use_with acl) - $(use_with audit) - $(use_with bcrypt) - $(use_with cracklib libcrack) - $(use_with elibc_glibc nscd) - $(use_with pam libpam) - $(use_with selinux) - $(use_with skey) - $(use_with su) - $(use_with xattr attr) - ) - - econf "${myeconfargs[@]}" - - if use nls ; then - local l langs="po" # These are the pot files. - for l in ${LANGS[*]} ; do - has ${l} ${LINGUAS-${l}} && langs+=" ${l}" - done - sed -i "/^SUBDIRS = /s:=.*:= ${langs}:" man/Makefile || die - fi -} - -set_login_opt() { - local comment="" opt=${1} val=${2} - if [[ -z ${val} ]]; then - comment="#" - sed -i \ - -e "/^${opt}\>/s:^:#:" \ - "${ED}"/etc/login.defs || die - else - sed -i -r \ - -e "/^#?${opt}\>/s:.*:${opt} ${val}:" \ - "${ED}"/etc/login.defs - fi - local res=$(grep "^${comment}${opt}\>" "${ED}"/etc/login.defs) - einfo "${res:-Unable to find ${opt} in /etc/login.defs}" -} - -src_install() { - emake DESTDIR="${D}" suidperms=4711 install - - # 4.9 regression: https://github.com/shadow-maint/shadow/issues/389 - emake DESTDIR="${D}" -C man install - - find "${ED}" -name '*.la' -type f -delete || die - - insinto /etc - if ! use pam ; then - insopts -m0600 - doins etc/login.access etc/limits - fi - - # needed for 'useradd -D' - insinto /etc/default - insopts -m0600 - doins "${FILESDIR}"/default/useradd - - if use split-usr ; then - # move passwd to / to help recover broke systems #64441 - # We cannot simply remove this or else net-misc/scponly - # and other tools will break because of hardcoded passwd - # location - dodir /bin - mv "${ED}"/usr/bin/passwd "${ED}"/bin/ || die - dosym ../../bin/passwd /usr/bin/passwd - fi - - cd "${S}" || die - insinto /etc - insopts -m0644 - newins etc/login.defs login.defs - - set_login_opt CREATE_HOME yes - if ! use pam ; then - set_login_opt MAIL_CHECK_ENAB no - set_login_opt SU_WHEEL_ONLY yes - set_login_opt CRACKLIB_DICTPATH /usr/lib/cracklib_dict - set_login_opt LOGIN_RETRIES 3 - set_login_opt ENCRYPT_METHOD SHA512 - set_login_opt CONSOLE - else - dopamd "${FILESDIR}"/pam.d-include/shadow - - for x in chsh shfn ; do - newpamd "${FILESDIR}"/pam.d-include/passwd ${x} - done - - for x in chpasswd newusers ; do - newpamd "${FILESDIR}"/pam.d-include/chpasswd ${x} - done - - newpamd "${FILESDIR}"/pam.d-include/shadow-r1 groupmems - - # Comment out login.defs options that pam hates - local opt sed_args=() - for opt in \ - CHFN_AUTH \ - CONSOLE \ - CRACKLIB_DICTPATH \ - ENV_HZ \ - ENVIRON_FILE \ - FAILLOG_ENAB \ - FTMP_FILE \ - LASTLOG_ENAB \ - MAIL_CHECK_ENAB \ - MOTD_FILE \ - NOLOGINS_FILE \ - OBSCURE_CHECKS_ENAB \ - PASS_ALWAYS_WARN \ - PASS_CHANGE_TRIES \ - PASS_MIN_LEN \ - PORTTIME_CHECKS_ENAB \ - QUOTAS_ENAB \ - SU_WHEEL_ONLY - do - set_login_opt ${opt} - sed_args+=( -e "/^#${opt}\>/b pamnote" ) - done - sed -i "${sed_args[@]}" \ - -e 'b exit' \ - -e ': pamnote; i# NOTE: This setting should be configured via /etc/pam.d/ and not in this file.' \ - -e ': exit' \ - "${ED}"/etc/login.defs || die - - # Remove manpages that pam will install for us - # and/or don't apply when using pam - find "${ED}"/usr/share/man -type f \ - '(' -name 'limits.5*' -o -name 'suauth.5*' ')' \ - -delete - - # Remove pam.d files provided by pambase. - rm "${ED}"/etc/pam.d/{login,passwd} || die - if use su ; then - rm "${ED}"/etc/pam.d/su || die - fi - fi - - # Remove manpages that are handled by other packages - find "${ED}"/usr/share/man -type f \ - '(' -name id.1 -o -name getspnam.3 ')' \ - -delete || die - - if ! use su ; then - find "${ED}"/usr/share/man -type f -name su.1 -delete || die - fi - - cd "${S}" || die - dodoc ChangeLog NEWS TODO - newdoc README README.download - cd doc || die - dodoc HOWTO README* WISHLIST *.txt -} - -pkg_preinst() { - rm -f "${EROOT}"/etc/pam.d/system-auth.new \ - "${EROOT}/etc/login.defs.new" -} - -pkg_postinst() { - # Missing entries from /etc/passwd can cause odd system blips. - # See bug #829872. - if ! pwck -r -q -R "${EROOT:-/}" &>/dev/null ; then - ewarn "Running 'pwck' returned errors. Please run it manually to fix any errors." - fi - - # Enable shadow groups. - if [[ ! -f "${EROOT}"/etc/gshadow ]] ; then - if grpck -r -R "${EROOT:-/}" 2>/dev/null ; then - grpconv -R "${EROOT:-/}" - else - ewarn "Running 'grpck' returned errors. Please run it by hand, and then" - ewarn "run 'grpconv' afterwards!" - fi - fi - - [[ ! -f "${EROOT}"/etc/subgid ]] && - touch "${EROOT}"/etc/subgid - [[ ! -f "${EROOT}"/etc/subuid ]] && - touch "${EROOT}"/etc/subuid - - einfo "The 'adduser' symlink to 'useradd' has been dropped." -} -- cgit v1.2.3