[Slackbuilds-users] REQUIRES="%README%"

Antonio Hernández Blas hba.nihilismus at gmail.com
Tue Mar 4 05:55:34 UTC 2014

On Sat, Mar 1, 2014 at 10:26 AM, David Spencer <
baildon.research at googlemail.com> wrote:

> What do we -- users and maintainers -- think about this?  Is it worth
> being more consistent?

There is another interpretation for README, a README contains *about* the
package. Rather than having an ABOUT file, README has this information so
(as i remember) that is the reason of some README.* files
(README.Slackware, README.SBo, etc) [1].

I'm the author of sbo_tools and to me the presence of '%README%' in a
*.info file does not have any meaning. When the user execute, as an
example, sbo_pkg $(sbo_find enlightenment), it is because the user already
made the steps needed to build enlightenment, in this case would be to
install its dependencies. BTW, the order of dependencies (to build) in
REQUIRES is not mandatory so sbo_tools does not make use of it either :(

Now, about the interpretation of a README as a "boolean", sorry but to me
it does not make sense. If i find a directory with a README file then it is
telling me to *read* it and maybe take some decisions about its content.
IMHO, the "correct" structure would be

├── package.SlackBuild
├── package.info
└── slack-desc

ABOUT: the content of slack-desc without the "handy-ruler".
README: pre or post steps to build this package. It is optional since some
packages does not have dependencies or pre-post steps.

The main issue is that this would require to edit-review mostly all
SlackBuilds, so i am thinking in this:

1. Delete '%README%' from REQUIRES
2. Add a READ variable in *.info file. The idea would be something like:

READ="" # There is not pre-post steps.
READ="README README.Slackware" # Read in this order, README and
READ="README.pre-steps README.post-steps README.uninstall" # A more
"complex" situation.

Notice that the value of READ it is up to the MAINTAINER, after all it is
the one that knows how to document the SlackBuild.

This can be done gradually (whenever a MAINTAINER wants to do it) or it can
be done with an script [2] , it can be useful to any tools [3] and there is
no need to edit-review all SlackBuilds.

[1] find /usr/ports/14.1/ -iname "README*" | grep -vE 'README$'
[2] Something like (pseudocode):
if ! grep README in REQUIRES; then
  echo "README=''" >> *.info
  echo "README='$(ls README*)'" >> *.info
[3] the existence of this variable with a value would act now as a boolean

Antonio Hernández Blas | Oaxaca, México, Mx.
https://github.com/nihilismus | https://bitbucket.org/nihilismus |
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.slackbuilds.org/pipermail/slackbuilds-users/attachments/20140303/be52c937/attachment.html>

More information about the SlackBuilds-users mailing list