about summary refs log tree commit diff
path: root/machines/x220-gnome/gnome.nix
blob: e667ceae73cb1a8a1bb4d95746678c5aaf012e4c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
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;
}