From: Petr Lautrbach <plautrba@redhat.com>
To: Jason Zaman <jason@perfinion.com>, selinux@vger.kernel.org
Cc: Jason Zaman <jason@perfinion.com>
Subject: Re: [PATCH 1/2] libselinux: Ignore installed when installing python bindings to DESTDIR
Date: Thu, 22 Dec 2022 10:09:32 +0100 [thread overview]
Message-ID: <87v8m37qk3.fsf@redhat.com> (raw)
In-Reply-To: <20221222064452.13722-1-jason@perfinion.com>
Jason Zaman <jason@perfinion.com> writes:
> When the python bindings are installed to a destdir with pip install
> --prefix= --root=, pip tries to uninstall the existing root-owned
> package and fails
>
> Fixes:
> running build_ext
> python3 -m pip install --prefix=/usr `test -n "/tmp/selinux-release//build-master" && echo --root /tmp/selinux-release//build-master` .
> Processing /tmp/selinux-release/selinux-master/libselinux/src
> Preparing metadata (setup.py) ... done
> Building wheels for collected packages: selinux
> Building wheel for selinux (setup.py) ... done
> Created wheel for selinux: filename=selinux-3.4-cp310-cp310-linux_x86_64.whl size=725511 sha256=b35e9cdb2a6efce389eeece45446826b4ac6b41f81fdc128893f947036f27e8e
> Stored in directory: /tmp/pip-ephem-wheel-cache-kemjh99e/wheels/ca/2d/1e/d1ab52426d9add92931471cfa0d2558bcbeed89084af2388c9
> Successfully built selinux
> Installing collected packages: selinux
> Attempting uninstall: selinux
> Found existing installation: selinux 3.4
> Uninstalling selinux-3.4:
> ERROR: Could not install packages due to an OSError: [Errno 13] Permission denied: '__init__.cpython-310.pyc'
> Consider using the `--user` option or check the permissions.
Acked-by: Petr Lautrbach <lautrbach@redhat.com>
> ---
> libselinux/src/Makefile | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/libselinux/src/Makefile b/libselinux/src/Makefile
> index 0f6396ab..70ba063a 100644
> --- a/libselinux/src/Makefile
> +++ b/libselinux/src/Makefile
> @@ -187,7 +187,7 @@ install: all
> ln -sf --relative $(DESTDIR)$(SHLIBDIR)/$(LIBSO) $(DESTDIR)$(LIBDIR)/$(TARGET)
>
> install-pywrap: pywrap
> - $(PYTHON) -m pip install --prefix=$(PREFIX) `test -n "$(DESTDIR)" && echo --root $(DESTDIR)` $(PYTHON_SETUP_ARGS) .
> + $(PYTHON) -m pip install --prefix=$(PREFIX) `test -n "$(DESTDIR)" && echo --root $(DESTDIR) --ignore-installed --no-deps` $(PYTHON_SETUP_ARGS) .
> install -m 644 $(SWIGPYOUT) $(DESTDIR)$(PYTHONLIBDIR)/selinux/__init__.py
> ln -sf --relative $(DESTDIR)$(PYTHONLIBDIR)/selinux/_selinux$(PYCEXT) $(DESTDIR)$(PYTHONLIBDIR)/_selinux$(PYCEXT)
>
> --
> 2.38.2
prev parent reply other threads:[~2022-12-22 9:10 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-22 6:44 [PATCH 1/2] libselinux: Ignore installed when installing python bindings to DESTDIR Jason Zaman
2022-12-22 6:44 ` [PATCH 2/2] python: Ignore installed when installing " Jason Zaman
2022-12-22 9:09 ` Petr Lautrbach
2022-12-22 6:54 ` [PATCH 1/2] libselinux: Ignore installed when installing python bindings " Jason Zaman
2022-12-22 9:09 ` Petr Lautrbach [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87v8m37qk3.fsf@redhat.com \
--to=plautrba@redhat.com \
--cc=jason@perfinion.com \
--cc=selinux@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.