On 2023/09/19 11:32, Ingo Schwarze wrote:
> Hi Omar,
>
> Omar Polo wrote on Tue, Sep 19, 2023 at 10:10:44AM +0200:
>
> > The update itself is straightforward and all tests are passing.
> > However, upstream added three more man pages (for a total of four now)
> > which would get shipped in all of four fennel flavors (lua5[1-3]).
> >
> > Now, this is practice works, i.e. even if you have installed all the
> > flavors `man fennel-api' works and since all the manpages are
> > identical it's not really important if mandoc chooses fennel-5.1-api
> > or fennel-5.4-api.
> >
> > However, I disliked to ship the same set of man pages four times, so
> > here's an attempt to move them to a -docs subpackage. (thanks sthen@
> > for pointing me at www/squid)
>
> I wouldn't consider saving the diskspace for three manual pages the
> main benefit, even though that hardly hurts, either. It seems more
> important that your approach of making a subpackage prevents apropos(1)
> from listing multiple pages and making the user wonder whether they
> differ, possibly wasting their time running diff(1).
>
> This is even likely to become worse in the near future when man(1)
> starts warning that there are multiple manual pages of the same name
> in the same section.
>
> However, *if* you expect that the pages are likely to actually
> become different in the future, that might be a reason against
> making this subpackage. Then again, if that happens, it would
> also be an option to merge them back in after it happens.
They won't; the different flavours are merely building with different
versions of lua, the manuals are unaffected.
> > Note that RUN_DEPENDS-docs is needed otherwise (via lua.port.mk and
> > global RUN_DEPENDS) it ends up depending on lang/lua,${FLAVOR} and
> > that will break subsequent build (the plist register the deps on one
> > flavor, when building the next one the plist would differ)
>
> Again, i don't think these technical considerations are the only
> reason for RUN_DEPENDS-docs. I general, i stongly feel that if
> you say "pkg_add food", that should absolutely install all the
> documentation for the "foo" daemon. I mean, how is the user
> supposed to use it if there is no documentation? We want sane
> defaults, and installing software without documentation is not
> exactly sane. Why should we send the user on a wild goose chase
> to search for a "foo" documentation package after they alraedy
> said they want food?
>
> I certainly don't want to emulate the bad habit of some Linux
> distros to not install documentation unless the user goes an extra
> mile specifically asking for it.
Explicitly setting RUN_DEPENDS-docs to <nothing> makes sense,
but I think we should also have "RUN_DEPENDS-main += lang/fennel,-docs".
Otherwise the ports aspects look correct to me.
> > However, I'm not sure I'm overthinking it and just rename the three
> > new manpages to fennel-${V}-XYZ instead of doing a subpackage would be
> > preferred.
>
> I did not audit this ports-wise, but i do like your general idea.
> It doesn't feel like overengineering to me, there appear to be actual
> benefits from the user perspective.
Agreed.
> > +SITES = https://git.sr.ht/~technomancy/fennel/archive/
btw, I think this could probably change to DIST_TUPLES if wanted.