diff --git a/components/kde.nix b/components/kde.nix index 8c1fdbe..dc648b8 100644 --- a/components/kde.nix +++ b/components/kde.nix @@ -23,6 +23,7 @@ lib.makeComponent "kde" ( # Enable the KDE Desktop Environment. services.displayManager.sddm.enable = true; services.displayManager.sddm.enableHidpi = true; + services.displayManager.sddm.theme = "breeze-user"; environment.sessionVariables.NIXOS_OZONE_WL = "1"; environment.sessionVariables.MOZ_DISABLE_RDD_SANDBOX = "1"; @@ -49,6 +50,7 @@ lib.makeComponent "kde" ( (flakes.rom-properties.packages.${pkgs.system}.rp_kde6.overrideAttrs (oldAttrs: { patches = oldAttrs.patches ++ [ ../files/rp_larger_icons.diff ]; })) + pkgs.leoPkgs.sddm-theme-breeze-user ]; services.desktopManager.plasma6.enable = true; diff --git a/pkgs/default.nix b/pkgs/default.nix index 822f640..e2637fd 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -4,6 +4,7 @@ python3, libsForQt5, qt6, + kdePackages, }: rec { @@ -23,6 +24,7 @@ rec { redumper = callPackage ./redumper { }; reposilite = callPackage ./reposilite { }; rust = callPackage ./rust { }; + sddm-theme-breeze-user = kdePackages.callPackage ./sddm-theme-breeze-user { }; twemoji-ttf = callPackage ./twemoji-ttf { }; vscode-fhs = callPackage ./vscode-fhs { }; vxis-capture-fw-mod = callPackage ./vxis-capture-fw-mod { }; diff --git a/pkgs/sddm-theme-breeze-user/default.nix b/pkgs/sddm-theme-breeze-user/default.nix new file mode 100644 index 0000000..fdd6fe6 --- /dev/null +++ b/pkgs/sddm-theme-breeze-user/default.nix @@ -0,0 +1,14 @@ +{ runCommandNoCC, plasma-desktop }: + +runCommandNoCC "sddm-theme-breeze-user" { } '' + mkdir -p $out/share/sddm/themes + cp -r ${plasma-desktop}/share/sddm/themes/breeze $out/share/sddm/themes/breeze-user + chmod -R u+w $out + sed -i -z '/WallpaperFader {[^}]*}/,''${s///;b};$q1' $out/share/sddm/themes/breeze-user/Main.qml + substituteInPlace $out/share/sddm/themes/breeze-user/Background.qml --replace-fail 'fillMode: Image.PreserveAspectCrop' 'fillMode: Image.PreserveAspectCrop; horizontalAlignment: Image.AlignLeft' + substituteInPlace $out/share/sddm/themes/breeze-user/metadata.desktop --replace-fail 'Name=Breeze' 'Name=Breeze (user)' --replace-fail 'Theme-Id=breeze' 'Theme-Id=breeze-user' + cat > $out/share/sddm/themes/breeze-user/theme.conf.user << EOF + [General] + background = ${./my_burden_is_light.png} + EOF +'' diff --git a/pkgs/sddm-theme-breeze-user/my_burden_is_light.png b/pkgs/sddm-theme-breeze-user/my_burden_is_light.png new file mode 100644 index 0000000..63fd469 Binary files /dev/null and b/pkgs/sddm-theme-breeze-user/my_burden_is_light.png differ