-
-
Notifications
You must be signed in to change notification settings - Fork 14.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
plasma-workspace: add systementry sessionmanagement patch #99582
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should use fetchpatch
instead of fetchurl
.
@NinjaTrappeur Does this also fix the lock screen? |
1b82778
to
7cabb77
Compare
Systemd v246 hides the interface used by KDE to fetch the user session details. We're applying this commit from 5.19.90 upgrading the systementry applet to use the new sessionmanagement API. Because of this API breakage, the "Switch User" item was absent from the KDE application laucher. See the NixOS#98141 issue for the full story.
7cabb77
to
a054b43
Compare
I did not check the lock screen, I only verified the item was appearing in the login screen and application launcher. I destroyed the VM and garbage collected the store. I think I'll call it a day for now. I'll check this tomorrow night CEST (if you cannot do it by then). PTAL. |
The launcher is fixed, but the lock screen is not fixed. I guess that we need a patch to |
( # Systemd v246 hides the interface used by KDE to fetch the | ||
# user session details. | ||
# We're applying this commit from 5.19.90 upgrading the | ||
# systementry applet to use the new sessionmanagement API. | ||
# See https://github.com/NixOS/nixpkgs/issues/98141 for more | ||
# details. | ||
# /!\ Remove this patch for version >= v5.19.90 | ||
fetchpatch { | ||
name = "0003-port-systementry-to-sessionmanagement-api.patch"; | ||
url = "https://invent.kde.org/plasma/plasma-workspace/-/commit/05414ed58d43d87d907326636faac53ae2e7bd60.patch"; | ||
sha256 = "16izfcwxjkdn99j777ywjkzl01iyl542h4hpsbpkckccj7hz8sin"; | ||
}) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This may be hacky since there's not a good "Qt source of truth", but would we be able to conditionally disable this, something like:
] ++ lib.optional (lib.versionOlder qtquickcontrols.version "5.19") [
<patch>
];
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
actually, the Qt PRs will probably visit this, and might not be necessary.
Too much time spent doing python PRs :)
seems like no regressions from a program standpoint. Haven't tested
|
Indeed, I can also reproduce the problem on the lockscreen. I don't see any fix upstream be it in code or as a related bugtracker ticket. I need help here, there's a hole in my understanding of kde-workspace. As far I understand, the item visibility is defined at https://invent.kde.org/plasma/plasma-workspace/-/blob/master/lookandfeel/contents/lockscreen/LockScreenUi.qml#L277 The However, this action item is clearly not visible. Meaning either Any idea what could happen here @ttuegel? Are you in contact with some upstream dev. They might be able to help here. I'd be interested to see if your systemd patch fixes this issue. If it is, I guess we should investigate the |
Fixed by #99629 |
Motivation for this change
Systemd v246 hides the interface used by KDE to fetch the user session
details. We're applying this commit from 5.19.90 upgrading the
systementry applet to use the new sessionmanagement API.
Because of this API breakage, the "Switch User" item was absent from
the KDE application laucher.
See the #98141 issue for the
full story.
Things done
Pick https://invent.kde.org/plasma/plasma-workspace/-/commit/05414ed58d43d87d907326636faac53ae2e7bd60 from upstream.
The missing items are appearing again and are fully functional.
How to Test?
I used this trick #98141 (comment).
Don't forget to point to your local nixpkgs checkout:
Note for @ttuegel: I'll let you handle the backport (if you're ok with this PR ofc :)).
sandbox
innix.conf
on non-NixOS linux)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
./result/bin/
)nix path-info -S
before and after)