Elliott Sales de Andrade wrote:
> On Sat, Apr 5, 2025 at 8:45 PM Chris Adams <li...@cmadams.net> wrote:
> >
> > A lot of perl packages (at least) use the macro %{_fixpermss}.  Defined
> > in /usr/lib/rpm/macros (from rpm itself), the macro uses chmod.  When
> > reviewing a new package of mine, the reviewer said I should BR
> > coreutils because of that, which makes sense... although thinking about
> > it, should a package really need to do that?  It kind of feels like rpm
> > should handle Requires: for anything needed to implement the core set of
> > macros, and packages should then expect those macrors to "just work".
> > BRing coreutils for that feels like knowing an implementation detail
> > that shouldn't be spread across a ton of packages.  
> 
> From the Packaging Guidelines
> https://docs.fedoraproject.org/en-US/packaging-guidelines/#buildrequires:
> > You MAY assume that enough of an environment exists for RPM to function, to 
> > build packages and execute basic shell scripts, but you SHOULD NOT assume 
> > any other packages are present as RPM dependencies and anything brought 
> > into the buildroot by the build system can change over time.  
> 
> and from rpm:
> $ rpm -q --requires rpm | grep core
> coreutils
> 
> So no, I would not say you need a BR on coreutils, because it's a
> requirement for RPM to function.

That query doesn't distinguish between packages that are essential "for
RPM to function" and those that "are present as RPM dependencies" that
"can change over time".

A stronger argument is that Coreutils is necessary to "execute basic
shell scripts". Few shellscripts would work without cat, cp, ls, mv, rm
et cetera. I have always assumed that those commands will always be
present, and that I don't need to explicitly require Coreutils.

Chris' argument that the usage of chmod is an implementation detail in
the macro is also valid.

Björn Persson

Attachment: pgpu1fw2z6fA7.pgp
Description: OpenPGP digital signatur

-- 
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
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@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue

Reply via email to