[gentoo-dev] Last rites: media-video/gxine
# Michał Górny (2022-04-13) # Unmaintained. Last release in 2017, the Gentoo ebuild has not been # even bumped to it. Requires old dev-lang/spidermonkey that requires # Python 2.7. # Removal on 2022-05-13. Bug #838139. media-video/gxine -- Best regards, Michał Górny
[gentoo-dev] [PATCH v2 2/2] latex-package.eclass: Support EAPI 8
Create symlinks with dosym -r. Use debug-print-function. Document TEXMF. Signed-off-by: Ulrich Müller --- v2: Assign BDEPEND in EAPI 8 eclass/latex-package.eclass | 44 +++-- 1 file changed, 27 insertions(+), 17 deletions(-) diff --git a/eclass/latex-package.eclass b/eclass/latex-package.eclass index bee04b607de1..e04671211824 100644 --- a/eclass/latex-package.eclass +++ b/eclass/latex-package.eclass @@ -7,7 +7,7 @@ # @AUTHOR: # Matthew Turk # Martin Ehmsen -# @SUPPORTED_EAPIS: 7 +# @SUPPORTED_EAPIS: 7 8 # @BLURB: An eclass for easy installation of LaTeX packages # @DESCRIPTION: # This eClass is designed to be easy to use and implement. The vast majority of @@ -51,21 +51,29 @@ # you must either grab each file individually, or find a place to mirror an # archive of them. (iBiblio) +case ${EAPI} in + 7) inherit eapi8-dosym ;; + 8) ;; + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; +esac + if [[ -z ${_LATEX_PACKAGE_ECLASS} ]]; then _LATEX_PACKAGE_ECLASS=1 RDEPEND="virtual/latex-base" -DEPEND="${RDEPEND} +BDEPEND="${RDEPEND} >=sys-apps/texinfo-4.2-r5" -case ${EAPI:-0} in - [0-6]) - die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}" ;; - 7) ;; - *) die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" ;; -esac +if [[ ${EAPI} == 7 ]]; then + DEPEND="${BDEPEND}" + unset BDEPEND +fi HOMEPAGE="http://www.tug.org/"; + +# @ECLASS_VARIABLE: TEXMF +# @DESCRIPTION: +# Top-level installation path. TEXMF="/usr/share/texmf-site" # @ECLASS_VARIABLE: SUPPLIER @@ -90,7 +98,7 @@ LATEX_DOC_ARGUMENTS="" # It installs the files found in the current directory to the standard locations # for a TeX installation latex-package_src_doinstall() { - debug-print function $FUNCNAME $* + debug-print-function "${FUNCNAME}" "$@" # Avoid generating font cache outside of the sandbox export VARTEXFONTS="${T}/fonts" @@ -118,7 +126,9 @@ latex-package_src_doinstall() { while IFS= read -r -d '' i; do insinto /usr/share/doc/${PF} doins "${i}" - dosym "/usr/share/doc/${PF}/$(basename "${i}")" \ + local dosym=dosym + [[ ${EAPI} == 7 ]] && dosym=dosym8 + ${dosym} -r "/usr/share/doc/${PF}/$(basename "${i}")" \ "${TEXMF}/doc/latex/${PN}/${i}" docompress -x "/usr/share/doc/${PF}/$(basename "${i}")" done < <(find -maxdepth 1 -type f -name "*.${1}" -print0) @@ -200,7 +210,7 @@ latex-package_src_doinstall() { # Calls latex for each *.ins in the current directory in order to generate the # relevant files that will be installed latex-package_src_compile() { - debug-print function $FUNCNAME $* + debug-print-function "${FUNCNAME}" "$@" while IFS= read -r -d '' i; do einfo "Extracting from ${i}" latex --halt-on-error --interaction=nonstopmode "${i}" || die @@ -211,7 +221,7 @@ latex-package_src_compile() { # @DESCRIPTION: # Installs the package latex-package_src_install() { - debug-print function $FUNCNAME $* + debug-print-function "${FUNCNAME}" "$@" latex-package_src_doinstall all einstalldocs } @@ -221,7 +231,7 @@ latex-package_src_install() { # Calls latex-package_rehash to ensure the TeX installation is consistent with # the kpathsea database latex-package_pkg_postinst() { - debug-print function $FUNCNAME $* + debug-print-function "${FUNCNAME}" "$@" latex-package_rehash } @@ -230,7 +240,7 @@ latex-package_pkg_postinst() { # Calls latex-package_rehash to ensure the TeX installation is consistent with # the kpathsea database latex-package_pkg_postrm() { - debug-print function $FUNCNAME $* + debug-print-function "${FUNCNAME}" "$@" latex-package_rehash } @@ -238,10 +248,10 @@ latex-package_pkg_postrm() { # @DESCRIPTION: # Rehashes the kpathsea database, according to the current TeX installation latex-package_rehash() { - debug-print function $FUNCNAME $* + debug-print-function "${FUNCNAME}" "$@" texmf-update } -EXPORT_FUNCTIONS src_compile src_install pkg_postinst pkg_postrm - fi + +EXPORT_FUNCTIONS src_compile src_install pkg_postinst pkg_postrm -- 2.35.1
[gentoo-dev] [PATCH v2 1/2] latex-package.eclass: Properly quote variables
Bug: https://bugs.gentoo.org/379571 Signed-off-by: Ulrich Müller --- eclass/latex-package.eclass | 40 +++-- 1 file changed, 21 insertions(+), 19 deletions(-) diff --git a/eclass/latex-package.eclass b/eclass/latex-package.eclass index 359b5177bb37..bee04b607de1 100644 --- a/eclass/latex-package.eclass +++ b/eclass/latex-package.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: latex-package.eclass @@ -103,23 +103,24 @@ latex-package_src_doinstall() { case ${1} in "sh") while IFS= read -r -d '' i; do - dobin ${i} + dobin "${i}" done < <(find -maxdepth 1 -type f -name "*.${1}" -print0) ;; "sty" | "cls" | "fd" | "clo" | "def" | "cfg") while IFS= read -r -d '' i; do - insinto ${TEXMF}/tex/latex/${PN} - doins ${i} + insinto "${TEXMF}/tex/latex/${PN}" + doins "${i}" done < <(find -maxdepth 1 -type f -name "*.${1}" -print0) ;; "dvi" | "ps" | "pdf") while IFS= read -r -d '' i; do insinto /usr/share/doc/${PF} - doins ${i} - dosym /usr/share/doc/${PF}/$(basename ${i}) ${TEXMF}/doc/latex/${PN}/${i} - docompress -x /usr/share/doc/${PF}/$(basename ${i}) + doins "${i}" + dosym "/usr/share/doc/${PF}/$(basename "${i}")" \ + "${TEXMF}/doc/latex/${PN}/${i}" + docompress -x "/usr/share/doc/${PF}/$(basename "${i}")" done < <(find -maxdepth 1 -type f -name "*.${1}" -print0) ;; @@ -127,17 +128,18 @@ latex-package_src_doinstall() { if ! in_iuse doc || use doc ; then while IFS= read -r -d '' i; do [[ -n ${LATEX_PACKAGE_SKIP} ]] && - has ${i##*/} ${LATEX_PACKAGE_SKIP} && + has "${i##*/}" ${LATEX_PACKAGE_SKIP} && continue einfo "Making documentation: ${i}" # some macros need compiler called twice, do it here. - set -- pdflatex ${LATEX_DOC_ARGUMENTS} --halt-on-error --interaction=nonstopmode ${i} + set -- pdflatex ${LATEX_DOC_ARGUMENTS} \ + --halt-on-error --interaction=nonstopmode "${i}" if "${@}"; then "${@}" else einfo "pdflatex failed, trying texi2dvi" - texi2dvi -q -c --language=latex ${i} || die + texi2dvi -q -c --language=latex "${i}" || die fi done < <(find -maxdepth 1 -type f -name "*.${1}" -print0) fi @@ -145,27 +147,27 @@ latex-package_src_doinstall() { "tfm" | "vf" | "afm") while IFS= read -r -d '' i; do - insinto ${TEXMF}/fonts/${1}/${SUPPLIER}/${PN} - doins ${i} + insinto "${TEXMF}/fonts/${1}/${SUPPLIER}/${PN}" + doins "${i}" done < <(find -maxdepth 1 -type f -name "*.${1}" -print0) ;; "pfb") while IFS= read -r -d '' i; do - insinto ${TEXMF}/fonts/type1/${SUPPLIER}/${PN} - doins ${i} + insinto "${TEXMF}/fonts/type1/${SUPPLIER}/${PN}" +
Re: [gentoo-dev] [PATCH] 2022-04-12-ccache-4_6-sandbox: add news item
Hi, On 12/04/2022 09:53, Sam James wrote: Bug: https://bugs.gentoo.org/837362 Signed-off-by: Sam James --- .../2022-04-12-ccache-4_6-sandbox.en.txt | 25 +++ 1 file changed, 25 insertions(+) create mode 100644 2022-04-12-ccache-4_6-sandbox/2022-04-12-ccache-4_6-sandbox.en.txt Looks good to me :) Thanks, Matthew
Re: [gentoo-dev] proposal: use only one hash function in manifest files
On Mon, Apr 11, 2022 at 7:14 PM Joshua Kinard wrote: > > On 4/5/2022 17:49, Jason A. Donenfeld wrote: > > Hi Matt, > > > > On Tue, Apr 5, 2022 at 10:38 PM Matt Turner wrote: > >> > >> On Tue, Apr 5, 2022 at 12:30 PM Jason A. Donenfeld > >> wrote: > >>> By the way, we're not currently _checking_ two hash functions during > >>> src_prepare(), are we? > >> > >> I don't know, but the hash-checking is definitely checked before > >> src_prepare(). > > > > Er, during the builtin fetch phase. Anyway, you know what I meant. :) > > > > Anyway, looking at the portage source code, to answer my own question, > > it looks like the file is actually being read twice and both hashes > > computed. I would have at least expected an optimization like: > > > > hash1_init(&hash1); > > hash2_init(&hash2); > > for chunks in file: > > hash1_update(&hash1, chunk); > > hash2_update(&hash2, chunk); > > hash1_final(&hash1, out1); > > hash2_final(&hash2, out2); > > > > But actually what's happening is the even less efficient: > > > > hash1_init(&hash1); > > for chunks in file: > > hash1_update(&hash1, chunk); > > hash1_final(&hash1, out1); > > hash2_init(&hash2); > > for chunks in file: > > hash2_update(&hash2, chunk); > > hash1_final(&hash2, out2); > > > > So the file winds up being open and read twice. For huge tarballs like > > chromium or libreoffice... > > > > But either way you do it - the missed optimization above or the > > unoptimized reality below - there's still twice as much work being > > done. This is all unless I've misread the source code, which is > > possible, so if somebody knows this code well and I'm wrong here, > > please do speak up. > > Not to go off-topic, but where in Portage's source is this logic at? It > seems like an easy fix for a slightly more efficient Portage. I believe it's the portage.checksum.verify_all() function. https://gitweb.gentoo.org/proj/portage.git/tree/lib/portage/checksum.py?h=portage-3.0.30#n471
[gentoo-dev] [PATCH] 2022-04-12-ccache-4_6-sandbox: add news item
Bug: https://bugs.gentoo.org/837362 Signed-off-by: Sam James --- .../2022-04-12-ccache-4_6-sandbox.en.txt | 25 +++ 1 file changed, 25 insertions(+) create mode 100644 2022-04-12-ccache-4_6-sandbox/2022-04-12-ccache-4_6-sandbox.en.txt diff --git a/2022-04-12-ccache-4_6-sandbox/2022-04-12-ccache-4_6-sandbox.en.txt b/2022-04-12-ccache-4_6-sandbox/2022-04-12-ccache-4_6-sandbox.en.txt new file mode 100644 index 000..1dabea9 --- /dev/null +++ b/2022-04-12-ccache-4_6-sandbox/2022-04-12-ccache-4_6-sandbox.en.txt @@ -0,0 +1,25 @@ +Title: Sandbox issue with ccache 4.6 +Author: Sam James +Posted: 2022-04-12 +Revision: 1 +News-Item-Format: 2.0 +Display-If-Installed: =dev-util/ccache-4.6 + +Users with ccache enabled for the dev-util/ccache package itself may need +to temporarily disable ccache in order to upgrade the package. + +Users on an earlier version of ccache (<4.6) or newer (>=4.6-r1) are +unaffected. + +For a small window (between 2022-04-09-4:30AM UTC and 2022-04-09-11:27AM UTC), +the ccache ebuild may have caused a sandbox violation [0] in some circumstances. + +To resolve this issue, temporarily re-emerge dev-util/ccache with ccache +disabled: +# FEATURES="-ccache" emerge -v1 ">dev-util/ccache-4.6" + +The sandbox violations occur when trying to use ccache for any package; +users who do not have ccache enabled globally (or at least not for ccache +itself) should also proactively upgrade ccache as above. + +[0] https://bugs.gentoo.org/837362 -- 2.35.1
[gentoo-dev] Package up for grabs: app-forensics/rkhunter
Feel free to pick it up if interested.