#2725 tlp package deliberately breaks power-profiles-daemon package
Closed: Accepted 2 years ago by zbyszek. Opened 2 years ago by hadess.

The tlp package, when installed, deliberately disables and renders unstartable the systemd-rfkill and power-profiles-daemon D-Bus service, both of which are installed-by-default system services.

An issue was filed about a month ago with no response from the maintainer:
https://bugzilla.redhat.com/show_bug.cgi?id=2028701#c11

A package shipped in Fedora should not be allowed to disable daemons in other packages that aren't part of the same suite. This change caused many upstream and downstream bugs being files against power-profiles-daemon in the past couple of months, and I'm fairly certain it's also responsible for many bug reports about rfkill statuses not being saved that were filed against gnome-settings-daemon, gnome-control-center, gnome-shell, systemd, gnome-bluetooth or even bluez.

If fesco deems this behaviour to be reasonable on tlp's part, I will have to add Conflicts against tlp for every package I deem impacted by this behaviour, whether I maintain or co-maintain it, upstream or downstream.


This package is also shipping its own preset file, which is not permitted.

https://src.fedoraproject.org/rpms/tlp/blob/rawhide/f/50-tlp.preset

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

2 years ago

Proposal: tlp must drop its own preset file and the calls to mask/unmask services in another package. If desired, a request to add the same presets to fedora-release can be opened.

Requesting fast-track because it's a serious problem affecting both blocking desktops (GNOME and Plasma).

Metadata Update from @ngompa:
- Issue untagged with: meeting
- Issue tagged with: fast track

2 years ago

Metadata Update from @zbyszek:
- Issue untagged with: fast track

2 years ago

Proposal: tlp must drop its own preset file and the calls to mask/unmask services in another package. If desired, a request to add the same presets to fedora-release can be opened.

+1

+1 to the proposal.

Though if the two services really conflict with each other, shouldn't there be Conflicts on packaging or systemd unit level as well?

Though if the two services really conflict with each other, shouldn't there be Conflicts on packaging or systemd unit level as well?

There's already a "Conflicts" stanza in power-profiles-daemon's service file.

+1 to the proposal, do we need to update the packaging guidelines for this scenario?

I'm pretty sure the guidelines already forbid this.

What's the next step for this?

Waiting for a week to pass so the vote is finalized. Not everybody has voted yet.

Once approved, we need to actually change tlp. Are you able o prepare a pull request for that, or do you want somebody from fesco to do it?

Once approved, we need to actually change tlp. Are you able o prepare a pull request for that, or do you want somebody from fesco to do it?

There's a clear conflict of interest from my side, so I'd rather somebody else made those changes.

Assuming the proposal is accepted, I can do the legwork.

Sorry for not responding earlier. I don't think I understand the nuances of this and I don't have any strong opinions on the matters discussed or on the conclusions of what needs to be done.

I believe I originally made the changes at the request of upstream without thinking too much about it. I will implement the following in rawhide shortly and follow up with upstream:

"tlp must drop its own preset file and the calls to mask/unmask services in another package."

I pushed an update, is this sufficient?
https://bodhi.fedoraproject.org/updates/FEDORA-2022-89facbca19

I apologize for the noise. Looking through the history, the preset file actually was in the package from the beginning. It looks like it slipped past package review and I didn't really think too much of it at the time. I actually forgot it was there, to be honest.

As for the service masking rfkill, this seems like a mistake on my part and I missed the clause in the guidelines about it (as pointed out by @decathorpe).

I hope I didn't make too much of a mess, sorry again :)

Metadata Update from @zbyszek:
- Issue close_status updated to: Accepted
- Issue status updated to: Closed (was: Open)

2 years ago

The fix was pushed to rawhide and f35 branches, but the problem seems to also affect Fedora 34.

I assume this can be handled as an update later… We don't need to track this here.

@mystro256 Please also remove the post script for the rdw subpackage, as it calls systemctl enable explicitly (which is not allowed as it bypasses presets).

@ngompa Thanks for letting me know, I almost missed that.

Login to comment on this ticket.

Metadata