Re: To buildroot, or not to buildroot

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 19 Oct 2021 at 01:22, Andrew C Aitchison <andrew@xxxxxxxxxxxxxxx> wrote:
>
> On Thu, 7 Oct 2021, Stephen John Smoogen wrote:
> > Things have probably improved, but the lesson I learned from EPEL-8
> > and afterwords was that koji depsolving is weird no matter how set up.
> > Koji sets up mock environments in a way that will do fine as long as
> > there are NO modules in the repositories it is looking at. Once a
> > module, even a non-default module, is there things start to go wonky
> > because the way that koji depsolves will say that
> > 'foobaz-3.10.1-3+module' is a better solution than
> > 'foobax-3.9.4.<arch>' it will then try to pull that in and boom you
> > end up with broken builds. You can change the method that koji chooses
> > packages to be in the buildroot, but the other option ends up trying
> > to insert things like foobax-3.9.4-i386 into an x86_64  or still does
> > the modular change but chooses foobar-2 due to some depsolv quirk.
>
> Is the foobar/foobaz/foobax intended or are they typos ?
> If they are intended, then I think we have a partially ordered set of
> packages, ie it isn't always possible to say whether a > b or a < b.
>
> Without knowing anything about koji, I'd say that whilst
> foobaz and foobax can provide foobar (and perhaps foobar==3)
> they cannot satisfy foobar>=3.9 (unless they are forks or
> reimplementations of foobar-3.9).
>

In the case I was remembering they were forks and say inside them that
they satisfy anything >= 3.9. Normally you would only have one in a
buildroot but you could have alternatives in modules because they each
fixed something specific to that module. If you tried to install both
modules you would get conflicts so only one module was to be installed
at a time.. However, Koji doesn't know that.. one solution method only
knows NEVR, Provides and Requires and another tries to use a bit of
dnf to do resolutions but that seemed to act weirdly also.

In the case where they are all foobar but say foobar-4.0 or foobar4 is
in a non-default module, then koji and dnf might come again to
different conclusions of what is needed to be in the buildroot. The
only mental solution I could come up with was that there would need to
be some tool to put all modules (and bare rpms dependent on them) into
a RHEL-modularity tree and somehow import that into MBS so that it
could deal with them. That would then allow for both EPEL modules to
depend on them, and keep them out of the way for koji regular builds.
The major problems with that was
a) no perl/python/ruby/etc in non-modular builds (all that would be
available is platform-python)
b) it would break Fedora build system in ways because it assumes what
is in its toolkit was built by it and we are faking these.

In any case, it is a conundrum wrapped up in an enigma surrounded by a puzzle.


> --
> Andrew C. Aitchison                                     Kendal, UK
>                         andrew@xxxxxxxxxxxxxxx
> _______________________________________________
> epel-devel mailing list -- epel-devel@xxxxxxxxxxxxxxxxxxxxxxx
> To unsubscribe send an email to epel-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/epel-devel@xxxxxxxxxxxxxxxxxxxxxxx
> Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure



-- 
Stephen J Smoogen.
I've seen things you people wouldn't believe. Flame wars in
sci.astro.orion. I have seen SPAM filters overload because of Godwin's
Law. All those moments will be lost in time... like posts on a BBS...
time to shutdown -h now.
_______________________________________________
epel-devel mailing list -- epel-devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to epel-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/epel-devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure




[Index of Archives]     [Fedora Announce]     [Fedora News]     [Fedora Cloud]     [Fedora Advisory Board]     [Fedora Education]     [Fedora Security]     [Fedora Scitech]     [Fedora Robotics]     [Fedora Maintainers]     [Fedora Infrastructure]     [Fedora Websites]     [Anaconda Devel]     [Fedora Devel Java]     [Fedora Legacy]     [Fedora Desktop]     [Fedora Fonts]     [ATA RAID]     [Fedora Marketing]     [Fedora Management Tools]     [Fedora Mentors]     [Fedora Package Announce]     [SSH]     [Fedora Package Review]     [Fedora R Devel]     [Fedora PHP Devel]     [Kickstart]     [Fedora Music]     [Fedora Packaging]     [Centos]     [Fedora SELinux]     [Fedora Legal]     [Fedora Kernel]     [Fedora QA]     [Fedora Triage]     [Fedora OCaml]     [Coolkey]     [Virtualization Tools]     [ET Management Tools]     [Yum Users]     [Tux]     [Yosemite News]     [Linux Apps]     [Gnome Users]     [KDE Users]     [Fedora Tools]     [Fedora Art]     [Fedora Docs]     [Maemo Users]     [Asterisk PBX]     [Fedora Sparc]     [Fedora Universal Network Connector]     [Fedora ARM]

  Powered by Linux