public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: Ulrich Mueller <ulm@gentoo.org>
To: Florian Schmaus <flow@gentoo.org>
Cc: Arthur Zamarin <arthurzam@gentoo.org>,  gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] [PATCH v4] greadme.eclass: new eclass
Date: Tue, 18 Jun 2024 16:02:56 +0200	[thread overview]
Message-ID: <umsnipcvj@gentoo.org> (raw)
In-Reply-To: <ca8ea971-f387-4eba-a374-bd3d407c8c28@gentoo.org> (Florian Schmaus's message of "Tue, 18 Jun 2024 13:33:27 +0200")

[-- Attachment #1: Type: text/plain, Size: 1722 bytes --]

>>>>> On Tue, 18 Jun 2024, Florian Schmaus wrote:

>>> Finally, unlike readme.gentoo-r1.elcass, this eclass does not need
>>> to store the content of the readme in an environment variable. Not
>>> having to store the content in an environment variable reduces the
>>> pollution of the environment (sadly, this only refers to the process
>>> environment).

>> I'll be honest, I never felt this is really needed? From looking at
>> the current -r1 eclass, you could define DOC_CONTENTS just before
>> invoking readme.gentoo_create_doc, so you could for example modify as
>> you want the message and use `local DOC_CONTENTS="..."`.

> readme.gentoo-r1.eclass requires DOC_CONTENTS to be part of the
> package's environment to show it later in readme.gentoo_print_elog(),
> which is typically invoked in pkg_postinst(). If DOC_CONTENTS is local
> to readme.gentoo_create_doc(), then it wont be able in pkg_postinst()
> and can potentially not be obtained from the README.gentoo file
> because that file may be compressed.

> For greadme.eclass, the file is no longer compressed, therefore
> greadme.eclass does not need to carry a variable in the package's
> environment.

These are two different variables that must not be confused.
readme.gentoo-r1 has DOC_CONTENTS as an "input variable" that is
assigned by the ebuild. It creates the actual file from it (possibly
doing some automatic formatting).

The contents of the final file is then saved in another variable
README_GENTOO_DOC_VALUE, which is used in readme.gentoo_print_elog to
output the message.

BTW, I like readme.gentoo-r1's autoformatting, because the message may
contain variables (like paths containing EPREFIX) that can expand to
different lengths.

Ulrich

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 507 bytes --]

  reply	other threads:[~2024-06-18 14:03 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-16 15:51 [gentoo-dev] [PATCH v4] greadme.eclass: new eclass Florian Schmaus
2024-06-16 18:15 ` Arthur Zamarin
2024-06-17  0:51   ` [gentoo-dev] " Duncan
2024-06-18 11:33   ` [gentoo-dev] " Florian Schmaus
2024-06-18 14:02     ` Ulrich Mueller [this message]
2024-06-18 14:53       ` Florian Schmaus
2024-06-18 18:21         ` Arthur Zamarin
2024-06-18 18:55           ` Ionen Wolkens
2024-06-18 20:48           ` Florian Schmaus
2024-06-19  8:32         ` Ulrich Mueller
2024-06-19 12:18           ` Florian Schmaus
2024-06-16 20:09 ` Ulrich Mueller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=umsnipcvj@gentoo.org \
    --to=ulm@gentoo.org \
    --cc=arthurzam@gentoo.org \
    --cc=flow@gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox