xref: /aosp_15_r20/external/coreboot/util/liveiso/nixos/graphical.nix (revision b9411a12aaaa7e1e6a6fb7c5e057f44ee179a49c)
1# SPDX-License-Identifier: GPL-2.0-only
2
3{ pkgs, lib, ... }:
4
5{
6	imports = [
7		./common.nix
8	];
9
10	hardware.pulseaudio = {
11		enable = true;
12		package = pkgs.pulseaudioFull;
13	};
14
15	security.polkit = {
16		enable = true;
17		extraConfig = ''
18			polkit.addRule(function(action, subject) {
19				if (subject.isInGroup("wheel")) {
20					return polkit.Result.YES;
21				}
22			});
23		'';
24	};
25
26	services.xserver = {
27		enable = true;
28		displayManager = {
29			gdm = {
30				enable = true;
31				autoSuspend = false;
32			};
33			autoLogin = {
34				enable = true;
35				user = "user";
36			};
37		};
38		desktopManager.gnome.enable = true;
39	};
40
41	users.users.user.extraGroups = [ "audio" "video" "input" ];
42
43	environment.systemPackages = with pkgs; [
44		firefox
45		gparted
46		pavucontrol
47	];
48
49	# Remove unnecessary stuff
50	services = {
51		gnome = {
52			evolution-data-server.enable = lib.mkForce false;
53			gnome-online-accounts.enable = lib.mkForce false;
54			gnome-online-miners.enable = lib.mkForce false;
55			gnome-initial-setup.enable = lib.mkForce false;
56			gnome-browser-connector.enable = lib.mkForce false;
57		};
58		telepathy.enable = lib.mkForce false;
59		dleyna-renderer.enable = lib.mkForce false;
60		dleyna-server.enable = lib.mkForce false;
61	};
62
63	programs.geary.enable = lib.mkForce false;
64
65	environment.gnome.excludePackages = with pkgs; [
66		gnome.gnome-weather
67		gnome.epiphany
68		gnome.gnome-contacts
69		gnome-photos
70		gnome.gnome-music
71		yelp
72	];
73}
74