diff --git a/flake.lock b/flake.lock index 8cb46e2..d23fa4a 100644 --- a/flake.lock +++ b/flake.lock @@ -228,6 +228,29 @@ "type": "indirect" } }, + "plasma-manager": { + "inputs": { + "home-manager": [ + "home-manager-unstable" + ], + "nixpkgs": [ + "nixpkgs-unstable" + ] + }, + "locked": { + "lastModified": 1690827734, + "narHash": "sha256-zcNLTSKGZ5zcx0RQkDKH4dN2MBx+KTfrYN7HfmD0N7c=", + "owner": "pjones", + "repo": "plasma-manager", + "rev": "b6241a2f7c625d0b0bee8e203d78232d0a6535e9", + "type": "github" + }, + "original": { + "owner": "pjones", + "repo": "plasma-manager", + "type": "github" + } + }, "root": { "inputs": { "agenix": "agenix", @@ -239,7 +262,8 @@ "nix-index-db-unstable": "nix-index-db-unstable", "nixos-hardware": "nixos-hardware", "nixpkgs": "nixpkgs", - "nixpkgs-unstable": "nixpkgs-unstable" + "nixpkgs-unstable": "nixpkgs-unstable", + "plasma-manager": "plasma-manager" } } }, diff --git a/flake.nix b/flake.nix index f6d05d8..4150c13 100755 --- a/flake.nix +++ b/flake.nix @@ -45,9 +45,15 @@ inputs = { url = "github:Mic92/nix-index-database"; inputs.nixpkgs.follows = "nixpkgs-unstable"; }; + + plasma-manager = { + url = "github:pjones/plasma-manager"; + inputs.nixpkgs.follows = "nixpkgs-unstable"; + inputs.home-manager.follows = "home-manager-unstable"; + }; }; -outputs = { self, nixpkgs, nixpkgs-unstable, agenix, home-manager, home-manager-unstable, nixos-hardware, nix-impermanence, nix-index-db, nix-index-db-unstable, jovian, ... } @inputs: { +outputs = { self, nixpkgs, nixpkgs-unstable, agenix, home-manager, home-manager-unstable, nixos-hardware, nix-impermanence, nix-index-db, nix-index-db-unstable, jovian, plasma-manager, ... } @inputs: { devShells.x86_64-linux.default = nixpkgs.legacyPackages.x86_64-linux.mkShell { name = "Environment for toast's nixos configurations"; diff --git a/roles/kde/plasma.nix b/roles/kde/plasma.nix index 4cf16ee..c988aff 100644 --- a/roles/kde/plasma.nix +++ b/roles/kde/plasma.nix @@ -1,4 +1,4 @@ -{ config, pkgs, lib, ... }: +{ config, pkgs, lib, flakeSelf, ... }: let themeName = "Breeze"; @@ -129,4 +129,18 @@ in */ environment.systemPackages = [ breezeTint lookAndFeel plasmaDefaults ]; + # Plasma configs should be on all users + home-manager.sharedModules = [{ + imports = [ flakeSelf.inputs.plasma-manager.homeManagerModules.plasma-manager ]; + programs.plasma = { + enable = true; + workspace.clickItemTo = "select"; + shortcuts = { + "kwin" = { + "Switch One Desktop to the Left" = [ "Meta+Ctrl+Left" ]; + "Switch One Desktop to the Right" = [ "Meta+Ctrl+Right" ]; + }; + }; + }; + }]; }