I am trying to use KDE Plasma 6 with the rest of my system remaining on stable.
To accomplish this I have done the following:
imports = [ (unstable + "/nixos/modules/services/desktop-managers/plasma6.nix") ];
This has led me down a rabbit-hole of further imports since the new module makes use of other module changes on unstable.
I have now wound up with this:
disabledModules = [
"services/desktop-managers/plasma6.nix"
"programs/chromium.nix"
"programs/gnupg.nix"
"services/x11/display-managers/sddm.nix"
"security/pam.nix"
"config/krb5/default.nix"
];
imports = [
(unstable + "/nixos/modules/services/desktop-managers/plasma6.nix")
(unstable + "/nixos/modules/programs/chromium.nix")
(unstable + "/nixos/modules/programs/gnupg.nix")
(unstable + "/nixos/modules/services/x11/display-managers/sddm.nix")
(unstable + "/nixos/modules/security/pam.nix")
(unstable + "/nixos/modules/security/krb5/default.nix")
(unstable + "/nixos/modules/services/security/intune.nix")
];
This works, however this feels very unholy. Especially since I have basically replaced all PAM config with that from unstable nixpkgs.
Is there a better way to do this? (I am using flakes by the way)
This question is not necessarily KDE specific by the way. If there is an easier / safer way to use modules from unstable without importing / overriding everything manually I’d love to know since I may want to use other modules from unstable in the future.