forked from jan-leila/nix-config
		
	main #5
					 2 changed files with 40 additions and 12 deletions
				
			
		|  | @ -4,6 +4,12 @@ | |||
|       extensions = [ | ||||
|         pkgs.gnomeExtensions.dash-to-dock | ||||
|       ]; | ||||
|       hotkeys = { | ||||
|         "Open Terminal" = { | ||||
|           binding = "<Super>t"; | ||||
|           command = "kgx"; | ||||
|         }; | ||||
|       }; | ||||
|     }; | ||||
| 
 | ||||
|     dconf = { | ||||
|  | @ -27,12 +33,6 @@ | |||
|           ]; | ||||
|         }; | ||||
| 
 | ||||
|         "org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = { | ||||
|           binding = "<Super>t"; | ||||
|           command = "kgx"; | ||||
|           name = "Open Terminal"; | ||||
|         }; | ||||
| 
 | ||||
|         "org/gnome/shell" = { | ||||
|           favorite-apps = ["org.gnome.Nautilus.desktop" "firefox.desktop" "codium.desktop" "steam.desktop" "org.gnome.Console.desktop"]; | ||||
|           # app-picker-layout = | ||||
|  |  | |||
|  | @ -9,17 +9,45 @@ | |||
|       default = []; | ||||
|       description = "The set of extensions to install and enable in the user environment."; | ||||
|     }; | ||||
|     hotkeys = lib.mkOption { | ||||
|       type = lib.types.attrsOf (lib.types.submodule ({name, ...}: { | ||||
|         options = { | ||||
|           binding = lib.mkOption { | ||||
|             type = lib.types.str; | ||||
|           }; | ||||
|           command = lib.mkOption { | ||||
|             type = lib.types.str; | ||||
|           }; | ||||
|         }; | ||||
|       })); | ||||
|       default = {}; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   config = { | ||||
|     home.packages = config.gnome.extensions; | ||||
|     dconf = { | ||||
|       settings = { | ||||
|       settings = lib.mkMerge [ | ||||
|         { | ||||
|           "org/gnome/shell" = { | ||||
|             disable-user-extensions = false; # enables user extensions | ||||
|             enabled-extensions = builtins.map (extension: extension.extensionUuid) config.gnome.extensions; | ||||
|           }; | ||||
|       }; | ||||
|         } | ||||
|         ( | ||||
|           builtins.listToAttrs ( | ||||
|             lib.lists.imap0 ( | ||||
|               i: value: lib.attrsets.nameValuePair "org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom${toString i}" value | ||||
|             ) | ||||
|             (lib.attrsets.mapAttrsToList (_: value: value) config.gnome.hotkeys) | ||||
|           ) | ||||
|         ) | ||||
|         #         "org/gnome/settings-daemon/plugins/media-keys" = { | ||||
|         #   custom-keybindings = [ | ||||
|         #     "/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/" | ||||
|         #   ]; | ||||
|         # }; | ||||
|       ]; | ||||
|     }; | ||||
|   }; | ||||
| } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue