<@james:fedora.im>
17:00:07
!startmeeting fpc
<@meetbot:fedora.im>
17:00:09
Meeting started at 2025-02-13 17:00:07 UTC
<@meetbot:fedora.im>
17:00:09
The Meeting name is 'fpc'
<@james:fedora.im>
17:00:11
!topic Roll Call
<@tibbs:fedora.im>
17:00:30
Hey.
<@decathorpe:fedora.im>
17:00:42
hello
<@conan_kudo:matrix.org>
17:00:48
!hi
<@james:fedora.im>
17:00:51
!hi
<@zodbot:fedora.im>
17:00:51
Neal Gompa (ngompa) - he / him / his
<@zodbot:fedora.im>
17:00:53
James Antill (james)
<@salimma:fedora.im>
17:01:08
!hi
<@zodbot:fedora.im>
17:01:09
Michel Lind (salimma) - he / him / his
<@salimma:fedora.im>
17:01:18
Fabio Valentini: you're no longer sick! yay
<@decathorpe:fedora.im>
17:01:39
at least no longer sick enough :D
<@salimma:fedora.im>
17:02:12
paraphrasing Princess Bride, mostly well is barely sick :P
<@carlwgeorge:fedora.im>
17:08:05
!hi
<@zodbot:fedora.im>
17:08:06
Carl George (carlwgeorge) - he / him / his
<@nhanlon:beeper.com>
17:08:12
!hi
<@zodbot:fedora.im>
17:08:14
Neil Hanlon (neil) - he / him / his
<@james:fedora.im>
17:09:26
Neil Hanlon: Hey, you here for anything specific or just to hang out with us awesome people (who arne't even that sick anymore ;)
<@james:fedora.im>
17:10:42
!topic FPC PR#1435 review: drop obsolete recommendation for file path dependencies
<@james:fedora.im>
17:10:54
https://pagure.io/packaging-committee/pull-request/1435
<@nhanlon:beeper.com>
17:10:58
Just hanging out, as a fellow one who is not as sick anymore
<@nhanlon:beeper.com>
17:11:08
/me sips tea
<@tibbs:fedora.im>
17:11:37
The whole review guidelines page is such a mess.
<@tibbs:fedora.im>
17:12:14
We could certainly drop anything from it that's incorrect, but I have no hope of it actually being an adequate list of what a review should look for.
<@james:fedora.im>
17:12:23
This one seems pretty easy merge, and hopefully getting other people to do the patches for us will make them or others more likely to fix the rest of it ;)
<@decathorpe:fedora.im>
17:12:35
yeah this one looks straightforward
<@salimma:fedora.im>
17:13:26
yeah
<@james:fedora.im>
17:14:58
!topic FPC PR#1436 UsersAndGroups: fully switch to sysusers.d
<@james:fedora.im>
17:15:02
https://pagure.io/packaging-committee/pull-request/1436
<@james:fedora.im>
17:15:17
Fabio Valentini: Already +1'd the new version
<@tibbs:fedora.im>
17:15:35
PRs were already filed for this, which seems way premature to me.
<@decathorpe:fedora.im>
17:17:29
why? the Change Proposal was already accepted:
<@decathorpe:fedora.im>
17:17:29
https://fedoraproject.org/wiki/Changes/RPMSuportForSystemdSysusers
<@tibbs:fedora.im>
17:17:32
But +1 to the guidelines change. I always thought the rationale section was kind of pointless anyway.
<@tibbs:fedora.im>
17:18:03
If someone merges one of those package PRs back to F41, doesn't it break?
<@decathorpe:fedora.im>
17:18:26
I suppose it does
<@tibbs:fedora.im>
17:18:53
The PRs do not mention that at all.
<@decathorpe:fedora.im>
17:19:26
hm, I would have expected that to be mentioned in the PRs, yeah :(
<@conan_kudo:matrix.org>
17:19:32
tbh, I don't understand why we can't have guidance that is backward compatible
<@conan_kudo:matrix.org>
17:19:52
we need this for people maintaining across fedora releases, across epel, etc.
<@conan_kudo:matrix.org>
17:20:06
this seems kind of ham-fisted :/
<@tibbs:fedora.im>
17:20:08
I don't personally have an issue with picking changes back instead of just merging, but many people do expect to keep the same specfile across releases.
<@tibbs:fedora.im>
17:20:44
And in general, sure, people can't expect to always be able to do that without horrible spaghetti conditionals but this isn't a super important thing here.
<@james:fedora.im>
17:21:01
I thought the latest version is compatible between 41 and 42, it still includes macros that are noops on 42 but needed on 41.
<@tibbs:fedora.im>
17:21:06
It just makes use of some new RPM behavior. I don't think we have ever forced that kind of thing on people.
<@salimma:fedora.im>
17:21:42
even if it's compatible between 41 and 42... 40 is still supported
<@decathorpe:fedora.im>
17:21:43
hm, I do seem to remember some previous effort around dropping Scriptlets en masse
<@salimma:fedora.im>
17:22:10
I think documenting which releases you can use it for is a must. there's also EPEL, and many of us maintain a single spec for all releases so this might break
<@tibbs:fedora.im>
17:23:41
This is a PR for a package I maintain:
<@tibbs:fedora.im>
17:23:45
https://src.fedoraproject.org/rpms/amanda/pull-request/10#request_diff
<@tibbs:fedora.im>
17:24:16
There's no backwards anything. It just deletes the calls to useradd and drops in a sysusers file.
<@conan_kudo:matrix.org>
17:24:24
that PR would break it for anything older than F42
<@decathorpe:fedora.im>
17:24:24
so just to be clear: is this critique regarding the latest version of the packaging-guidelines PR?
<@tibbs:fedora.im>
17:25:27
To be clear, I think we should change the guideliens.
<@conan_kudo:matrix.org>
17:25:32
my critique specifically is that the PR deletes guidance that would make a package backward compatible
<@salimma:fedora.im>
17:25:50
yeah, I think we should do it like the Python packaging guidelines
<@decathorpe:fedora.im>
17:26:05
it doesn't though?
<@salimma:fedora.im>
17:26:08
if we want to keep the page clean, have a big sign saying "for releases older than X please see this other page"
<@tibbs:fedora.im>
17:26:55
I don't think it's really fair to make the submitter do all that, though. We could merge and then fix up the document a bit if needed.
<@carlwgeorge:fedora.im>
17:26:55
we do have a section in the epel docs for "packaging things that only apply to epel branches and no active fedora branches"
<@tibbs:fedora.im>
17:27:23
I don't think it deletes any information which is still needed on older releases. The big deletion is a bunch of rationale which didn't really need to be there in the first place.
<@salimma:fedora.im>
17:27:27
it says the macro will evaluate as empty on < F42 but that means the new users are not created as expected, right?
<@conan_kudo:matrix.org>
17:27:51
right
<@decathorpe:fedora.im>
17:28:14
https://pagure.io/packaging-committee/pull-request/1436#_1__31-36
<@james:fedora.im>
17:28:23
Fabio Valentini: There are no macro calls in the PR, right? So it doesn't work on 41 ... or am I missig something?
<@decathorpe:fedora.im>
17:28:58
but the PR also doesn't *drop* macro calls that are documented
<@decathorpe:fedora.im>
17:29:28
and it explicitly adds that the creation needs to be manual and the file needs to be a separate source for Fedora < 42
<@salimma:fedora.im>
17:30:02
it will be nice to be able to see the full rendered page with this change but I guess we need to locally apply this PR to do that
<@decathorpe:fedora.im>
17:30:40
this is the full text from the PR:
<@decathorpe:fedora.im>
17:30:40
https://pagure.io/fork/zbyszek/packaging-committee/raw/sysusers-switch/f/guidelines/modules/ROOT/pages/UsersAndGroups.adoc
<@decathorpe:fedora.im>
17:30:55
if you have the AsciiDoctor browser extension installed, it will render it
<@salimma:fedora.im>
17:31:34
ah. yeah it does still have the scriptlet method
<@decathorpe:fedora.im>
17:31:40
(yes the documentation for the `%sysusers_create_compat` macro is still there)
<@james:fedora.im>
17:32:33
* New: sysusers, with automagic rpm stuff and the macros do nothing.
<@james:fedora.im>
17:32:33
<@james:fedora.im>
17:32:33
* Current: sysusers, but add macros that do magic things in %pre.
<@james:fedora.im>
17:32:33
Wait ... maybe I'm wrong but I thought this was the case:
<@james:fedora.im>
17:32:33
* Old: Just call useradd/etc. in %pre
<@james:fedora.im>
17:32:33
...the policy PR documents New and Current ... but not Old. Jason ティビツ 's PR for his package goes directly from Old to New (and thus. breaks on 41)
<@salimma:fedora.im>
17:32:41
TIL, nice
<@zodbot:fedora.im>
17:32:56
salimma has already given cookies to decathorpe during the F41 timeframe
<@decathorpe:fedora.im>
17:33:25
James Antill: ah, so you're saying you want *three* versions to be documented? :(
<@james:fedora.im>
17:34:01
No, just Current and New documented ... but don't break packages by going from Old to New (instead of Old to current).
<@conan_kudo:matrix.org>
17:34:04
well, the "current" way was backported to EPEL a long time ago
<@conan_kudo:matrix.org>
17:34:17
so we just need the two, and packages being adapted should handle both modes
<@carlwgeorge:fedora.im>
17:34:21
even epel8?
<@decathorpe:fedora.im>
17:34:27
https://pagure.io/fork/zbyszek/packaging-committee/c/1e70fd534bc97ca15ab4a80eed3b420d69478ad1
<@decathorpe:fedora.im>
17:34:27
I'm pretty sure that the old stuff that's removed is explained here:
<@decathorpe:fedora.im>
17:34:49
i.e. the "really old" stuff has already been dropped in 2020
<@conan_kudo:matrix.org>
17:34:56
yes
<@decathorpe:fedora.im>
17:35:01
i.e. the "really old" stuff has already been dropped in 2020, and this is just cleanup of leftovers
<@conan_kudo:matrix.org>
17:35:05
https://src.fedoraproject.org/rpms/epel-rpm-macros/c/d733fbe4762ba4c43de897127128400caaf8f469?branch=epel8
<@carlwgeorge:fedora.im>
17:36:43
nice
<@james:fedora.im>
17:38:02
Okay, so is everyone fine with the policy PR?
<@conan_kudo:matrix.org>
17:38:11
I suppose so, yes
<@decathorpe:fedora.im>
17:38:36
+1 from me
<@salimma:fedora.im>
17:38:47
+1
<@carlwgeorge:fedora.im>
17:38:56
lgtm
<@james:fedora.im>
17:39:32
Okay, I'm going to merge ... feel free to complain about PRs to your packages to the people making them ;)
<@tibbs:fedora.im>
17:40:18
I just wanted to get it logged that it wasn't us trying to push this into the various packages.
<@james:fedora.im>
17:40:55
!topic FPC#1440 document that there are better alternatives to alternatives?
<@james:fedora.im>
17:41:01
https://pagure.io/packaging-committee/issue/1440
<@james:fedora.im>
17:41:31
Conan Kudo: You want say anything?
<@decathorpe:fedora.im>
17:42:44
basically this would be about 1) marking the *Alternatives* page of the guidelines as "deprecated" or at least adding a banner that they are old and creaky and don't work everywhere, and 2) documenting the "modern" RPM based way to handle this kind of thing
<@carlwgeorge:fedora.im>
17:43:02
is the "modern" way just conflicts?
<@conan_kudo:matrix.org>
17:43:08
the main advantage of "alternatives" is that they can be coinstalled
<@conan_kudo:matrix.org>
17:43:23
Provides+Conflicts with a virtual name
<@james:fedora.im>
17:43:23
The problem I see is that none of the solutions really work the same way?
<@carlwgeorge:fedora.im>
17:44:07
not sure what's modern about that, but ok
<@decathorpe:fedora.im>
17:44:13
Carl George: essentially instead of running `sudo alternatives --set foo bar` you run `sudo dnf swap foo bar` to swap out the links
<@james:fedora.im>
17:44:19
Like you have to swap in the correct packages ... I was also a little confused because fedora-release-identity-* has a cinnamon package, but I'm running cinnamon but have the workstation package.
<@conan_kudo:matrix.org>
17:44:37
an "rpm-ostree"/"bootc" compatible alternatives system does exist, we just don't use it in fedora
<@conan_kudo:matrix.org>
17:45:01
the opensuse folks made alts, but switching to it would take time and it's not packaged in fedora yet anyway
<@carlwgeorge:fedora.im>
17:45:36
fwiw, i do like the provides/conflicts approach, but i know some people don't like the fact that trying to install a package that conflicts with something you already have installed gives you a message that says "error"
<@carlwgeorge:fedora.im>
17:45:55
at least, that was the rationale i was given a long time ago for why software collections was invented
<@decathorpe:fedora.im>
17:46:50
in some cases you can still parallel-install multiple providers, while only having one "active", with this approach
<@carlwgeorge:fedora.im>
17:47:29
what would that case look like? surely this is primarily for packages with conflicting files, right?
<@james:fedora.im>
17:47:57
I guess I'm fine if it's "this isn't better for everyone, but it actually works in ostree images so we need to do it" ... but it would be nice if someone had a look at the major packages using alternatives now and said "this is the way they should be done, and it works well enough"
<@decathorpe:fedora.im>
17:48:08
yes, the conflicting files would need to be in the subpackages that determine which provider is "active"
<@tibbs:fedora.im>
17:49:01
Is there a documented approach that leaves everything parallel-installable with some tiny conflicting packages that just install simlinks in /usr/bin?
<@decathorpe:fedora.im>
17:49:17
no, but that's why I filed this ticket :D
<@carlwgeorge:fedora.im>
17:49:20
that seems not worth the trouble imo
<@carlwgeorge:fedora.im>
17:49:29
just have the main packages conflict
<@tibbs:fedora.im>
17:49:33
In other words, get rid of alternatives and instead package the symlinks that it would create.
<@tibbs:fedora.im>
17:49:46
Having the main packages conflict prevents parallel installability, which is often useful.
<@decathorpe:fedora.im>
17:50:02
basically, yes
<@james:fedora.im>
17:50:31
Carl George: Pretty sure there are alternatives usecases where you need to install (and use) more than one, but you still need an alternative type thing for what is the default.
<@decathorpe:fedora.im>
17:50:36
btw, I'm fine if nothing results from this ticket, other than that we should document that Alternatives no longer work universally
<@tibbs:fedora.im>
17:50:49
The guidelines used to forbid conflicting packages with the goal of making the entire package set installable at the same time.
<@james:fedora.im>
17:51:17
That was a long time ago ;)
<@carlwgeorge:fedora.im>
17:51:28
i think it's questionable usefulness if users have to run a full path out of say /usr/libexec instead of just running the command in PATH
<@carlwgeorge:fedora.im>
17:52:20
i went through this semi-recently with singularity-ce and apptainer, and they ultimately went with simple conflicts and a virtual provides rather than figuring out the alternatives incantation
<@tibbs:fedora.im>
17:53:06
I would say that's a net loss and unfortunate.
<@tibbs:fedora.im>
17:53:18
But yes, alternatives is not great.
<@tibbs:fedora.im>
17:53:35
I'll have to look into what opensuse cooked ip.
<@decathorpe:fedora.im>
17:53:49
... is that something that we *should* do?
<@conan_kudo:matrix.org>
17:54:00
tbh, I think so
<@conan_kudo:matrix.org>
17:54:06
co-installable runtime switching is useful
<@carlwgeorge:fedora.im>
17:54:06
there's nothing wrong with the "subpackage the symlink" approach, i just think it's not worth the effort
<@tibbs:fedora.im>
17:54:17
Feel free to drop a reference if you have one.
<@conan_kudo:matrix.org>
17:54:31
I'll put it in the ticket
<@conan_kudo:matrix.org>
17:54:38
and I'll try to get alts building on fedora again
<@tibbs:fedora.im>
17:54:47
https://en.opensuse.org/openSUSE:Migrating_to_libalternatives_with_alts
<@james:fedora.im>
17:54:52
Was just about to ask you to do that, so 👍️
<@tibbs:fedora.im>
17:55:26
I can't imagine it's difficult to build.
<@carlwgeorge:fedora.im>
17:56:52
i'm at step one of the goal section and this already seems vastly more complicated that provides+conflicts
<@decathorpe:fedora.im>
17:57:08
heh, this sounds similar to the approach used in the new x86_64-vX binary providing change proposal
<@carlwgeorge:fedora.im>
17:57:13
maybe it's worthwhile in some cases, but perhaps not as the default recommendation
<@decathorpe:fedora.im>
17:58:36
yeah, I'm pretty sure many of the remaining uses of `alternatives` could be dropped entirely
<@decathorpe:fedora.im>
17:58:53
but for those that can't, moving to a "modern" implementation would seem worthwhile
<@carlwgeorge:fedora.im>
17:59:35
i think realistically the modern implementation of parallel installable is separate containers on the same host
<@decathorpe:fedora.im>
18:00:03
ew, containers 🙅 😆
<@carlwgeorge:fedora.im>
18:00:22
i didn't say it was my preference, just reality 😛
<@decathorpe:fedora.im>
18:00:44
I don't think `ld auto /usr/bin/ld.bfd` should be in a container though
<@decathorpe:fedora.im>
18:00:54
ugh formatting (
<@conan_kudo:matrix.org>
18:01:11
I believe a variation of this is leveraged for this in opensuse
<@conan_kudo:matrix.org>
18:01:33
at least before they went to the "provide RPMs and let rpm upgrade you as needed"
<@conan_kudo:matrix.org>
18:01:40
at least before they went to the "provide RPMs and let rpm upgrade you as needed" approach
<@conan_kudo:matrix.org>
18:01:53
(which I still think is the right approach for that)
<@james:fedora.im>
18:02:53
We are officially over time
<@james:fedora.im>
18:03:16
Anyone want to comment in the ticket, and then we can ignore it for a year or two? ;)
<@conan_kudo:matrix.org>
18:03:26
lol
<@conan_kudo:matrix.org>
18:03:38
I'll try to put some info in the ticket
<@conan_kudo:matrix.org>
18:03:43
we'll see how it goes from there
<@farchord:fedora.im>
18:03:54
Wait, you guys don't get overtime pay?
<@zodbot:fedora.im>
18:03:56
james gave a cookie to ngompa. They now have 158 cookies, 11 of which were obtained in the Fedora 41 release cycle
<@zodbot:fedora.im>
18:04:07
decathorpe gave a cookie to ngompa. They now have 159 cookies, 12 of which were obtained in the Fedora 41 release cycle
<@conan_kudo:matrix.org>
18:04:16
if only
<@james:fedora.im>
18:04:19
Steve Cossette [Farchord]: 10x pay ... alas. 10x 0 = 0.
<@farchord:fedora.im>
18:04:29
Haha XD
<@james:fedora.im>
18:05:28
Okay, everyone enjoy your -5m of extra time ;)
<@james:fedora.im>
18:05:35
!endmeeting