On Tue, 2024-01-09 at 09:30 +0100, Florian Schmaus wrote: > On 06/01/2024 18.21, Michał Górny wrote: > > On Sat, 2024-01-06 at 18:01 +0100, Florian Schmaus wrote: > > > I really like the functionality of readme.gentoo-r1.eclass, as it > > > allows to communicate Gentoo-specific information about a package to > > > the user. Especially as it improves the signal-to-noise ratio of > > > messages arriving to our users. > > > > > > However, readme.gentoo-r1.eclass will only show this information on > > > new installs, but not if the information changed. This is a major > > > drawback. Furthermore, readme.gentoo-r1.eclass does not provide an API > > > to assemble the information via heredoc. > > > > Are you implying that readme.gentoo-r1 is unfixable and you need to > > start over, and have a third generation of eclasses to install a readme > > file? > > Not at all. See the second item of the TODO list in the eclass' description. > > That said, both eclasses are rather small, > Since when, 300 lines to install a README file is "small"? > > > The main item is doc compression. Right now, greadme.eclass defaults > > > to add the readme doc to the compression exclusion list via > > > "docompress -x". A mode where the readme doc is compressed, just as > > > readme.gentoo-r1.eclass does, can be activated by setting > > > _GREADME_COMPRESS. However, I believe this mode is fragile as it can > > > not be guaranteed that a binary for the used compression algorithms is > > > installed on the host [1]. > > > > Dangling reference here. In any case, documentation compression is > > a standard feature of the package manager. If it doesn't work for > > whatever reason, I'd rather see you focus on find a good solution rather > > than working it around via abusing `docompress -x`. > > The problem is the lack of a guarantee that the utilities required to > decompress the file are available at installation time. It's user's responsibility to ensure that the tools set in their make.conf are available. > It gets even worse if you consider binpkgs, as you have surely read the > comment while looking at the code of the greadme.eclass. See FEATURES=-binpkg-docompress. That's the correct way to distribute binary packages. -- Best regards, Michał Górny