about summary refs log tree commit diff
path: root/modules
diff options
context:
space:
mode:
authorPatryk Niedzwiedzinski <patryk@niedzwiedzinski.cyou>2024-09-29 18:35:37 +0200
committerPatryk Niedzwiedzinski <patryk@niedzwiedzinski.cyou>2024-09-29 18:35:37 +0200
commitc4d8fa4a27d15f612043317a2a17837a841b0f41 (patch)
tree76c534758305c99b96d050127796ac1e9b8e3c50 /modules
parentb428821c019ed9e1ea7535f55baf536c716558ea (diff)
downloaddots-c4d8fa4a27d15f612043317a2a17837a841b0f41.tar.gz
dots-c4d8fa4a27d15f612043317a2a17837a841b0f41.zip
t14: 23 current 2024-09-29 18:35:34 24.05.20240928.fbca5e7 6.6.52 *
Diffstat (limited to 'modules')
-rw-r--r--modules/gnome.nix111
1 files changed, 111 insertions, 0 deletions
diff --git a/modules/gnome.nix b/modules/gnome.nix
new file mode 100644
index 0000000..e667cea
--- /dev/null
+++ b/modules/gnome.nix
@@ -0,0 +1,111 @@
+{ pkgs, ... }:
+{
+# Enable the X11 windowing system.
+	services.xserver.enable = true;
+
+# Enable the GNOME Desktop Environment.
+	services.xserver.displayManager.gdm.enable = true;
+	services.xserver.desktopManager.gnome.enable = true;
+	services.xserver.desktopManager.xterm.enable = false;
+	services.xserver.excludePackages = [ pkgs.xterm ];
+
+	environment.gnome.excludePackages = with pkgs.gnome; [
+		pkgs.epiphany
+		baobab totem yelp file-roller seahorse gnome-clocks pkgs.gnome-connections
+			pkgs.gnome-tour
+	];
+
+	programs.dconf = {
+		enable = true;
+		profiles.user.databases = [
+			{
+				lockAll = true;
+				settings = {
+					"org/gnome/shell" = {
+						favorite-apps = [ "brave-browser.desktop" "org.gnome.Geary.desktop" "org.gnome.Nautilus.desktop" ];
+					};
+
+					"org/gnome/desktop/interface" = {
+						enable-hot-corners = false;
+					};
+
+					"org/gnome/desktop/wm/keybindings" = {
+						close = ["<Super>q"];
+					};
+					
+            				"org/gnome/settings-daemon/plugins/media-keys" = {
+              					custom-keybindings = [
+                					"/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/"
+             					 ];
+					};
+
+            				"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = {
+              					binding = "<Super>Return";
+              					command = "kgx";
+              					name = "GNOME Console";
+
+            				};
+
+				};
+			}
+		];
+	};
+
+	##services.xserver.desktopManager.gnome.extraGSettingsOverrides = ''
+		##[org.gnome.shell]
+		##favorite-apps = [ "brave-browser.desktop", "org.gnome.Geary.desktop", "org.gnome.Nautilus.desktop" ]
+##
+		##[org.gnome.desktop.wm.keybindings]
+		##close = ["<Super>q"]
+##
+		##[org.gnome.settings-daemon.plugins.media-keys]
+		##custom-keybindings = ["org/gnome/settings-daemon/plugins/media-keys/custom0/"]
+##
+		##[org.gnome.settings-daemon.plugins.media-keys.custom0]
+		##binding = ["<Super><Enter>"]
+		##command = ["kgx"]
+		##name = ["GNOME Console"]
+	##'';
+
+# Configure keymap in X11
+	services.xserver = {
+		xkb.layout = "pl";
+		xkb.variant = "";
+	};
+
+# Configure console keymap
+	console.keyMap = "pl2";
+
+# Enable CUPS to print documents.
+	services.printing.enable = true;
+
+# Enable sound with pipewire.
+	hardware.pulseaudio.enable = false;
+	security.rtkit.enable = true;
+	services.pipewire = {
+		enable = true;
+		alsa.enable = true;
+		alsa.support32Bit = true;
+		pulse.enable = true;
+# If you want to use JACK applications, uncomment this
+#jack.enable = true;
+
+# use the example session manager (no others are packaged yet so this is enabled by default,
+# no need to redefine it in your config for now)
+#media-session.enable = true;
+	};
+
+	environment.systemPackages = with pkgs; [
+		libnotify
+		gnome.gnome-boxes
+		gnome.file-roller
+		brave
+		newsflash
+		spotify
+		fragments
+	];
+
+	nixpkgs.config.allowUnfree = true;
+
+	documentation.nixos.enable = false;
+}