{ config, pkgs, lib, ... }: let westonSddm = let xcfg = config.services.xserver; in pkgs.writeText "weston.ini" '' [core] xwayland=false shell=fullscreen-shell.so [keyboard] keymap_model = ${builtins.toString xcfg.xkb.model}; keymap_layout = ${builtins.toString xcfg.xkb.layout}; keymap_variant = ${builtins.toString xcfg.xkb.variant}; keymap_options = ${builtins.toString xcfg.xkb.options}; [libinput] enable-tap = ${builtins.toString xcfg.libinput.mouse.tapping}; left-handed = ${builtins.toString xcfg.libinput.mouse.leftHanded}; [output] name=DP-3 mode=1920x1080@240 [output] name=DP-2 mode=off [output] name=HDMI-A-3 mode=off ''; in { services.displayManager.defaultSession = "plasma"; services.displayManager.sddm.enable = true; services.displayManager.sddm.wayland.enable = true; services.displayManager.sddm.wayland.compositor = lib.mkForce "weston"; services.displayManager.sddm.wayland.compositorCommand = lib.concatStringsSep " " [ "${lib.getExe pkgs.weston}" "--shell=kiosk" "-c ${westonSddm}" ]; services.displayManager.sddm.settings = { General = { InputMethod = ""; }; Theme = { CursorTheme = "breeze_cursors"; CursorSize = "24"; }; }; services.desktopManager.plasma6.enable = true; services.desktopManager.plasma6.enableQt5Integration = true; programs.gnupg.agent.pinentryPackage = lib.mkForce pkgs.pinentry-gnome3; environment.plasma6.excludePackages = with pkgs.kdePackages; [ kwallet kwalletmanager kwallet-pam ]; environment.variables = { # Old fix for black cursor on amdgpu, seems to work fine now #KWIN_DRM_NO_AMS = "1"; #Fix for amdgpu crashes KWIN_DRM_USE_MODIFIERS = "0"; KWIN_DRM_NO_DIRECT_SCANOUT = "1"; QT_PLUGIN_PATH = [ "${pkgs.qt6.qtimageformats}/${pkgs.qt6.qtbase.qtPluginPrefix}" "${pkgs.kdePackages.ffmpegthumbs}/${pkgs.qt6.qtbase.qtPluginPrefix}" ]; XCURSOR_THEME = "breeze_cursors"; }; environment.systemPackages = with pkgs; [ kdePackages.ark ]; programs.kdeconnect.enable = true; materus.profile.steam.extraPkgs = [ pkgs.kdePackages.breeze pkgs.kdePackages.breeze-gtk pkgs.kdePackages.dolphin pkgs.vlc pkgs.vkbasalt-cli ]; }