[Slackbuilds-users] Clarification of REQUIRES and dependencies

Kyle Guinn elyk03 at gmail.com
Thu Nov 27 09:13:01 UTC 2014


Willy and I have a disagreement about this line of
http://slackbuilds.org/guidelines/

"The content of REQUIRES should only be first level dependencies (i.e.
no deps of deps)."

The disagreement occurs when package 1 depends on packages 2 and 3,
and package 2 depends on 3.  Should 3 be listed in 1's REQUIRES?

It's similar in context to overlinking/underlinking for libraries.  If
you don't know what that is, these two pages describe it with
examples:
https://wiki.mageia.org/en/Overlinking_issues_in_packaging
https://wiki.mageia.org/en/Underlinking_issues_in_packaging

I am interpreting this guideline as "Do not overlink", as in don't
list the entire tree of dependencies, just those with a depth of 1
("first level").  Willy is interpreting it as "Underlink wherever
possible" (similar to the indirect case on that second page) and will
remove a depth=1 dependency from REQUIRES if it happens to appear at
some depth > 1 (a "dep of dep").  What is the original intention of
that guideline?  Can that sentence be updated to distinguish these two
interpretations?

Possibly a more important question:  Does it matter?  Are there any
SBo tools out there that need the dependency info to be underlinked?
Are there any tools that would benefit by not underlinking, or are
broken by underlinking?

Personally I like having all of the dependency interrelations
available to me, to know how all of the packages depend on each other,
and I hate having parts of it stripped out to meet Willy's
interpretation or some specific tool's needs.  If some tool needs the
underlinked info, then that can be automatically generated from the
complete info -- that's what we have computers for, right?

I'd love to hear other opinions and use cases.
-Kyle


More information about the SlackBuilds-users mailing list