Skip to content
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

Night color is broken after updated to plasma 5.21 #117036

Closed
poscat0x04 opened this issue Mar 20, 2021 · 14 comments
Closed

Night color is broken after updated to plasma 5.21 #117036

poscat0x04 opened this issue Mar 20, 2021 · 14 comments

Comments

@poscat0x04
Copy link
Contributor

Describe the bug
Night color cannot be enabled and it shows an error message "Failed to connect to the Window Manager" on the settings panel.

To Reproduce
Steps to reproduce the behavior:

  1. enable plasma and use kwin as the window manager (default)
  2. open settings -> Display and Monitor -> Night Color

Expected behavior
Night color should work

Metadata

  • system: "x86_64-linux"
  • host os: Linux 5.11.7, NixOS, 21.05.20210319.f5e8bdd (Okapi)
  • multi-user?: yes
  • sandbox: yes
  • version: nix-env (Nix) 2.4pre20210317_8a5203d
  • channels(root): ""
  • nixpkgs: /nix/store/mz372xs1z8r6b3337zs0qxkg0ffrbnn3-source

Maintainer information:

# a list of nixpkgs attributes affected by the problem
attribute:
# a list of nixos modules affected by the problem
module:
@andrevmatos
Copy link
Member

This is caused by the lack of lcms2 on kwin's buildInputs in order for cmake to build the nightcolor plugin. The dependencies for the krunner plugin is also missing. I have this overlay on my system which solves both bugs:

final: prev: {
  plasma5Packages = prev.plasma5Packages // {
    plasma5 = prev.plasma5Packages.plasma5 // {
      kwin = prev.plasma5Packages.plasma5.kwin.overrideAttrs (
        old: {
          buildInputs = (old.buildInputs or [ ]) ++ [ prev.lcms2 prev.plasma5Packages.krunner ];
        }
      );
    };
  };
}

@tim-hilt
Copy link

Can confirm; the overlay works for me 👍

@mdevlamynck
Copy link
Contributor

PR? 🙏

@tim-hilt
Copy link

tim-hilt commented May 19, 2021

In the process, but I don't know, how I could specify plasma5Packages.krunner as a dependency (First PR and Nix Newbie 😄 ).

When I search for krunner via search.nixos.org, I see krunner-pass and some libsForQt...krunner. Do I even need a prefix for krunner or can I just include it?

And as another question: Should I perform the PR directly on master or some other branch?

@mdevlamynck
Copy link
Contributor

mdevlamynck commented May 19, 2021

In most case you want to target master and maybe backport the change to the current release after (you can find some informations about that in https://github.com/NixOS/nixpkgs#contributing and https://github.com/NixOS/nixpkgs/blob/master/.github/CONTRIBUTING.md).

After a quick search some other package use krunner directly (like kdeplasma-addons and kdevelop) so something like that should work (at least it builds on my machine, I haven't been able to test it yet):

index 2008529a38b..ad5d4e3cfbf 100644
--- a/pkgs/desktops/plasma-5/kwin/default.nix
+++ b/pkgs/desktops/plasma-5/kwin/default.nix
@@ -12,7 +12,7 @@
   kcoreaddons, kcrash, kdeclarative, kdecoration, kglobalaccel, ki18n,
   kiconthemes, kidletime, kinit, kio, knewstuff, knotifications, kpackage,
   kscreenlocker, kservice, kwayland, kwayland-server, kwidgetsaddons, kwindowsystem, kxmlgui,
-  plasma-framework, libcap, libdrm, mesa, pipewire
+  plasma-framework, libcap, libdrm, mesa, pipewire, lcms2, krunner
 }:
 
 # TODO (ttuegel): investigate qmlplugindump failure
@@ -31,7 +31,7 @@ mkDerivation {
     kcoreaddons kcrash kdeclarative kdecoration kglobalaccel ki18n kiconthemes
     kidletime kinit kio knewstuff knotifications kpackage kscreenlocker kservice
     kwayland kwayland-server kwidgetsaddons kwindowsystem kxmlgui plasma-framework
-    libcap libdrm mesa pipewire
+    libcap libdrm mesa pipewire lcms2 krunner
   ];
   outputs = [ "dev" "out" ];
   patches = [

@andrevmatos What does the kwin plugin for krunner do? I can't find any information about it.

Edit: Maybe the krunner part should be added in a separate PR if it's not required to fix this issue.

@tim-hilt
Copy link

I'm currently not able to test the changes on my nixpkgs-fork. Would a PR still be a valid option or should I first test extensively?

@mdevlamynck
Copy link
Contributor

Well making sure the PR actually fixes the issue is kind of needed. I'll make the PR if I can test it. Feel free to do it if you can test it first :)

@tim-hilt
Copy link

Thanks for all the information you've given! I think I'll contribute a bit later, when I have more time to get into all this stuff.

@mdevlamynck
Copy link
Contributor

Seems to be already fixed on staging.

@solson
Copy link
Member

solson commented May 20, 2021

Is there an easy way to check (or get a notification) for when staging next gets merged into master?

@mdevlamynck
Copy link
Contributor

I think it's part of #123279.

@andrevmatos
Copy link
Member

krunner plugin for kwin is what allows krunner to search for open windows and select them. If kwin isn't compiled with krunner, this funcitonality doesn't work.

@solson
Copy link
Member

solson commented May 25, 2021

This is fixed for me in the latest nixos-unstable.

@andrevmatos
Copy link
Member

I can confirm it's fixed on current unstable. This issue can be closed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants