Description of problem ====================== Tryint to build my package with Requires: python3 and BuildRequires: python3-devel in EPEL-7 chroot, but Building target platforms: x86_64 Building for target x86_64 Wrote: /builddir/build/SRPMS/bmo-0.1.5+t20190425111310.py3n7.g8379906-1.el7.src.rpm Yum-utils package has been deprecated, use dnf instead. See 'man yum2dnf' for more information. copr_base | 3.5 kB 00:00 Getting requirements for bmo-0.1.5+t20190425111310.py3n7.g8379906-1.el7.src --> shellfu-bash-saturnin-0.5.4-1.el7.noarch --> shellfu-bash-saturnin-0.5.4-1.el7.noarch --> shellfu-0.10.17-1.el7.noarch --> shellfu-0.10.17-1.el7.noarch --> shellfu-bash-pretty-0.10.17-1.el7.noarch Error: No Package found for python3-devel ERROR: Exception(/var/lib/copr-rpmbuild/results/bmo-0.1.5+t20190425111310.py3n7.g8379906-1.el7.src.rpm) Config(887820-epel-7-x86_64) 0 minutes 17 seconds INFO: Results and/or logs in: /var/lib/copr-rpmbuild/results INFO: Cleaning up build root ('cleanup_on_failure=True') Start: clean chroot Version-Release number of selected component ============================================ As of https://copr.fedorainfracloud.org/coprs/netvor/shellfu/build/887820/ How reproducible ================ Always Steps to Reproduce ================== Build package with `BuildRequires: python3-devel` under epel-7 Actual results ============== Failure due to missing python3-devel Expected results ================ Success
FTR, in the meantime I moved the bmo package to other COPR, where I've disabled RHEL-7 for now. https://copr.fedorainfracloud.org/coprs/netvor/bmo/
There's no python3-devel in epel-7 (rhel-7) chroot, there is Python 3 in software collections, but that's not what you want probably. This is something we can not solve in copr unfortunately -- we usually support both Python 2 and Python 3 if the sotware is supposed to be run on el7.
Thanks for explanation. Just to be sure if I understand... > - we usually support both Python 2 and Python 3 if > the sotware is supposed to be run on el7. Do you mean you write the code to work in both versions transparently? Is it not possible right now to build a "proper" python3-foo package for RHEL7 in COPR? It's not a big deal in my case; I just won't support RHEL-7 for now. (I'm the only user ATM anyway :-))
(In reply to Alois Mahdal from comment #3) > > - we usually support both Python 2 and Python 3 if > > the sotware is supposed to be run on el7. > > Do you mean you write the code to work in both versions transparently? Yes. This is usually the easiest way IMO. > Is it not possible right now to build a "proper" python3-foo package for > RHEL7 in COPR? Yes. There's python36-devel in *epel* (not rhel), and there are software collections https://access.redhat.com/support/policy/updates/rhscl, but there's no python3-devel package AFAIK.
If you want to use python3 on EPEL7, you can use this for inspiration: https://src.fedoraproject.org/rpms/mock/pull-request/6
Thanks, @msuchy. FTR, since bmo is workstation-oriented, I actually realized that it's better to move it to separate COPR anyway, where I only enabled Fedora 28+, all of which already have python3-devel. As an aside, I do have another package, jattool (with python2-jats sub), where I need to support "full rainbow" (incl. RHEL and CentOS), so that one is in Python2, which was still hard to make the macros worj on different RHELs and Fedoras. There I ended up just BuildRequiring /usr/bin/python2, and stealing the macro definitions from rpm. https://pagure.io/jattool/blob/master/f/packaging/template.spec That one was fun(tm)! :-)