[gentoo-dev] Re: GNOME needs a new maintainer in Gentoo

2023-09-21 Thread Matt Turner
On Wed, Sep 20, 2023 at 10:31 AM Matt Turner  wrote:
> IMO, the state of the project is really good. We've been adding
> alpha/beta/rc versions in order to catch and report problems to
> upstream and to give us time to sort out important issues beforehand.
> Most of GNOME 45 is already in ::gentoo under package.mask.

Final update:

- I've cleaned up the alpha/beta/rc versions and unmasked everything
that had a stable release.

- I filed a couple of rekeywording bugs where packages gained a new dependency.

- I dropped sparc and ia64 keywords on a handful of GNOME packages
that would have otherwise required rekeywording gui-libs/libadwaita,
dev-libs/appstream, and some other things that didn't seem useful on
these platforms.

- I've dropped myself from the GNOME project and the mail alias.



Re: [gentoo-dev] Standard parsable format for profiles/package.mask file

2023-09-21 Thread Oskari Pirhonen
On Thu, Sep 21, 2023 at 22:40:05 +0300, Arthur Zamarin wrote:
> = "Formal" format =
> 
> Each entry is composed of 2 parts: "#"-prefixed explanation block and
> list of "${CATEGORY}/${PN}" packages. Entries are separated when a new
> explanation block starts (meaning first "#"-prefixed line after packages
> list). You may add newlines between packages in packages list.
> 

What about mandatory blank line(s) between entries? That way it ensures
they are visually separated when skimming through the file. Plus, you
can easily jump from entry to entry in editors that support
paragraph-wise movement.

- Oskari


signature.asc
Description: PGP signature


Re: [gentoo-dev] Standard parsable format for profiles/package.mask file

2023-09-21 Thread Oskari Pirhonen
On Thu, Sep 21, 2023 at 23:22:27 +0200, Ulrich Mueller wrote:
> > On Thu, 21 Sep 2023, Arthur Zamarin wrote:
> 
> > = "Formal" format =
> 
> > Each entry is composed of 2 parts: "#"-prefixed explanation block and
> > list of "${CATEGORY}/${PN}" packages. Entries are separated when a new
> > explanation block starts (meaning first "#"-prefixed line after packages
> > list). You may add newlines between packages in packages list.
> 
> "Must" rather than "may" here? You certainly cannot list several
> packages in the same line.
> 

I read it to mean something like this would be allowed:

# Blurb about package1, package2, and package3
category/package1
category/package2

category/package3

Whether it makes sense to allow that is a different question.

- Oskari


signature.asc
Description: PGP signature


Re: [gentoo-dev] Standard parsable format for profiles/package.mask file

2023-09-21 Thread Sam James


Tim Harder  writes:

> On 2023-09-21 Thu 15:22, Ulrich Mueller wrote:
>>> On Thu, 21 Sep 2023, Arthur Zamarin wrote:
>>> Should it be a GLEP, I don't think so? But I'm unsure about it. We do
>>> need to document it (for example header of that exact file).
>>
>>It shouldn't be too difficult to wrap this up as a GLEP.
>
> To me standardizing a format in Gentoo (outside of PMS-related
> functionality) requires a GLEP or at the very least some semi-formal
> documentation outside the file in question in a place like the
> devmanual. Consider it due diligence of the process that allows people
> writing code to target the format without having to chase details down
> into code bases or mailing list threads.

+1




Re: [gentoo-dev] Standard parsable format for profiles/package.mask file

2023-09-21 Thread Tim Harder

On 2023-09-21 Thu 15:22, Ulrich Mueller wrote:

On Thu, 21 Sep 2023, Arthur Zamarin wrote:

Should it be a GLEP, I don't think so? But I'm unsure about it. We do
need to document it (for example header of that exact file).


It shouldn't be too difficult to wrap this up as a GLEP.


To me standardizing a format in Gentoo (outside of PMS-related
functionality) requires a GLEP or at the very least some semi-formal
documentation outside the file in question in a place like the
devmanual. Consider it due diligence of the process that allows people
writing code to target the format without having to chase details down
into code bases or mailing list threads.


OTOH, we don't have a GLEP for eclassdoc either.


This is a poor example since it's partly the reason why an awk script
with issues relating to extensibility and maintainability is still used
to generate eclass manpages.

I mainly let it slide when writing pkgcore/pkgcheck parsing
functionality because the devmanual [0] was a passable resource at the
time.

Tim

[0]: https://devmanual.gentoo.org/eclass-writing/#documenting-eclasses



Re: [gentoo-dev] Re: Standard parsable format for profiles/package.mask file

2023-09-21 Thread Sam James


Ulrich Mueller  writes:

> [[PGP Signed Part:Undecided]]
>> On Thu, 21 Sep 2023, Florian Schmaus wrote:
>
>>> The first line of the "#"-prefixed explanation block must be of the
>>> format "${AUTHOR_NAME} <${EMAIL}> (${SINGLE_DATE})" when the date is of
>>> format -MM-DD, in UTC timezone.
>> 
>
>> Can we drop this? Or, at least, relax this.
>
> I think UTC makes a lot of sense in an international context like ours.
> It also avoids flapping of the date between entries (i.e. a newer entry
> having an older date than the previous one).

Yes, I don't think we need to punish people for getting it wrong, but at
the same time, I'd like us to standardise on UTC - saying this as
someone who isn't in UTC half of the year.

That means others are free to correct it if they notice it's the
wrong date and so on.

>> I usually just enter my locale date here and like to avoid having to
>> think about that UTC is potentially in a different date. I also can
>> not remember any situation where the date being in UTC matters. Plus,
>> if you want accurate timestamps, then the git commit/author date is
>> here for you. :)

Users consume p.mask entries directly rather than via git.




Re: [gentoo-dev] Re: Standard parsable format for profiles/package.mask file

2023-09-21 Thread Ulrich Mueller
> On Thu, 21 Sep 2023, Florian Schmaus wrote:

>> The first line of the "#"-prefixed explanation block must be of the
>> format "${AUTHOR_NAME} <${EMAIL}> (${SINGLE_DATE})" when the date is of
>> format -MM-DD, in UTC timezone.
> 

> Can we drop this? Or, at least, relax this.

I think UTC makes a lot of sense in an international context like ours.
It also avoids flapping of the date between entries (i.e. a newer entry
having an older date than the previous one).

> I usually just enter my locale date here and like to avoid having to
> think about that UTC is potentially in a different date. I also can
> not remember any situation where the date being in UTC matters. Plus,
> if you want accurate timestamps, then the git commit/author date is
> here for you. :)


signature.asc
Description: PGP signature


Re: [gentoo-dev] Standard parsable format for profiles/package.mask file

2023-09-21 Thread Ulrich Mueller
> On Thu, 21 Sep 2023, Arthur Zamarin wrote:

> = "Formal" format =

> Each entry is composed of 2 parts: "#"-prefixed explanation block and
> list of "${CATEGORY}/${PN}" packages. Entries are separated when a new
> explanation block starts (meaning first "#"-prefixed line after packages
> list). You may add newlines between packages in packages list.

"Must" rather than "may" here? You certainly cannot list several
packages in the same line.

> The first line of the "#"-prefixed explanation block must be of the
> format "${AUTHOR_NAME} <${EMAIL}> (${SINGLE_DATE})" when the date is of
> format -MM-DD, in UTC timezone.

> If this is a last-rite message, the last line must list the last-rite
> last date (removal date) and the last-rite bug number. You can also list
> other bugs relevant to the last-rite. So I think a format of: "Removal
> on ${REMOVAL_DATE}.  Bug #NN, #NN." Where the bug list is comma
> and space separated, we have at least one space (" +" regex) between the
> removal date and bug list, and the date is of -MM-DD format.
> I prefer this line is separate (and not continuous of prefix message text).

> The explanation block itself can reference bugs, by matching the regex
> "[Bb]ugs? #\d+(, +#\d+)*" (For example: "bug #713106, #753134"). I think
> this is quite a simple one, but powerful enough for most.

> Lines with single newline between them (so no blank line between them)
> are considered as single paragraph continuum. If you want to start new
> paragraph, leave a blank line (still prefixed with #) - think similar to
> markdown. A line matching the last-rite line is always it's own paragraph.

Is this rule about paragraphs needed? It is at odds with the rule that
the removal date and bug must be on their own line (i.e. that line is
_not_ part of a "paragraph continuum").

What about the introductory comment block in the file? Should there be a
defined syntax for a separator between it and the rest of the file? For
example, everything above the first line matching "^#[ \t]*---" could be
ignored by automatic tools, and they would insert new entries below that
separator.

> Should it be a GLEP, I don't think so? But I'm unsure about it. We do
> need to document it (for example header of that exact file).

It shouldn't be too difficult to wrap this up as a GLEP. OTOH, we don't
have a GLEP for eclassdoc either.

Ulrich


signature.asc
Description: PGP signature


[gentoo-dev] Re: Standard parsable format for profiles/package.mask file

2023-09-21 Thread Florian Schmaus

On 21/09/2023 21.40, Arthur Zamarin wrote:

Hi all

I want to suggest a standard format for profiles/package.mask, for
multiple reasons:


Sounds sensible. +1


The first line of the "#"-prefixed explanation block must be of the
format "${AUTHOR_NAME} <${EMAIL}> (${SINGLE_DATE})" when the date is of
format -MM-DD, in UTC timezone.

 

Can we drop this? Or, at least, relax this.

I usually just enter my locale date here and like to avoid having to 
think about that UTC is potentially in a different date. I also can not 
remember any situation where the date being in UTC matters. Plus, if you 
want accurate timestamps, then the git commit/author date is here for 
you. :)


- Flow


OpenPGP_0x8CAC2A9678548E35.asc
Description: OpenPGP public key


OpenPGP_signature
Description: OpenPGP digital signature


[gentoo-dev] Standard parsable format for profiles/package.mask file

2023-09-21 Thread Arthur Zamarin
Hi all

I want to suggest a standard format for profiles/package.mask, for
multiple reasons:

1. Easier to write simple to understand mask or last-rites entries. When
all entries are in similar format, the reader knows where to expect
important information and such. Also easier for writer to convey all
needed information.

2. We can teach tools to parse it and render nicely, or help you fill
the file. For example I've tried to implement a parser for
packages.gentoo.org so it shows as nice as possible the message, see as
example [1]. On the other hand, `pkgdev mask` [2] can help you fill the
message (including bug number, last-rite until date, author & email
line). Both of them mostly works, but when someone "breaks" the
unofficial syntax, the tools fail sadly.

This is why I want to recommend we create a mostly standard syntax, so
we can all expect the same thing and have nice things.
Also please note that for now I want to formalize the format only for
profiles/package.mask file, and not the one inside all the different
profiles. If you think we better apply to all of them, we can think on
it separately please :)

The current format is mostly acceptable, but let's tighten it. I will
implement a pkgcheck check that will validate the format and error out
if invalid.

[1] https://packages.gentoo.org/packages/sys-fs/eudev
[2] https://pkgcore.github.io/pkgdev/man/pkgdev/mask.html

= "Formal" format =

Each entry is composed of 2 parts: "#"-prefixed explanation block and
list of "${CATEGORY}/${PN}" packages. Entries are separated when a new
explanation block starts (meaning first "#"-prefixed line after packages
list). You may add newlines between packages in packages list.

The first line of the "#"-prefixed explanation block must be of the
format "${AUTHOR_NAME} <${EMAIL}> (${SINGLE_DATE})" when the date is of
format -MM-DD, in UTC timezone.

If this is a last-rite message, the last line must list the last-rite
last date (removal date) and the last-rite bug number. You can also list
other bugs relevant to the last-rite. So I think a format of: "Removal
on ${REMOVAL_DATE}.  Bug #NN, #NN." Where the bug list is comma
and space separated, we have at least one space (" +" regex) between the
removal date and bug list, and the date is of -MM-DD format.
I prefer this line is separate (and not continuous of prefix message text).

The explanation block itself can reference bugs, by matching the regex
"[Bb]ugs? #\d+(, +#\d+)*" (For example: "bug #713106, #753134"). I think
this is quite a simple one, but powerful enough for most.

Lines with single newline between them (so no blank line between them)
are considered as single paragraph continuum. If you want to start new
paragraph, leave a blank line (still prefixed with #) - think similar to
markdown. A line matching the last-rite line is always it's own paragraph.

= Example =

After all of those rambling, here is an example (it will result in 3
paragraphs, 2 explanation and 1 last-rite finish):

# Arthur Zamarin  (2023-09-21)
# Very broken, no idea why packaged, need to drop ASAP. The project
# is done with supporting this package. See for history bug #667889.
#
# As a better plan, you should migrate to dev-lang/perl, which has
# better compatibility with dev-lang/ruby when used with dev-lang/lua
# bindings.
# Removal on 2023-10-21.  Bug #667687, #667689.
dev-lang/python

 Call for comments 

So how does it sound? I know it is easy to try to limit the syntax for
me (since I"ll need to implement parsing of it), but I think this format
above matches most of the currently used once, and the one created by
`pkgdev mask`. But i needed, I'm open to improve it by comments.

Should it be a GLEP, I don't think so? But I'm unsure about it. We do
need to document it (for example header of that exact file).


-- 
Arthur Zamarin
arthur...@gentoo.org
Gentoo Linux developer (Python, pkgcore stack, Arch Teams, GURU)


OpenPGP_signature.asc
Description: OpenPGP digital signature


[gentoo-dev] Last-rites: x11-plugins/enigmail

2023-09-21 Thread Joonas Niilola
Enigmail's functionality has been built into Thunderbird-68, carrying
over all the way to 115. Enigmail hasn't been supported in TB since 91.
It's currently only supported on SeaMonkey, but upstream provides a
pre-packed extension to download for SM directly. Therefore there's not
much reason to package it in Gentoo, given also the current version is
years behind upstream releases. Removal in ~30 days.

-- juippis


OpenPGP_signature
Description: OpenPGP digital signature


[gentoo-dev] Last-rites: net-misc/dahdi (and related pkgs)

2023-09-21 Thread Joonas Niilola
DAHDI is not suited for a rolling-release distribution. Upstream
releases new versions sporadically and it may take multiple years
between them. Old versions are constantly broken with newer kernels,
requiring heavy patching downstream. Has no active maintainer in Gentoo.
If you use DAHDI and have some ideas how to help, please see bug
#914477. Removal on 2024-03-01.

-- juippis


OpenPGP_signature
Description: OpenPGP digital signature