From 40aaaa64e86ba6710bbeb31c4615a6ce80e75e11 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 28 Apr 2021 20:21:43 +0100 Subject: gentoo resync : 28.04.2021 --- app-misc/ca-certificates/Manifest | 10 +- .../ca-certificates-20200601.3.53.ebuild | 184 -------------------- .../ca-certificates-20200601.3.60.ebuild | 189 --------------------- .../ca-certificates-20210119.3.62.ebuild | 189 --------------------- .../ca-certificates-20210119.3.64.ebuild | 189 +++++++++++++++++++++ 5 files changed, 191 insertions(+), 570 deletions(-) delete mode 100644 app-misc/ca-certificates/ca-certificates-20200601.3.53.ebuild delete mode 100644 app-misc/ca-certificates/ca-certificates-20200601.3.60.ebuild delete mode 100644 app-misc/ca-certificates/ca-certificates-20210119.3.62.ebuild create mode 100644 app-misc/ca-certificates/ca-certificates-20210119.3.64.ebuild (limited to 'app-misc/ca-certificates') diff --git a/app-misc/ca-certificates/Manifest b/app-misc/ca-certificates/Manifest index 9f8fda7d4095..50ad53406873 100644 --- a/app-misc/ca-certificates/Manifest +++ b/app-misc/ca-certificates/Manifest @@ -1,12 +1,6 @@ AUX ca-certificates-20150426-root.patch 1336 BLAKE2B f52a2ab1f84a18e447b37905f2d4fc6a8b59b9931db387e9045167973a0bb98ee11164ccbc13c7ea7fb545fab45a8112df5806a5a13d2b77abf682eec1390a15 SHA512 4e68e6068921e9ed54bda68af422a491cb530b60ffbb85fe1986a403cd9023522c179b5afcf65e22c223a665163d1c2d1993322d652053b72e3fe07efe692d59 -DIST ca-certificates_20200601.tar.xz 245668 BLAKE2B 1249782dba046f52832d365e4770e02ed24c0b50bff4ceec5e5af932c807eb8120f8e3bc7858503e74789ecb2da577509819f3ffdf9bd1ec5cc22d61f2194ad5 SHA512 7bfd3122430be0a46bd10dcb0e0664561d1e0b2656b9f37677d89f71a1dcb0e668c25ffe08412888125fa9a53ee8245a4b3fc1004c419a159766665b1241113c DIST ca-certificates_20210119.tar.xz 232964 BLAKE2B 593352912d2b490e3f46ea032ac1ddf1c87a7ac93859d475461cbba490918cdec853b0bb30bb253a634d8d597ca6f0304bc81122b4b31b5b31fd6a80e1faaf33 SHA512 a824209fa0ff0865872a07d8e6b901d8407f599243810fd5c820e1f69226e05b0b4f1e25e5ff3d8d398ff952529084442f026e32220961f359f6323f6bf03373 -DIST nss-3.53.tar.gz 81178428 BLAKE2B 5e67b02bf0ba9390311d77ee4d7b86fd7339bd4f7d830b32563799e4eef126143f0b76b2933ad14c5c5d3da6cb3fa0e670aca7ce9654316123abadce25a728ec SHA512 280edf24356b764584200bff949af4a7f88514ee8ac80bf5348a9a844a8b1eb263e9aa1d772644bd8bb1bd195c12b6cc173280cfc88cd97e56562e1c40e71503 -DIST nss-3.60.tar.gz 82035831 BLAKE2B fffc0e26d58d4625be1b8b0123f248a0c7994b18868ece534ba4d60131dd4897d075d7b2dba672c31ccd333e0c18ea384e2aa2f495c23b5430d6d10b91922873 SHA512 6463b2da28b5d9f1f20d45f77a3179e2b93c874af5742c7fc51eb7c44cef93270acacf79174dc63905f227256cbcee23a36f98f1cfed10dd5c56ffc0a76e2695 -DIST nss-3.62.tar.gz 82159506 BLAKE2B 9abd7504766fb57214a16608a7299f8cf6d25c9a4e285665eabd812bce536ba244b698de31fd53796148f3856e4bee6c8a03ce5b6c5234a9337d7af8f300f007 SHA512 7044008ea8e5d6f658da96e202a896e24a1ffa29d7ca862f32ed37cfa09adf8c2d5fbc371e3af6bc5151b2d1216c38207976b41888d5ad8efd4dc3049cb5831d +DIST nss-3.64.tar.gz 82173054 BLAKE2B 4786a1ff6f4e47dbb6bfef6a2bc47ffeac51aa37f12168872d23799b8d6ca440578acf512e9ec7563ef64331d3fd84c387f17e41afa2ee30d8623c6f66207631 SHA512 0a85e1f64f97670f70596d8a479693939ca454025a4b3bbd557a54ed683ffed625c670fef6a6e3440365af9aa472384f84464942381b1c093659f6a6a222ba04 DIST nss-cacert-class1-class3-r1.patch 22503 BLAKE2B d2ba6b5c3675484dab5b6709478101a9dadc0baded3dbf891dcd04e5eb912079b87cdd17f893a0f539a2a53fb05357c6dd309fb624facac3b021c82c7424a91f SHA512 68906d2442986ad13ebf9cd97c26fac34af3efd5cfaacb3d7824adad966349ad796c9cec8dec44c46d5c571df88ce83aea02ce82e71da337aa4e1aeef58eda66 -DIST nss-cacert-class1-class3.patch 22950 BLAKE2B 9d5e60df5f161a3c27c41e5a9419440a54f888eda454e3cde5ebe626d4075b65cf9938b5144d0fb022377f4bd415bff5e5c67d104409860aa9391b3eb8872c68 SHA512 a5aa740bf110a3f0262e3f1ef2fc739ac2b44f042e220039d48aee8e97cd764d5c10718220364f4098aba955882bd02cadb5481512388971a8290312f88a7df0 -EBUILD ca-certificates-20200601.3.53.ebuild 5591 BLAKE2B caeca6b6ef04f9cffcd09f71a71e60f5a0bb83e2a17d250b7c70509d7b7c5a0157ca73551b3195f8e896967ca7693c286d654924a7e928a32588b4548169f0b5 SHA512 50173d5d27dea6a7425d59f05f7d6739a0c247ec171e641af26197746f28257fbdbe1e84ed2596a44bbf5ff2417e9e8526271cc6f552ba960ce95b30b6406f94 -EBUILD ca-certificates-20200601.3.60.ebuild 5736 BLAKE2B 676fdc86a69b8154d0cfe00d003d9ccc69092d62c2434ea641a10a2783562ece7662c9bf59789127acf6cca6870eb3f6388eeaeb3fc06d8978e091aac8ca92bb SHA512 f9ee82f49030ebdf44d4e399bdc8988e2bf4ebbe80a9dde88c192bd986ffd6305008d360f9a8ebe0795bf34af57e49ef451666f14cfd890f299e1d1ca867dad4 -EBUILD ca-certificates-20210119.3.62.ebuild 5727 BLAKE2B 5b7df2f363391a7c8b42e153533a8d0c3e00a61e5fa494348d0e45059e677fdcf85c5fbddc232e9b78d51de937708f027b9e91ff27df8e726b5c6e4f844f0c96 SHA512 2ede38f7742f442d3a61c192d552f3f35891a531fca69301bbc28bb881311976a5ef3164119506fa815a79cdf7a4f9142de7166c655ab053fdc4398b6cc783ca +EBUILD ca-certificates-20210119.3.64.ebuild 5728 BLAKE2B 323aaef8860d5274ed1f0bdeee8908b6a33459bea6104a3ae9e184b680354f10825fab8c5caa285ca4546fe58f66f9e9f52f8ce7272a649ef80633855d65097f SHA512 c2799ca417533ef987df370055d920555cb7fde7c57a540cb05b7314f951803b0782ab01cd9015493301489ab54818b10d0aef0070a44ab244f07b10892ef760 MISC metadata.xml 436 BLAKE2B f37fed732b387ea5e778bb88c349c78127b0db613def815d75e5cc2b7a7dbd049131eef33617fe3139975bd0c6bb187cf20e98c27e3ee10c3928b394fe6f02ac SHA512 dade84534ac0e574b3d127a1dc367b2f206874500057662d6139a00dc30506e1d977e3020b8e983750a8ef243bcfb34e152391d12027d88f8c116d151090ed9b diff --git a/app-misc/ca-certificates/ca-certificates-20200601.3.53.ebuild b/app-misc/ca-certificates/ca-certificates-20200601.3.53.ebuild deleted file mode 100644 index db37dd8ef656..000000000000 --- a/app-misc/ca-certificates/ca-certificates-20200601.3.53.ebuild +++ /dev/null @@ -1,184 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# The Debian ca-certificates package merely takes the CA database as it exists -# in the nss package and repackages it for use by openssl. -# -# The issue with using the compiled debs directly is two fold: -# - they do not update frequently enough for us to rely on them -# - they pull the CA database from nss tip of tree rather than the release -# -# So we take the Debian source tools and combine them with the latest nss -# release to produce (largely) the same end result. The difference is that -# now we know our cert database is kept in sync with nss and, if need be, -# can be sync with nss tip of tree more frequently to respond to bugs. - -# When triaging user reports, refer to our wiki for tips: -# https://wiki.gentoo.org/wiki/Certificates#Debugging_certificate_issues - -EAPI=6 - -PYTHON_COMPAT=( python3_{7..9} ) - -inherit eutils python-any-r1 - -if [[ ${PV} == *.* ]] ; then - # Compile from source ourselves. - PRECOMPILED=false - inherit eapi7-ver - - DEB_VER=$(ver_cut 1) - NSS_VER=$(ver_cut 2-) - RTM_NAME="NSS_${NSS_VER//./_}_RTM" -else - # Debian precompiled version. - PRECOMPILED=true - inherit unpacker -fi - -DESCRIPTION="Common CA Certificates PEM files" -HOMEPAGE="https://packages.debian.org/sid/ca-certificates" -NMU_PR="" -if ${PRECOMPILED} ; then - SRC_URI="mirror://debian/pool/main/c/${PN}/${PN}_${PV}${NMU_PR:++nmu}${NMU_PR}_all.deb" -else - SRC_URI="mirror://debian/pool/main/c/${PN}/${PN}_${DEB_VER}${NMU_PR:++nmu}${NMU_PR}.tar.xz - https://archive.mozilla.org/pub/security/nss/releases/${RTM_NAME}/src/nss-${NSS_VER}.tar.gz - cacert? ( - https://dev.gentoo.org/~axs/distfiles/nss-cacert-class1-class3.patch - )" -fi - -LICENSE="MPL-1.1" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~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 ~x86-winnt" -IUSE="" -${PRECOMPILED} || IUSE+=" cacert" - -DEPEND="" -if ${PRECOMPILED} ; then - DEPEND+=" !/dev/null || die - eapply -p0 "${DISTDIR}"/nss-cacert-class1-class3.patch - popd >/dev/null || die - fi - fi - - default - eapply -p2 "${FILESDIR}"/${PN}-20150426-root.patch - local relp=$(echo "${EPREFIX}" | sed -e 's:[^/]\+:..:g') - sed -i \ - -e '/="$ROOT/s:ROOT:ROOT'"${EPREFIX}"':' \ - -e '/RELPATH="\.\./s:"$:'"${relp}"'":' \ - -e 's/openssl rehash/c_rehash/' \ - usr/sbin/update-ca-certificates || die -} - -src_compile() { - cd "image/${EPREFIX}" || die - if ! ${PRECOMPILED} ; then - python_setup - local d="${S}/${PN}-${DEB_VER}/mozilla" c="usr/share/${PN}" - # Grab the database from the nss sources. - cp "${S}"/nss-${NSS_VER}/nss/lib/ckfw/builtins/{certdata.txt,nssckbi.h} "${d}" || die - emake -C "${d}" - - # Now move the files to the same places that the precompiled would. - mkdir -p etc/ssl/certs \ - etc/ca-certificates/update.d \ - "${c}"/mozilla \ - || die - if use cacert ; then - mkdir -p "${c}"/cacert.org || die - mv "${d}"/CAcert_Inc..crt \ - "${c}"/cacert.org/cacert.org_root.crt || die - fi - mv "${d}"/*.crt "${c}"/mozilla/ || die - else - mv usr/share/doc/{ca-certificates,${PF}} || die - fi - - ( - echo "# Automatically generated by ${CATEGORY}/${PF}" - echo "# $(date -u)" - echo "# Do not edit." - cd "${c}" || die - find * -name '*.crt' | LC_ALL=C sort - ) > etc/ca-certificates.conf - - sh usr/sbin/update-ca-certificates --root "${S}/image" || die -} - -src_install() { - cp -pPR image/* "${D}"/ || die - if ! ${PRECOMPILED} ; then - cd ${PN}-${DEB_VER} || die - doman sbin/*.8 - dodoc debian/README.* examples/ca-certificates-local/README - fi - - echo 'CONFIG_PROTECT_MASK="/etc/ca-certificates.conf"' > 98ca-certificates - doenvd 98ca-certificates -} - -pkg_postinst() { - if [[ -d "${EROOT%/}/usr/local/share/ca-certificates" ]] ; then - # if the user has local certs, we need to rebuild again - # to include their stuff in the db. - # However it's too overzealous when the user has custom certs in place. - # --fresh is to clean up dangling symlinks - "${EROOT%/}"/usr/sbin/update-ca-certificates --root "${ROOT}" - fi - - if [[ -n "$(find -L "${EROOT%/}"/etc/ssl/certs/ -type l)" ]] ; then - ewarn "Removing the following broken symlinks:" - ewarn "$(find -L "${EROOT%/}"/etc/ssl/certs/ -type l -printf '%p -> %l\n' -delete)" - fi -} diff --git a/app-misc/ca-certificates/ca-certificates-20200601.3.60.ebuild b/app-misc/ca-certificates/ca-certificates-20200601.3.60.ebuild deleted file mode 100644 index 2f777c592fc7..000000000000 --- a/app-misc/ca-certificates/ca-certificates-20200601.3.60.ebuild +++ /dev/null @@ -1,189 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# The Debian ca-certificates package merely takes the CA database as it exists -# in the nss package and repackages it for use by openssl. -# -# The issue with using the compiled debs directly is two fold: -# - they do not update frequently enough for us to rely on them -# - they pull the CA database from nss tip of tree rather than the release -# -# So we take the Debian source tools and combine them with the latest nss -# release to produce (largely) the same end result. The difference is that -# now we know our cert database is kept in sync with nss and, if need be, -# can be sync with nss tip of tree more frequently to respond to bugs. - -# When triaging user reports, refer to our wiki for tips: -# https://wiki.gentoo.org/wiki/Certificates#Debugging_certificate_issues - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..9} ) - -inherit python-any-r1 - -if [[ ${PV} == *.* ]] ; then - # Compile from source ourselves. - PRECOMPILED=false - - DEB_VER=$(ver_cut 1) - NSS_VER=$(ver_cut 2-) - RTM_NAME="NSS_${NSS_VER//./_}_RTM" -else - # Debian precompiled version. - PRECOMPILED=true - inherit unpacker -fi - -DESCRIPTION="Common CA Certificates PEM files" -HOMEPAGE="https://packages.debian.org/sid/ca-certificates" -NMU_PR="" -if ${PRECOMPILED} ; then - SRC_URI="mirror://debian/pool/main/c/${PN}/${PN}_${PV}${NMU_PR:++nmu}${NMU_PR}_all.deb" -else - SRC_URI="mirror://debian/pool/main/c/${PN}/${PN}_${DEB_VER}${NMU_PR:++nmu}${NMU_PR}.tar.xz - https://archive.mozilla.org/pub/security/nss/releases/${RTM_NAME}/src/nss-${NSS_VER}.tar.gz - cacert? ( - https://dev.gentoo.org/~whissi/dist/ca-certificates/nss-cacert-class1-class3-r1.patch - )" -fi - -LICENSE="MPL-1.1" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 ~x86-winnt" -IUSE="" -${PRECOMPILED} || IUSE+=" cacert" - -# c_rehash: we run `c_rehash` -# debianutils: we run `run-parts` -CDEPEND="app-misc/c_rehash - sys-apps/debianutils" - -BDEPEND="${CDEPEND}" -if ! ${PRECOMPILED} ; then - BDEPEND+=" ${PYTHON_DEPS}" -fi - -DEPEND="" -if ${PRECOMPILED} ; then - DEPEND+=" !/dev/null || die - eapply "${DISTDIR}"/nss-cacert-class1-class3-r1.patch - popd >/dev/null || die - fi - fi - - default - eapply -p2 "${FILESDIR}"/${PN}-20150426-root.patch - local relp=$(echo "${EPREFIX}" | sed -e 's:[^/]\+:..:g') - sed -i \ - -e '/="$ROOT/s:ROOT:ROOT'"${EPREFIX}"':' \ - -e '/RELPATH="\.\./s:"$:'"${relp}"'":' \ - -e 's/openssl rehash/c_rehash/' \ - usr/sbin/update-ca-certificates || die -} - -src_compile() { - cd "image/${EPREFIX}" || die - if ! ${PRECOMPILED} ; then - python_setup - local d="${S}/${PN}-${DEB_VER}/mozilla" c="usr/share/${PN}" - # Grab the database from the nss sources. - cp "${S}"/nss-${NSS_VER}/nss/lib/ckfw/builtins/{certdata.txt,nssckbi.h} "${d}" || die - emake -C "${d}" - - # Now move the files to the same places that the precompiled would. - mkdir -p etc/ssl/certs \ - etc/ca-certificates/update.d \ - "${c}"/mozilla \ - || die - if use cacert ; then - mkdir -p "${c}"/cacert.org || die - mv "${d}"/CA_Cert_Signing_Authority.crt \ - "${c}"/cacert.org/cacert.org_class1.crt || die - mv "${d}"/CAcert_Class_3_Root.crt \ - "${c}"/cacert.org/cacert.org_class3.crt || die - fi - mv "${d}"/*.crt "${c}"/mozilla/ || die - else - mv usr/share/doc/{ca-certificates,${PF}} || die - fi - - ( - echo "# Automatically generated by ${CATEGORY}/${PF}" - echo "# $(date -u)" - echo "# Do not edit." - cd "${c}" || die - find * -name '*.crt' | LC_ALL=C sort - ) > etc/ca-certificates.conf - - sh usr/sbin/update-ca-certificates --root "${S}/image" || die -} - -src_install() { - cp -pPR image/* "${D}"/ || die - if ! ${PRECOMPILED} ; then - cd ${PN}-${DEB_VER} || die - doman sbin/*.8 - dodoc debian/README.* examples/ca-certificates-local/README - fi - - echo 'CONFIG_PROTECT_MASK="/etc/ca-certificates.conf"' > 98ca-certificates - doenvd 98ca-certificates -} - -pkg_postinst() { - if [[ -d "${EROOT}/usr/local/share/ca-certificates" ]] ; then - # if the user has local certs, we need to rebuild again - # to include their stuff in the db. - # However it's too overzealous when the user has custom certs in place. - # --fresh is to clean up dangling symlinks - "${EROOT}"/usr/sbin/update-ca-certificates --root "${ROOT}" - fi - - if [[ -n "$(find -L "${EROOT}"/etc/ssl/certs/ -type l)" ]] ; then - ewarn "Removing the following broken symlinks:" - ewarn "$(find -L "${EROOT}"/etc/ssl/certs/ -type l -printf '%p -> %l\n' -delete)" - fi -} diff --git a/app-misc/ca-certificates/ca-certificates-20210119.3.62.ebuild b/app-misc/ca-certificates/ca-certificates-20210119.3.62.ebuild deleted file mode 100644 index f49a7923491d..000000000000 --- a/app-misc/ca-certificates/ca-certificates-20210119.3.62.ebuild +++ /dev/null @@ -1,189 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# The Debian ca-certificates package merely takes the CA database as it exists -# in the nss package and repackages it for use by openssl. -# -# The issue with using the compiled debs directly is two fold: -# - they do not update frequently enough for us to rely on them -# - they pull the CA database from nss tip of tree rather than the release -# -# So we take the Debian source tools and combine them with the latest nss -# release to produce (largely) the same end result. The difference is that -# now we know our cert database is kept in sync with nss and, if need be, -# can be sync with nss tip of tree more frequently to respond to bugs. - -# When triaging user reports, refer to our wiki for tips: -# https://wiki.gentoo.org/wiki/Certificates#Debugging_certificate_issues - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..9} ) - -inherit python-any-r1 - -if [[ ${PV} == *.* ]] ; then - # Compile from source ourselves. - PRECOMPILED=false - - DEB_VER=$(ver_cut 1) - NSS_VER=$(ver_cut 2-) - RTM_NAME="NSS_${NSS_VER//./_}_RTM" -else - # Debian precompiled version. - PRECOMPILED=true - inherit unpacker -fi - -DESCRIPTION="Common CA Certificates PEM files" -HOMEPAGE="https://packages.debian.org/sid/ca-certificates" -NMU_PR="" -if ${PRECOMPILED} ; then - SRC_URI="mirror://debian/pool/main/c/${PN}/${PN}_${PV}${NMU_PR:++nmu}${NMU_PR}_all.deb" -else - SRC_URI="mirror://debian/pool/main/c/${PN}/${PN}_${DEB_VER}${NMU_PR:++nmu}${NMU_PR}.tar.xz - https://archive.mozilla.org/pub/security/nss/releases/${RTM_NAME}/src/nss-${NSS_VER}.tar.gz - cacert? ( - https://dev.gentoo.org/~whissi/dist/ca-certificates/nss-cacert-class1-class3-r1.patch - )" -fi - -LICENSE="MPL-1.1" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~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 ~x86-winnt" -IUSE="" -${PRECOMPILED} || IUSE+=" cacert" - -# c_rehash: we run `c_rehash` -# debianutils: we run `run-parts` -CDEPEND="app-misc/c_rehash - sys-apps/debianutils" - -BDEPEND="${CDEPEND}" -if ! ${PRECOMPILED} ; then - BDEPEND+=" ${PYTHON_DEPS}" -fi - -DEPEND="" -if ${PRECOMPILED} ; then - DEPEND+=" !/dev/null || die - eapply "${DISTDIR}"/nss-cacert-class1-class3-r1.patch - popd >/dev/null || die - fi - fi - - default - eapply -p2 "${FILESDIR}"/${PN}-20150426-root.patch - local relp=$(echo "${EPREFIX}" | sed -e 's:[^/]\+:..:g') - sed -i \ - -e '/="$ROOT/s:ROOT:ROOT'"${EPREFIX}"':' \ - -e '/RELPATH="\.\./s:"$:'"${relp}"'":' \ - -e 's/openssl rehash/c_rehash/' \ - usr/sbin/update-ca-certificates || die -} - -src_compile() { - cd "image/${EPREFIX}" || die - if ! ${PRECOMPILED} ; then - python_setup - local d="${S}/${PN}-${DEB_VER}/mozilla" c="usr/share/${PN}" - # Grab the database from the nss sources. - cp "${S}"/nss-${NSS_VER}/nss/lib/ckfw/builtins/{certdata.txt,nssckbi.h} "${d}" || die - emake -C "${d}" - - # Now move the files to the same places that the precompiled would. - mkdir -p etc/ssl/certs \ - etc/ca-certificates/update.d \ - "${c}"/mozilla \ - || die - if use cacert ; then - mkdir -p "${c}"/cacert.org || die - mv "${d}"/CA_Cert_Signing_Authority.crt \ - "${c}"/cacert.org/cacert.org_class1.crt || die - mv "${d}"/CAcert_Class_3_Root.crt \ - "${c}"/cacert.org/cacert.org_class3.crt || die - fi - mv "${d}"/*.crt "${c}"/mozilla/ || die - else - mv usr/share/doc/{ca-certificates,${PF}} || die - fi - - ( - echo "# Automatically generated by ${CATEGORY}/${PF}" - echo "# $(date -u)" - echo "# Do not edit." - cd "${c}" || die - find * -name '*.crt' | LC_ALL=C sort - ) > etc/ca-certificates.conf - - sh usr/sbin/update-ca-certificates --root "${S}/image" || die -} - -src_install() { - cp -pPR image/* "${D}"/ || die - if ! ${PRECOMPILED} ; then - cd ${PN}-${DEB_VER} || die - doman sbin/*.8 - dodoc debian/README.* examples/ca-certificates-local/README - fi - - echo 'CONFIG_PROTECT_MASK="/etc/ca-certificates.conf"' > 98ca-certificates - doenvd 98ca-certificates -} - -pkg_postinst() { - if [[ -d "${EROOT}/usr/local/share/ca-certificates" ]] ; then - # if the user has local certs, we need to rebuild again - # to include their stuff in the db. - # However it's too overzealous when the user has custom certs in place. - # --fresh is to clean up dangling symlinks - "${EROOT}"/usr/sbin/update-ca-certificates --root "${ROOT}" - fi - - if [[ -n "$(find -L "${EROOT}"/etc/ssl/certs/ -type l)" ]] ; then - ewarn "Removing the following broken symlinks:" - ewarn "$(find -L "${EROOT}"/etc/ssl/certs/ -type l -printf '%p -> %l\n' -delete)" - fi -} diff --git a/app-misc/ca-certificates/ca-certificates-20210119.3.64.ebuild b/app-misc/ca-certificates/ca-certificates-20210119.3.64.ebuild new file mode 100644 index 000000000000..267df1da9ccf --- /dev/null +++ b/app-misc/ca-certificates/ca-certificates-20210119.3.64.ebuild @@ -0,0 +1,189 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# The Debian ca-certificates package merely takes the CA database as it exists +# in the nss package and repackages it for use by openssl. +# +# The issue with using the compiled debs directly is two fold: +# - they do not update frequently enough for us to rely on them +# - they pull the CA database from nss tip of tree rather than the release +# +# So we take the Debian source tools and combine them with the latest nss +# release to produce (largely) the same end result. The difference is that +# now we know our cert database is kept in sync with nss and, if need be, +# can be sync with nss tip of tree more frequently to respond to bugs. + +# When triaging user reports, refer to our wiki for tips: +# https://wiki.gentoo.org/wiki/Certificates#Debugging_certificate_issues + +EAPI=7 + +PYTHON_COMPAT=( python3_{7..9} ) + +inherit python-any-r1 + +if [[ ${PV} == *.* ]] ; then + # Compile from source ourselves. + PRECOMPILED=false + + DEB_VER=$(ver_cut 1) + NSS_VER=$(ver_cut 2-) + RTM_NAME="NSS_${NSS_VER//./_}_RTM" +else + # Debian precompiled version. + PRECOMPILED=true + inherit unpacker +fi + +DESCRIPTION="Common CA Certificates PEM files" +HOMEPAGE="https://packages.debian.org/sid/ca-certificates" +NMU_PR="" +if ${PRECOMPILED} ; then + SRC_URI="mirror://debian/pool/main/c/${PN}/${PN}_${PV}${NMU_PR:++nmu}${NMU_PR}_all.deb" +else + SRC_URI="mirror://debian/pool/main/c/${PN}/${PN}_${DEB_VER}${NMU_PR:++nmu}${NMU_PR}.tar.xz + https://archive.mozilla.org/pub/security/nss/releases/${RTM_NAME}/src/nss-${NSS_VER}.tar.gz + cacert? ( + https://dev.gentoo.org/~whissi/dist/ca-certificates/nss-cacert-class1-class3-r1.patch + )" +fi + +LICENSE="MPL-1.1" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~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 ~x86-winnt" +IUSE="" +${PRECOMPILED} || IUSE+=" cacert" + +# c_rehash: we run `c_rehash` +# debianutils: we run `run-parts` +CDEPEND="app-misc/c_rehash + sys-apps/debianutils" + +BDEPEND="${CDEPEND}" +if ! ${PRECOMPILED} ; then + BDEPEND+=" ${PYTHON_DEPS}" +fi + +DEPEND="" +if ${PRECOMPILED} ; then + DEPEND+=" !/dev/null || die + eapply "${DISTDIR}"/nss-cacert-class1-class3-r1.patch + popd >/dev/null || die + fi + fi + + default + eapply -p2 "${FILESDIR}"/${PN}-20150426-root.patch + local relp=$(echo "${EPREFIX}" | sed -e 's:[^/]\+:..:g') + sed -i \ + -e '/="$ROOT/s:ROOT:ROOT'"${EPREFIX}"':' \ + -e '/RELPATH="\.\./s:"$:'"${relp}"'":' \ + -e 's/openssl rehash/c_rehash/' \ + usr/sbin/update-ca-certificates || die +} + +src_compile() { + cd "image/${EPREFIX}" || die + if ! ${PRECOMPILED} ; then + python_setup + local d="${S}/${PN}-${DEB_VER}/mozilla" c="usr/share/${PN}" + # Grab the database from the nss sources. + cp "${S}"/nss-${NSS_VER}/nss/lib/ckfw/builtins/{certdata.txt,nssckbi.h} "${d}" || die + emake -C "${d}" + + # Now move the files to the same places that the precompiled would. + mkdir -p etc/ssl/certs \ + etc/ca-certificates/update.d \ + "${c}"/mozilla \ + || die + if use cacert ; then + mkdir -p "${c}"/cacert.org || die + mv "${d}"/CA_Cert_Signing_Authority.crt \ + "${c}"/cacert.org/cacert.org_class1.crt || die + mv "${d}"/CAcert_Class_3_Root.crt \ + "${c}"/cacert.org/cacert.org_class3.crt || die + fi + mv "${d}"/*.crt "${c}"/mozilla/ || die + else + mv usr/share/doc/{ca-certificates,${PF}} || die + fi + + ( + echo "# Automatically generated by ${CATEGORY}/${PF}" + echo "# $(date -u)" + echo "# Do not edit." + cd "${c}" || die + find * -name '*.crt' | LC_ALL=C sort + ) > etc/ca-certificates.conf + + sh usr/sbin/update-ca-certificates --root "${S}/image" || die +} + +src_install() { + cp -pPR image/* "${D}"/ || die + if ! ${PRECOMPILED} ; then + cd ${PN}-${DEB_VER} || die + doman sbin/*.8 + dodoc debian/README.* examples/ca-certificates-local/README + fi + + echo 'CONFIG_PROTECT_MASK="/etc/ca-certificates.conf"' > 98ca-certificates + doenvd 98ca-certificates +} + +pkg_postinst() { + if [[ -d "${EROOT}/usr/local/share/ca-certificates" ]] ; then + # if the user has local certs, we need to rebuild again + # to include their stuff in the db. + # However it's too overzealous when the user has custom certs in place. + # --fresh is to clean up dangling symlinks + "${EROOT}"/usr/sbin/update-ca-certificates --root "${ROOT}" + fi + + if [[ -n "$(find -L "${EROOT}"/etc/ssl/certs/ -type l)" ]] ; then + ewarn "Removing the following broken symlinks:" + ewarn "$(find -L "${EROOT}"/etc/ssl/certs/ -type l -printf '%p -> %l\n' -delete)" + fi +} -- cgit v1.2.3