17:00:25 <geppetto> #startmeeting fpc 17:00:25 <zodbot> Meeting started Thu Dec 8 17:00:25 2022 UTC. 17:00:25 <zodbot> This meeting is logged and archived in a public location. 17:00:25 <zodbot> The chair is geppetto. Information about MeetBot at https://fedoraproject.org/wiki/Zodbot#Meeting_Functions. 17:00:25 <zodbot> Useful Commands: #action #agreed #halp #info #idea #link #topic. 17:00:25 <zodbot> The meeting name has been set to 'fpc' 17:00:25 <geppetto> #meetingname fpc 17:00:25 <zodbot> The meeting name has been set to 'fpc' 17:00:25 <geppetto> #topic Roll Call 17:00:45 * GwynCieslasheher here 17:00:48 <carlwgeorge> .hi 17:00:49 <zodbot> carlwgeorge: carlwgeorge 'Carl George' <carl@redhat.com> 17:00:54 <geppetto> #chair #chair GwynCieslasheher 17:00:54 <zodbot> Current chairs: #chair GwynCieslasheher geppetto 17:01:05 <geppetto> #chair carlwgeorge 17:01:05 <zodbot> Current chairs: #chair GwynCieslasheher carlwgeorge geppetto 17:01:12 <geppetto> #unchair #chair 17:01:12 <zodbot> Current chairs: GwynCieslasheher carlwgeorge geppetto 17:01:26 <geppetto> It's chairs all the way down 17:03:51 <decathorpe> hello :D 17:03:59 <geppetto> #chair decathorpe 17:03:59 <zodbot> Current chairs: GwynCieslasheher carlwgeorge decathorpe geppetto 17:10:32 <geppetto> #topic Open Floor 17:10:47 <geppetto> Well 4 i the new 5 … anyone have something to talk about? 17:11:02 <carlwgeorge> i've got one thing 17:12:04 <geppetto> sure 17:12:20 <carlwgeorge> i got looped into helping resolve a conflicts between a new package that was reviewed by one of my sponsees (singularity-ce) and an existing package (apptainer, itself renamed from singularity) 17:14:20 <carlwgeorge> there is some upstream drama involved, basically singularity was the original project, originally under a company (sylabs) github org. it got moved to a supposedly neutral github org, hpcng, but later sylabs wanted to move it back. they eventually had to just fork it, so there was hpcng/singularity and sylabs/singularity, which was described as singularity community edition. 17:15:15 <carlwgeorge> later hpcng/singularity wanted to move into the linux foundation, but due to the naming confusion lf asked them to rename. so now they are apptainer. but there are still a ton of files that conflit. 17:15:17 <GwynCieslasheher> Ick. 17:15:24 <carlwgeorge> yeah, a bit messy 17:16:08 <carlwgeorge> the singularity pkg maintainer renamed the pkg to apptainer, but didn't retire the singularity pkg to "reserve" (squat) it so sylabs couldn't have it 17:16:43 <carlwgeorge> i reached out to him and said that wasn't ok, and that singularity ce was being added as singularity-ce, so no need to squat anyways 17:17:22 <carlwgeorge> it's now retired in rawhide and epel branches 17:17:56 <carlwgeorge> the thing i want advice on is now there is an argument over what happens when you type `dnf install singularity` on fedora and rhel+epel 17:18:23 <carlwgeorge> right now apptainer provides singularity = 2:%{version}-%{release} 17:18:54 <carlwgeorge> singularity-ce does not provide singularity, but could. i'm worried they're going to get into an epoch war setting it arbitrarily high to be the "preferred" option 17:19:16 <GwynCieslasheher> 🤦♀️ 17:19:23 <geppetto> So what is now "apptainer" was the thing packaged as "singularity" ? 17:19:26 <carlwgeorge> to resolve the file conflicts we basically settled on alternatives, but it's not yet implemented 17:19:29 <decathorpe> why are people like that 17:19:50 <GwynCieslasheher> Their favorite ssh client is PeTTY? 17:20:12 <carlwgeorge> my suggestion was that neither pkg provides singularity, so users have to make an explicit choice, then once that choice is made they get the singularity commands via alternatives 17:20:19 <carlwgeorge> geppetto: yes 17:20:51 <geppetto> Squatting is bad … but we probably don't want an actual singularity package … just have it be: apptainer, singularity-ce, singularity-sylabs 17:21:03 <geppetto> Can all provide singularity, and be alternatives … I guess. 17:21:06 <decathorpe> that sounds like a reasonable way to handle this ... though I don't think you'd actually need alternatives unless you want parallel-installability? 17:21:15 <carlwgeorge> singularity-ce is the one from sylabs 17:21:22 <geppetto> Oh, ok 17:21:39 <geppetto> Well the same but with two packages then? 17:22:05 <carlwgeorge> decathorpe: they don't need to be parallel installable, but my reading of the guidelines was that alternatives was preferrable to outright conflicts if it is possilbe 17:22:32 <decathorpe> sure, avoid undeclared file-based conflicts. but in that case I'd just add "Conflicts: the-other-one" 17:22:41 <geppetto> no, alternatives are only for parallel installs … IMO 17:23:00 <geppetto> Yeh, for conflicts just conflict. 17:23:28 <carlwgeorge> i could also see a scenario where someone wants them parallel installable and switchable, when they are testing changes in the SIF format 17:23:31 <GwynCieslasheher> Yeah, that seems least worst. 17:23:31 <decathorpe> yep, that's my understanding as well. alternatives are also clunky and hard to get to work right ... in this case, I'd just make the conflict explicit on the RPM metadata level 17:23:41 <carlwgeorge> SIF is also developed by sylabs 17:23:56 <decathorpe> and if people really need to switch between them ... dnf swap foo bar should do it. 17:24:02 <geppetto> carlwgeorge: that requires a bunch of changes so they don't file conflict though … and with containers etc. I think that's less of a desire. 17:24:03 <carlwgeorge> for whatever it's worth the sylabs (singularity-ce) folks have been quite pleasant to deal with, the apptainer guy (who is also the upstream lead dev) less so 17:24:54 <carlwgeorge> i told them both that fedora should stay neutral 17:25:36 <carlwgeorge> which is why i think no pkg providing singularity is the least bad option, to avoid an epoch provides war 17:26:35 <geppetto> I don't think it's that bad if they both provide it unversioned. 17:26:48 <carlwgeorge> apptainer guy's counter argument was that mariadb still provides mysql, but the community-mysql maintainer hasn't tried to set provides mysql with a higher epoch 17:26:48 <geppetto> might even be the best case. 17:27:20 <carlwgeorge> if both are provided unversioned, which would dnf prefer when `dnf install singularity` is typed? 17:27:42 <geppetto> no idea, doubt even the dnf devs. know without trying it 17:27:44 * carlwgeorge opens a terminal to test this with the webserver virtual provides 17:28:22 <geppetto> last I looked dnf had zero docs/guarantees about what happens, and thought that was a feature. 17:28:30 <decathorpe> I think if no version is involved it will prefer the first one in alphabetical order 17:28:53 <decathorpe> (at least that's what dnf did last time it mattered for one of my packages) 17:29:41 <carlwgeorge> confirmed, it's alphabetical with webservers (caddy, httpd, lighttpd, nginx in order as they're excluded) 17:30:41 <carlwgeorge> that works out in apptainer's favor, which i'm sure he'll like (not necessarily a problem) 17:31:11 <geppetto> sure, but worth mentioning it's not a guarantee (again, afaik) 17:31:31 <carlwgeorge> he already told me that if i tried to force him to not provide singularity he would appeal to fesco 17:32:20 <geppetto> eh, if it gets too messy that's fine … but in general I'd say it's fine providing … just having provides wars sucks. 17:32:43 <geppetto> Kind of up to you, FPC has basically no power here 17:33:01 <carlwgeorge> sure, was just looking for recommendations on how to handle these two 17:33:11 <geppetto> Just escalating to FESCO means it's not your fault/problem, which might be a good outcome. 17:33:39 * decathorpe swaps FPC hat for FESCo hat: I'd say neither of the packages should provide it :) feel free to open a ticket 17:33:41 <carlwgeorge> i'd really prefer fedora to not "pick a side" in this feud, but a fesco decision would be just that 17:34:09 <carlwgeorge> decathorpe: yeah that's what i think is the most neutral option, and i know another fesco member already feels that way to 17:34:20 <geppetto> decathorpe: So the reason I'm pro provides is that then users can "dnf install singularity" and it doesn't just exit saying nothing exists. 17:34:30 <carlwgeorge> sounds good, i'll tell apptainer maintainer to escalate to fesco and wash my hands of it 17:35:10 <decathorpe> geppetto: right, but in this case, I don't think dealing with the "whose package gets chosen by default" is worth it 17:35:11 <carlwgeorge> geppetto: that wouldn't be great but then they would at least have to pick one or the other with no influence from fedora 17:35:13 <geppetto> Ideal solution, in this case, is if dnf could say "you want X or Y, pick one" … but even that also sucks for users who don't know. 17:35:37 <geppetto> ¯\_(ツ)_/¯ 17:35:40 <carlwgeorge> i'll also point out that both projects have press releases saying they are singularity 17:35:47 <carlwgeorge> "i'm the real one" 17:35:49 <geppetto> always a good plan 17:36:02 <geppetto> <insert spiderman meme> 17:36:19 <decathorpe> :D 17:36:28 <carlwgeorge> code wise, singluarity-ce is more actively developed, and apptainer routinely cherry-picks commits from them 17:36:41 <carlwgeorge> cool, thanks for the advice y'all 17:37:17 <geppetto> I'm not sure what the best outcome is … but I'm 100% sure that you picking which one is the real one based on looking at which is more acively maintained is not the right answer. 17:37:32 <GwynCieslasheher> Eventually it will probably "resolve" itself the way OpenOffice and LibreOffice have. 17:38:15 <carlwgeorge> perhaps 17:40:49 <geppetto> Anyway … not sure how much we helped … but good luck :) 17:41:02 <geppetto> Anything else before I give you all 15m back? 17:43:09 <decathorpe> I got too many things I want to talk about but none of them are ready since I have no time 🫠 17:43:42 <GwynCieslasheher> Nthing from me. 17:43:55 <GwynCieslasheher> * Nothing from me. 17:44:13 <geppetto> 👍 17:44:20 <geppetto> #endmeeting