[gentoo-portage-dev] [PATCH] pid-sandbox: pid-ns-init TIOCSCTTY after setsid (bug 675868)
Set the controlling terminal to the stdout pty after calling setsid, in order to avoid "No such device or address" ENXIO errors when attempting to open /dev/tty. Bug: https://bugs.gentoo.org/675868 Signed-off-by: Zac Medico --- bin/pid-ns-init | 11 +++ 1 file changed, 11 insertions(+) diff --git a/bin/pid-ns-init b/bin/pid-ns-init index f01d69fc2..ac4509bd0 100644 --- a/bin/pid-ns-init +++ b/bin/pid-ns-init @@ -3,12 +3,14 @@ # Distributed under the terms of the GNU General Public License v2 import errno +import fcntl import functools import os import platform import signal import subprocess import sys +import termios KILL_SIGNALS = ( @@ -75,6 +77,15 @@ def main(argv): # Isolate parent process from process group SIGSTOP (bug 675870) setsid = True os.setsid() + try: + fcntl.ioctl(sys.stdout, termios.TIOCSCTTY, 0) + except OSError as e: + if e.errno == errno.EPERM: + # This means that stdout refers to the same tty as the parent + # process, and in this case we do not want to steel it. + pass + else: + raise proc = subprocess.Popen(args, executable=binary, **popen_kwargs) main_child_pid = proc.pid -- 2.18.1
Re: [gentoo-dev] [PATCH] eclass/webapp.eclass: fix ROOT path with EAPI=7
*ping* Any thoughts on this? > con...@kostecki.com hat am 17. November 2018 um 21:35 geschrieben: > > > From: Conrad Kostecki > > Closes: https://bugs.gentoo.org/671258 > Signed-off-by: Conrad Kostecki > --- > eclass/webapp.eclass | 14 +++--- > 1 file changed, 7 insertions(+), 7 deletions(-) > > diff --git a/eclass/webapp.eclass b/eclass/webapp.eclass > index 8983af334ab..e11835735ca 100644 > --- a/eclass/webapp.eclass > +++ b/eclass/webapp.eclass > @@ -42,9 +42,9 @@ IS_REPLACE=0 > INSTALL_CHECK_FILE="installed_by_webapp_eclass" > SETUP_CHECK_FILE="setup_by_webapp_eclass" > > -ETC_CONFIG="${ROOT}etc/vhosts/webapp-config" > -WEBAPP_CONFIG="${ROOT}usr/sbin/webapp-config" > -WEBAPP_CLEANER="${ROOT}usr/sbin/webapp-cleaner" > +ETC_CONFIG="${ROOT%/}/etc/vhosts/webapp-config" > +WEBAPP_CONFIG="${ROOT%/}/usr/sbin/webapp-config" > +WEBAPP_CLEANER="${ROOT%/}/usr/sbin/webapp-cleaner" > > # > == > # INTERNAL FUNCTIONS > @@ -365,7 +365,7 @@ webapp_src_preinst() { > # @DESCRIPTION: > # The default pkg_setup() for this eclass. This will gather required > variables > # from webapp-config and check if there is an application installed to > -# `${ROOT}/var/www/localhost/htdocs/${PN}/' if USE=vhosts is not set. > +# `${ROOT%/}/var/www/localhost/htdocs/${PN}/' if USE=vhosts is not set. > # > # You need to call this function BEFORE anything else has run in your custom > # pkg_setup(). > @@ -389,7 +389,7 @@ webapp_pkg_setup() { > G_HOSTNAME="localhost" > webapp_read_config > > - local my_dir="${ROOT}${VHOST_ROOT}/${MY_HTDOCSBASE}/${PN}" > + local my_dir="${ROOT%/}/${VHOST_ROOT}/${MY_HTDOCSBASE}/${PN}" > > # if USE=vhosts is enabled OR no application is installed we're done > here > if ! has vhosts ${IUSE} || use vhosts || [[ ! -d "${my_dir}" ]]; then > @@ -453,7 +453,7 @@ webapp_src_install() { > # @FUNCTION: webapp_pkg_postinst > # @DESCRIPTION: > # The default pkg_postinst() for this eclass. This installs the web > application to > -# `${ROOT}/var/www/localhost/htdocs/${PN}/' if USE=vhosts is not set. > Otherwise > +# `${ROOT%/}/var/www/localhost/htdocs/${PN}/' if USE=vhosts is not set. > Otherwise > # display a short notice how to install this application with webapp-config. > # > # You need to call this function AFTER everything else has run in your custom > @@ -464,7 +464,7 @@ webapp_pkg_postinst() { > webapp_read_config > > # sanity checks, to catch bugs in the ebuild > - if [[ ! -f "${ROOT}${MY_APPDIR}/${INSTALL_CHECK_FILE}" ]]; then > + if [[ ! -f "${ROOT%/}/${MY_APPDIR}/${INSTALL_CHECK_FILE}" ]]; then > eerror > eerror "This ebuild did not call webapp_src_install() at the > end" > eerror "of the src_install() function" > -- > 2.19.1 > > Conrad Kostecki
[gentoo-dev] Killing ~x86-fbsd?
Hello, I'm going to keep this short. Gentoo/FreeBSD is on life support for quite some time already. The little work happening around it is all focused on amd64. I'm not aware of any developer running ~x86-fbsd at this point, and all keywording requests on this arch aren't met with response. The single profile is marked exp and the depgraph is continuously degrading. At this point, it would probably be simpler to start over (and possibly copy keywords from ~amd64-fbsd) than to try to fix the current state. Therefore, I'd like to propose that we remove the profiles and kill the arch altogether. Is anyone opposed to that? -- Best regards, Michał Górny signature.asc Description: This is a digitally signed message part
[gentoo-dev] Last rites: dev-python/fusil
# Virgil Dupras (27 Jan 2019) # Dead upstream, no revdep. bug #618744 dev-python/fusil pgp37Tfj8hvx5.pgp Description: PGP signature
[gentoo-dev] Last rites: dev-python/python-social-auth and dev-python/python3-openid
# Virgil Dupras (27 Jan 2019) # Obsolete upstream. See bug #610466 and bug #645170 dev-python/python-social-auth dev-python/python3-openid pgpkHp77iupmc.pgp Description: PGP signature
Re: [gentoo-dev] RFC: Portage QA check for FHS/Gentoo policy paths, for top-level dirs and /usr/share/doc
On Montag, 1. Oktober 2018 20:16:28 CET Michał Górny wrote: > > It is a problem because any other package > > building QCH API docs with cross-references to Qt API needs to install > > below this path, and will generate the same QA warning (currently > > kde-frameworks/* does this). > > Yes. That is why I believe that hardcoding the exception in every > package is simply wrong. Wouldn't it be cleaner to account for the path > in the QA check? What's the current status of this? I'd like to know if there's going to be a whitelist or QA_ var to put into kde5.eclass, if not, I can also simply (EAPI-7-)move kde handbook directory out of /usr/share/doc into /usr/share/ kde-doc or similar and be done with it. Regards, Andreas