From 5e3da54c5055f09d0e212945c2454e2975648989 Mon Sep 17 00:00:00 2001 From: datsudo <76833632+datsudo@users.noreply.github.com> Date: Sun, 1 Jun 2025 18:26:49 +0800 Subject: [PATCH] add XFCE --- misc/pgp/daryllepv.pub | 52 ++++++++++++++++++++++++++++++++++++++++ system/configuration.nix | 20 +++++++++++++++- user/home.nix | 13 ++++++++++ user/theming.nix | 10 ++++---- 4 files changed, 88 insertions(+), 7 deletions(-) create mode 100644 misc/pgp/daryllepv.pub diff --git a/misc/pgp/daryllepv.pub b/misc/pgp/daryllepv.pub new file mode 100644 index 0000000..2117f1b --- /dev/null +++ b/misc/pgp/daryllepv.pub @@ -0,0 +1,52 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mQINBGgQdGIBEADTtgjHbKZxXKkiZYIn2X0c3elnxvspScyXd5lsRaDK8Djin0e8 +gVheg2Gf9CQlfR0WbYIHeiq5qsr7jDQa9vc/ga4EIfuJ/F4+ifnpSsQKhLnp/ikx +wfkNtpVFp0Taj/8KABXLFwq4DAIRs1NmsdCtanroOqzVp4XUqvWF6YseV23HqxmC +lHTVEoKBz0bJHoFz2vIVMQU0HUMLYRJGXi0TlPNpdWm4oPwUhdqBcmCLpDGYfZdD +rKPJ8R33zxvSupoGkmHy2CHGOLmQUc+/TC3nT63vMgCQgpdTrnk3ukFkB5UFQR+L +xTax7t+DUp3AT+kYunvceMzZeECUIeGVPeFds/8geBML79wzmQNOeZQl93glPKeG +II8v7g7Y/6CMAzRx9LbrvGxdomixKuzFdNdIqOPV1NEl9fKPR977vdGjekYEQZMR +ahmunXvNegKzsyCwY4KYuyBLCi2zoIcUIZrvOdHyhpCjTWA/coBWKVF6Jij/1hAt +3tsLigVN1b/QAk7THtvT+D2IvNUjv7XM9LY89jS2wsh2vrr0AjbelUyAwRlq077X +H4PQDz26xqNLYpuLBRAr71Qoklz+11lLzRjDMUGEf6cZLI4/ro3/NdiZAyHaj44k +gs4xLMSeKaOuLpmN+V99f5aq/Y9Y6DoakR9eS2A6zc+kvsQt7hJ3TkYODwARAQAB +tCpEYXJ5bGxlIFZpbGxhbnVldmEgPGRhcnlsbGUucC52QGdtYWlsLmNvbT6JAlEE +EwEIADsWIQRKBDjDVkyhL7V1i8Yby/Fc7jEVYgUCaBB0YgIbAwULCQgHAgIiAgYV +CgkICwIEFgIDAQIeBwIXgAAKCRAby/Fc7jEVYj4jEACVwCET5AGY40VE0PYiyzJE +Bnc+K/fek8NJDhvc4RmOJCu28xTyyC5YZZk2+dPeA437wtzrqMSHCdRbsv5Ywl+X +0RRgtzR6zEkqo5dD+3DU0J5nt6+sUuuC3EkTGmURwtumXMs2vZNTwfXDVCzFL2NC +j/PBavstVwYCp2Yz6lrxArRLaoRo2xf5eotzRV9yhG2KvziyUCoZ6z+8/w7/qt8l +pY5OJ22pgY57uvAZ9pdfQJFw0NXT3UthiioeF4qTNEKEuBulpYsy0+CpPV8+ePpI +HLgNr5OcYiBLz9NWoGl6ntxSvLISBJc+i95M53mDLJTZ4M7jGex+lC3e181iRkme +G8mPEdKFwARdukTGq/WlhrioT7lUz4BTTgsqVnobIUdbMe/sFkUoO/lcX/4g8hr2 +x6lBpd8VT8XbLvTw/vJQ7fUsJbzMIspYkOGkd5xQt9Gks0Ki9gf97mia6QVjYjHx +kXjcTicL/ULxrk59pD4VFJZEtDB90Jegb6dxUTVf4x9WjaexOu1zAIE0BvrV5r8N +HCu4p1fOMwVGIUEruN6NXNg+FHmYYHVvHI4hYFukuNPAFaeo9WNk0rbmjwQ95h6O +GN2+iPjjWsTHPamcCgk7iAYgt9p/NYhfLrJIFdqkl9D5cEtDOvV3CIjH7JR4qd26 +8vpTUmQSTU/riZu0V/FczbkCDQRoEHRiARAAu5YyXoPIa0a2e0BbkG06xhYpK5e3 +IG7A3kguyyd85XHC6fU7xSDQZrPysIBglRokjl/hCUV5oEielc4a29rTHFMVPI7F +uuLxMnI0N+3cWi+oaYyjqEmllFmEh9FU8BNOiUiHl4+nfokGLC7Wx11WM4lzotQ/ +xDhzDYXhyTTSWg7ZjKjRDAdbJ5cumKvtUtRdvFW6wla89qubQQIYWVwbY9JUlTGH +lcqdZLC4utQ4nfgAP5gHG64XBQwE01j2g771WSj3Ckvb/To9SmB1nsurbmVXbWJD +sb22wSS3PUxnCzMSAiFh3jGRoUDjjYHQDLpbYimoZleP0ZMlLUI/GWFXEWKvQyhw +muarCcTpk0auzR9TZZtxin1Ib9nCLtrGGy84yJMu6yAjZRP31WqGHaXwihVe9wkD +Zo3y+834UATfR8niNb48HMDlu/jIf+KsypL+F1Djeq8MlouDoFP89zWg+cKoF27K +f+auSF1+J6+97w+TtFBFjWlNZcq2tHLPV9kwu4B9b5+wpAhzcuSvuFgHkHAh+3mr +kfnf23/IscoczRXNaNi9nHDEvHYZvRWDz4mKsvCAZcSMXWSY8SkdZBblDl8P36wh +sPRqiLAfg9f/bVwgmqbmPF6pYsaVkaoBpanWk9nOX6KtQ6a0DA2XsFSg7d1DDezg +nvfflP85ABBL3dcAEQEAAYkCNgQYAQgAIBYhBEoEOMNWTKEvtXWLxhvL8VzuMRVi +BQJoEHRiAhsMAAoJEBvL8VzuMRVico8P/0zP77giT3jJaf9ruEa1fbR9605Y+F6F +GGzMkH4DZBoZd4vwa+Q5PD6NNlgq/GpW2b0PwpH13emHTnlDDpegfH96wzYUq4hZ +CEcfG7W0eTORzO/MmE1eydbBMK/Ilq3KkHWTQKkJPSc6EOm5741yaRn1epg58+JD +ouNqi6XtlsqQZHs/m09Oo1sIc+LqTONpOrH8JqOVNpjKBLSpEecwenbU/5RQbMJA +6oxh38ZWqZLA1UMeVa3upPDXC467tnQDFoEFsA1MVZHtp6dnE4D2NMfaxk/OK9VB +lV8xBNh8V+4gH7/4h8InZ5xIU2+LoBelKbeEPsGum3TGeq2teAGgsVM8h/r+Xdcu +lnXWN9bejynoeyXJwbTE/Iu7Dj3FOBpMyVCIgh7e9XW58SSsRswRKGOIP6Kq+8+U +PyEMXgUFanQ5m6Fdtxn3DabKXkGF06qMrNpbWP5YkJwic5dqIqQndE8Axf40d6Ao +SOE0JWztFzGdZKTaoKv17uXzwtU0x0SLLFfzIjVrY0ghiaNRownVsGtQF+hrK5et +mpZ26bcmVH86Mk08dUOnS+SVu4OH4CkodBPc8ZMPZ8r09UHX1OafVBpawBa7DKsf +jhCcQ1AYc+I09EVL0dTetF1aolqhmaOGo4Cn1e1bXWeMjoyoLfYU6yG2GyIGIJvm +j2S0XYKDWKbb +=IPz4 +-----END PGP PUBLIC KEY BLOCK----- diff --git a/system/configuration.nix b/system/configuration.nix index 2ecebc2..d43d513 100644 --- a/system/configuration.nix +++ b/system/configuration.nix @@ -24,9 +24,12 @@ services = { xserver = { enable = true; + excludePackages = [ pkgs.xterm ]; displayManager.lightdm.enable = true; + desktopManager.cinnamon.enable = true; + desktopManager.xfce.enable = true; xkb.layout = "us"; xkb.variant = ""; @@ -44,6 +47,7 @@ package = pkgs.haskellPackages.greenclip; }; + gnome.gnome-keyring.enable = true; envfs.enable = true; gvfs.enable = true; tumbler.enable = true; @@ -64,6 +68,7 @@ ### SECURITY security.rtkit.enable = true; + security.pam.services.lightdm.enableGnomeKeyring = true; ### USERS users = { @@ -83,6 +88,10 @@ ssh.startAgent = true; zsh.enable = true; xfconf.enable = true; + dconf.enable = true; + gnupg.agent = { + enable = true; + }; thunar = { enable = true; plugins = [ @@ -107,11 +116,20 @@ keepassxc rustup gcc gnumake clang-tools nodejs pnpm imagemagick pandoc nixd dbeaver-bin gdu sl pavucontrol ffmpeg ffmpegthumbnailer p7zip rar unrar zip unzip dig nix-du - nh graphviz libnotify + nh graphviz libnotify xtitle xwinmosaic xorg.xev xdo xdotool xsel + drawing xorg.xinit wmctrl + + xfce.gigolo xfce.xfce4-dict xfce.xfce4-panel xfce.xfce4-pulseaudio-plugin + xfce.xfce4-whiskermenu-plugin xfce.mousepad + xfce.xfwm4-themes xfce.xfce4-netload-plugin inputs.zen-browser.packages.${pkgs.system}.default ]; + environment.xfce.excludePackages = with pkgs.xfce; [ + xfce4-appfinder xfce4-taskmanager xfce4-terminal + ]; + ### ENV environment.variables = { EDITOR = "nvim"; diff --git a/user/home.nix b/user/home.nix index 0938bc7..942f729 100644 --- a/user/home.nix +++ b/user/home.nix @@ -98,5 +98,18 @@ programs.vesktop.enable = true; + programs.gpg = { + enable = true; + homedir = "${config.xdg.dataHome}/gnupg"; + publicKeys = [ + { source = ../misc/pgp/daryllepv.pub; trust = 5; } + ]; + }; + + services.gpg-agent = { + enable = true; + enableZshIntegration = true; + }; + programs.home-manager.enable = true; } diff --git a/user/theming.nix b/user/theming.nix index bad9bc9..de8a1f9 100644 --- a/user/theming.nix +++ b/user/theming.nix @@ -32,7 +32,10 @@ in size = 20; }; iconTheme = { - name = "Tela-dark"; + # TODO: since XFCE accepts "Tela dark" but Cinnamon + # accepts only "Tela-dark", we have to modularize XFCE and + # Cinnamon + name = "Tela dark"; package = pkgs.tela-icon-theme; }; gtk3 = { @@ -49,14 +52,9 @@ in style.name = "adwaita-dark"; }; - home.packages = lib.mkIf cfg.enable [ - pkgs.plank pkgs.libwnck pkgs.bamf - ]; - xdg.autostart = lib.mkIf cfg.autostart { enable = true; entries = [ - "${pkgs.plank}/share/applications/plank.desktop" ]; }; };