64 lines
1.3 KiB
Nix
64 lines
1.3 KiB
Nix
{
|
|
inputs,
|
|
pkgs,
|
|
config,
|
|
lib,
|
|
...
|
|
}:
|
|
with lib; let
|
|
cfg = config.elements.wm;
|
|
in {
|
|
options.elements = {
|
|
wm = {
|
|
enable = mkEnableOption "Enable window manager configuration";
|
|
};
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
environment.systemPackages = with pkgs; [
|
|
# kdePackages.discover
|
|
# kdePackages.kclock
|
|
# kdePackages.kcharselect
|
|
# kdePackages.kolourpaint
|
|
# kdePackages.ksystemlog
|
|
wayland-utils
|
|
wl-clipboard
|
|
libsForQt5.qtstyleplugin-kvantum
|
|
xwayland-satellite
|
|
nautilus # xdg-gnome needs this but we don't use gnome???
|
|
];
|
|
|
|
programs.niri = {
|
|
enable = true;
|
|
package = pkgs.niri;
|
|
};
|
|
|
|
# niri-flake.cache.enable = false;
|
|
|
|
services.xserver = {
|
|
enable = true;
|
|
};
|
|
|
|
# TODO: Switch this to Niri!
|
|
services.desktopManager.plasma6.enable = true;
|
|
services.displayManager = {
|
|
defaultSession = "niri";
|
|
|
|
sddm = {
|
|
enable = true;
|
|
wayland.enable = true;
|
|
};
|
|
};
|
|
|
|
xdg.portal = with pkgs; {
|
|
enable = true;
|
|
xdgOpenUsePortal = true;
|
|
|
|
extraPortals = [xdg-desktop-portal-gnome xdg-desktop-portal-gtk];
|
|
#E configPackages = [pkgs.xdg-desktop-portal-gtk];
|
|
config.common.default = "gtk";
|
|
};
|
|
|
|
security.polkit.enable = true;
|
|
};
|
|
}
|