From 81e06a0513922790f1c6e36405f7c3981e5f79e3 Mon Sep 17 00:00:00 2001 From: cy Date: Sat, 1 Feb 2025 22:36:56 -0500 Subject: [PATCH] install plasma and use plasma-manager to configure --- flake.lock | 24 ++++++++++++++++++++++++ flake.nix | 6 ++++++ home/plasma.nix | 25 +++++++++++++++++++++++++ home/yt/ytnix.nix | 2 ++ hosts/ytnix/default.nix | 15 +++++++++++++++ 5 files changed, 72 insertions(+) create mode 100644 home/plasma.nix diff --git a/flake.lock b/flake.lock index 6b42d56..55872fd 100644 --- a/flake.lock +++ b/flake.lock @@ -1154,6 +1154,29 @@ "type": "github" } }, + "plasma-manager": { + "inputs": { + "home-manager": [ + "home-manager" + ], + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1736549395, + "narHash": "sha256-XzwkB62Tt5UYoL1jXiHzgk/qz2fUpGHExcSIbyGTtI0=", + "owner": "nix-community", + "repo": "plasma-manager", + "rev": "a53af7f1514ef4cce8620a9d6a50f238cdedec8b", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "plasma-manager", + "type": "github" + } + }, "pre-commit-hooks": { "flake": false, "locked": { @@ -1232,6 +1255,7 @@ "nixpkgs-garage": "nixpkgs-garage", "nixvim": "nixvim", "nvim-github-theme": "nvim-github-theme", + "plasma-manager": "plasma-manager", "rust-overlay": "rust-overlay", "sops-nix": "sops-nix", "treefmt": "treefmt" diff --git a/flake.nix b/flake.nix index 66dad85..cb60dbb 100644 --- a/flake.nix +++ b/flake.nix @@ -72,6 +72,11 @@ url = "github:nix-community/nix-ld"; inputs.nixpkgs.follows = "nixpkgs"; }; + plasma-manager = { + url = "github:nix-community/plasma-manager"; + inputs.nixpkgs.follows = "nixpkgs"; + inputs.home-manager.follows = "home-manager"; + }; nixpkgs-garage.url = "github:cything/nixpkgs/garage-module"; # unmerged PR @@ -218,6 +223,7 @@ ./home/yt/ytnix.nix inputs.nixvim.homeManagerModules.nixvim inputs.niri.homeModules.config + inputs.plasma-manager.homeManagerModules.plasma-manager ]; }; diff --git a/home/plasma.nix b/home/plasma.nix new file mode 100644 index 0000000..077b530 --- /dev/null +++ b/home/plasma.nix @@ -0,0 +1,25 @@ +{ ... }: +{ + programs.plasma = { + enable = true; + workspace = { + lookAndFeel = "org.ide.breezedark.desktop"; + cursor = { + theme = "Bibata-Modern-Classic"; + size = 32; + }; + }; + + fonts = { + general = { + family = "IBM Plex Mono"; + pointSize = 12; + }; + }; + + input.keyboard = { + numlockOnStartup = "on"; + options = [ "ctrl:nocaps" ]; + }; + }; +} diff --git a/home/yt/ytnix.nix b/home/yt/ytnix.nix index 0e43354..4a8b31e 100644 --- a/home/yt/ytnix.nix +++ b/home/yt/ytnix.nix @@ -11,6 +11,7 @@ ../irssi.nix ../kitty.nix ../vscode.nix + ../plasma.nix ]; home = { username = "yt"; @@ -114,6 +115,7 @@ lldb (cutter.withPlugins (plugins: with plugins; [ rz-ghidra jsdec sigdb ])) ida-free + patchelf ]; programs.waybar.enable = true; diff --git a/hosts/ytnix/default.nix b/hosts/ytnix/default.nix index b748be0..e0d7c1d 100644 --- a/hosts/ytnix/default.nix +++ b/hosts/ytnix/default.nix @@ -174,6 +174,8 @@ haskell-language-server ghc sbctl # secure boot + wine-wayland + wine64 ]; environment.sessionVariables = { @@ -187,6 +189,12 @@ services.displayManager = { enable = true; autoLogin.user = "yt"; + defaultSession = "plasma"; + sddm = { + enable = true; + wayland.enable = true; + autoNumlock = true; + }; }; fonts.packages = with pkgs; [ @@ -294,6 +302,8 @@ waylandpp cairo xcb-util-cursor + libplist + p11-kit xorg.libX11 xorg.libxcb xorg.xcbutilwm @@ -377,4 +387,9 @@ startAgent = true; enableAskPassword = true; }; + + services.desktopManager.plasma6 = { + enable = true; + enableQt5Integration = true; + }; }