#13 Packaging guidelines for application independence
Closed 4 years ago Opened 5 years ago by catanzaro.

We have an issue where installing an application in GNOME Software can sometimes cause other applications to be secretly installled. This happens when one application either directly or indirectly Requires, Recommends, or Supplements another. (I think. I am not entirely sure if it follows Recommends and Supplements or not.) An equivalent issue exists where uninstalling an application can sometimes uninstall other applications if there is a Requires.

As GNOME Software is designed to handle independent applications, it by design does not currently inform the user about application interdependencies. This is, or at least was, considered a packaging bug by the GNOME Software developers. However, Fedora's packaging guidelines do not reflect this reality. We should change either GNOME Software, or the packaging guidelines.

I have prepared a draft for new packaging guidelines here: https://fedoraproject.org/wiki/PackagingDrafts/IndependentApplications

(Note: the paragraph at the top is preexisting; the new stuff is under the Independent Applications heading.)

We should figure out whether we want to proceed with this policy or not. I wrote this policy assuming that the GNOME Software behavior would not be changed, and that we would have to adapt our packaging guidelines to account for that. However, Matthias suggests that it would make sense for GNOME Software to inform the user when installing or removing an application due to a dependency. If it did this, then we would not need any policy change at all. I'm inclined to agree that it would be better to improve GNOME Software if that is an option. However, even if we do that, we might still propose a variation of this policy with the MUSTs replaced with SHOULDs, as ensuring that applications are independent is, ahem, independently-desirable regardless. This is what I'm leaning towards right now.

Note that packaging guidelines changes require approval by the packaging committee. Here we can only approve a proposal to present to the packaging committee.


Update from the WG meeting on May 8:

The proposal has been reworded during the meeting, but it needs some further tweaks before everybody is on board: remove the concrete implementation guidance about splitting off desktop files, and leave just the policy statements.

Revisit next time

I've modified the draft fairly heavily to accommodate feedback from Rex. Please review it again.

Also note that Kalev agreed to modify GNOME Software to warn the user when installing/uninstalling multiple applications at once. Accordingly, my edit removed all the MUSTs from the policy, since it's not really required anymore, just recommended.

Metadata Update from @catanzaro:
- Issue tagged with: meeting

5 years ago

From last time: https://meetbot.fedoraproject.org/teams/workstation/workstation.2017-06-05-13.01.html

@mclasen is going to talk to @rhughes about this -- there's already a bug open upstream as seen above where conversation is progressing. More next meeting.

I've talked to hughsie. He bounced me to the designers for advice on this, and gave the following guidance: "no way for f26". Which seems fine...

It would be several months too late to go into F26 anyway. Later is fine.

I've created a packaging committee ticket:

https://pagure.io/packaging-committee/issue/694

I've also sent a mail to the packaging@ mailing list, though I didn't join the list so it might not be approved right away.

Ah, my mail was rejected since I'm not a list member. I'm sure the pagure issue will suffice.

Ah, my mail was rejected since I'm not a list member. I'm sure the pagure issue will suffice.

It will. Thank you!

I just discovered in my TODO list that we had agreed that I would change the phrase "application" to "GUI application." I thought more about this and it makes the draft more confusing, since we want this guideline to apply to any applications with desktop files, even if they launch in a terminal. So I think we should keep this as-is.

Metadata Update from @pfrields:
- Issue untagged with: meeting
- Issue assigned to catanzaro

5 years ago

It was on the agenda for the last two Packaging Committee meetings, but they only discussed new items and this was considered a follow-up item, and those weren't discussed. I don't know how their meeting structure works, but I guess if it stays on the agenda they'll get to it eventually....

It was on the agenda for the last two Packaging Committee meetings, but they only discussed new items and this was considered a follow-up item, and those weren't discussed. I don't know how their meeting structure works, but I guess if it stays on the agenda they'll get to it eventually....

Seems packaging committee is dysfunctional; I have no clue when they'll get around to this.

Update: the packaging committee finally got around to this three weeks ago. I was asked to make some revisions to the guidelines, but haven't gotten around to doing so yet.

According to https://meetbot.fedoraproject.org/fedora-meeting-1/2018-05-03/fpc.2018-05-03-16.01.log.html, the change is approved.

Here's the final diff:

https://fedoraproject.org/w/index.php?title=PackagingDrafts%2FIndependentApplications&type=revision&diff=517590&oldid=517484

Note that it's changed a lot from what our WG originally approved, but I think the spirit of the change is still intact.

The guidelines have not been updated yet. That can be tracked at https://pagure.io/packaging-committee/issue/694.

Metadata Update from @catanzaro:
- Issue status updated to: Closed (was: Open)

4 years ago

Login to comment on this ticket.

Metadata