Re: External (non-rpm) BuidRequires - was New Mock release v2.7

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

 




Dne 02. 12. 20 v 8:00 Miroslav Suchý napsal(a):
Dne 01. 12. 20 v 13:07 Pavel Raiskup napsal(a):
I'm pleased to announce that there's a new Mock release.  Except for
several bugfixes, this release introduces a new
"External Build Requires" feature (by Miroslav Suchý)
I want to ask you for feedback on this feature.
   https://github.com/rpm-software-management/mock/wiki/Feature-external-deps

This feature will allow you to use in SPEC file
   BuildRequires: external:pypi:foo


Why these requires does not follow some standard naming convention possibly with some prefix?

And actually wouldn't it be better to use some conditional dependency? One idea which comes to my mind is something like:


~~~

BuildRequires: python3-foo or external:python3-foo

~~~


The other is to use these BRs just if some specific provide is available:


~~~

BuildRequires: external:pypi:foo if some-package-providing-or-enabling-support-of-this-is-available

~~~


Vít


which will run
    pip3 --install foo
in the buildroot.

This is a new and experimental feature. Not yet enabled in Mock by default. And I do **not** expect that it will be
enabled in Fedora. Ever. It may be enabled in Copr one day. The primary audience is 3rd party packagers who need some
library for building, and it is not available as RPM.

I am aware that this is breaking some fundamentals of RPM. For this reason, I want to hear the feedback on whether this
is interesting for you or it should die in agony.

Right now, this feature supports PyPI - I am confident there. I also added Crate (Rust) support. But I do not use Rust;
therefore, it is very likely that it will need fixes.

I will welcome if you can guide me on how to add support for another language. There are two requirements. The native
package manager needs to be available in Fedora. And the manager has to have --root or something similar, which lets you
install the files in the different root path. That is because we run this tool in bootstrap chroot.

In case you want to send PR, the code is here:

https://github.com/rpm-software-management/mock/blob/d58dc2a87f6327ec563d2d7d63920c04f0315ba4/mock/py/mockbuild/external.py#L32

Attachment: OpenPGP_0x0CE09EE79917B87C.asc
Description: application/pgp-keys

Attachment: OpenPGP_signature
Description: OpenPGP digital signature

_______________________________________________
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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux