On Sun, Nov 15, 2020 at 4:13 PM Jason Edgecombe <jason@xxxxxxxxxxxxxxxxx> wrote: > > Hi everyone, > > I want to rebuild some of the fedora 33 packages for EL8 (vagrant, for example), but I'm having trouble getting all of the build dependencies right. I ran dnf to download the SRPMS with the --resolve option, but I'm still missing dependencies when I submit the builds to copr. > > My current workflow is to download an RPM from Fedora 33, then submit it to copr to build on the EPEL8 image in my personal COPR projects, waiting for any library errors, then download those and build, repeat as needed. > > That workflow is tedious and I feel like there must be a better way, but I don't know what that is. How can I recursively find all of the builddeps for packages? > > Ideally, I would like some type of (semi-)automated way to track packages on Fedora and automatically build them on EL8, but I'm at a loss for how to do so. > > Thanks, > Jason That is a common [bootstrapping] problem, yes. In short, you need to query the SRPM & RPM dependencies and their runtime and build time dependencies, recursively. You also need to do that on every architecture (due to the potential use of conditional build deps), so your process should involve SRPM rebuilds as the ones you download from Fedora repos have only been built on one; and it's random -- there's a chance you won't be able to resolve your tree if you use those. Binary RPMs are already available for all arches so you just need to fetch the repodata. You can do all this on a single host and arch, don't worry. No uploads and actual RPM builds are necessary. Once you have your package list, just compare it to your target distribution's package list and you have your set. It's no longer maintained and it was rather quirky buy could try depchase; it did exactly this when we were experimenting with fully modular distributions: https://github.com/fedora-modularity/depchase P _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx