[issue16237] bdist_rpm SPEC files created with distutils may be distro specific
New submission from Nick Coghlan: In resolving 14443 we effectively embedded the vendor macros in the SPEC file generated by bdist_rpm on older versions of RHEL (and derivatives). While I think that's a necessary evil (in order to create Python 3 RPMs that actually work properly at all on those platforms), we should note the distro limitation somewhere in the documentation: even if the RPM would otherwise work properly on Fedora *and* RHEL (and perhaps even openSUSE), the embedded copy of the vendor post install macros may misfire. ---------- assignee: docs@python components: Documentation messages: 172938 nosy: dmalcolm, docs@python, ncoghlan priority: normal severity: normal stage: needs patch status: open title: bdist_rpm SPEC files created with distutils may be distro specific type: enhancement versions: Python 3.2, Python 3.3 _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue16237> _______________________________________
Changes by Éric Araujo <merwok@netwok.org>: ---------- nosy: +eric.araujo _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue16237> _______________________________________
Mark Lawrence added the comment: Who is best placed to produce a patch for this? ---------- nosy: +BreamoreBoy versions: +Python 3.5 -Python 3.2, Python 3.3 _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue16237> _______________________________________
Nick Coghlan added the comment: Actually, with RHEL and CentOS 7 out the door, I believe we could potentially just rip the whole mess out of the upstream project. Slavek, this is about a hack Dave and I put into bdist_rpm to get Python 3 packages building correctly on RHEL 6. I believe the underlying issue with not specifying the interpreter version has been fixed for 7,so can we just get rid of the workaround now? Or at least double check the non-portability issue only affects 6 and close this as wontfix? ---------- nosy: +bkabrda _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue16237> _______________________________________
Bohuslav "Slavek" Kabrda added the comment: Hi, so I'm not sure I understand this correctly. AFAICS there are two patches in issue 14443 that are, to certain degree, independent. As for the patch that overrides __os_install_post [1], that is no longer needed in RHEL 7, since the line /usr/lib/rpm/brp-python-bytecompile \ in RHEL 6 RPM has been replaced by /usr/lib/rpm/brp-python-bytecompile %{__python} %{?_python_bytecompile_errors_terminate_build} \ in RHEL 7 RPM. The other patch referenced from that issue that defines macro __python to self.python (meaning either sys.executable or "python3") [2] is still needed, I believe. I hope that this answers the question. [1] http://hg.python.org/cpython/rev/a9a12ad553f0 [2] http://hg.python.org/cpython/rev/3d61e27cc570 ---------- _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue16237> _______________________________________
Nick Coghlan added the comment: Thanks Slavek. That means this bug doesn't affect RHEL 7 or CentOS 7, and if it affects the Python 3 software collections on RHEL/CentOS 6, we can potentially deal with it on the collection side of things. Accordingly, closing this as a problem for downstream to deal with. Thanks for the prompt, Mark. ---------- resolution: -> wont fix stage: needs patch -> resolved status: open -> closed _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue16237> _______________________________________
participants (4)
-
Bohuslav "Slavek" Kabrda
-
Mark Lawrence
-
Nick Coghlan
-
Éric Araujo