From bb11479130b0988e93408aa917cfc872d427d95f Mon Sep 17 00:00:00 2001 From: Leonardo Date: Sat, 28 Feb 2026 16:27:59 +0100 Subject: nuovo layout --- components/gui/plasma.nix | 20 ++++++++++++++++++++ components/gui/xfce.nix | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 components/gui/plasma.nix create mode 100644 components/gui/xfce.nix (limited to 'components/gui') diff --git a/components/gui/plasma.nix b/components/gui/plasma.nix new file mode 100644 index 0000000..fc6b6eb --- /dev/null +++ b/components/gui/plasma.nix @@ -0,0 +1,20 @@ +{lib, config, pkgs, ...}: { + options.plasma.enable = lib.mkEnableOption "KDE Plasma"; + + config = lib.mkIf config.plasma.enable { + services.desktopManager.plasma6.enable = true; + + # XDG + xdg.portal.extraPortals = with pkgs.kdePackages; [ xdg-desktop-portal-kde ]; + + # Packages + environment.systemPackages = with pkgs.kdePackages; [ + kate filelight + + flatpak-kcm + ]; + + # Excluded + environment.plasma6.excludePackages = with pkgs.kdePackages; [ plasma-browser-integration elisa discover ]; + }; +} diff --git a/components/gui/xfce.nix b/components/gui/xfce.nix new file mode 100644 index 0000000..55f1475 --- /dev/null +++ b/components/gui/xfce.nix @@ -0,0 +1,47 @@ +{inputs, lib, config, pkgs, ...}: +let + thunar-archive-plugin-with-xarchiver = pkgs.thunar-archive-plugin.overrideAttrs (old: { + postInstall = (old.postInstall or "") + '' + cp ${pkgs.xarchiver}/libexec/thunar-archive-plugin/xarchiver.tap \ + $out/libexec/thunar-archive-plugin/ + ''; + }); +in { + options.xfce.enable = lib.mkEnableOption "Xfce Desktop Environment"; + + config = lib.mkIf config.xfce.enable { + services.xserver = { + enable = true; + + desktopManager.xfce.enable = true; + }; + + # File manager + programs.thunar = { + enable = true; + + plugins = with pkgs; [ + thunar-archive-plugin-with-xarchiver + thunar-media-tags-plugin + thunar-vcs-plugin + thunar-volman + ]; + }; + + # XDG + xdg.portal.extraPortals = with pkgs; [ xdg-desktop-portal-gtk ]; + + # Packages + environment.systemPackages = with pkgs; [ + bluez blueman + xarchiver + + xfce4-whiskermenu-plugin + xfce4-docklike-plugin + inputs.xfce4-hiddenapps-plugin.packages.x86_64-linux.default + ]; + + # Excluded + environment.xfce.excludePackages = with pkgs; [ parole ]; + }; +} -- cgit v1.3