2023-08-25 01:02:10 +02:00
|
|
|
{ lib, config, pkgs, hostname, gpu, ... }: {
|
2023-08-14 07:55:14 +02:00
|
|
|
# Enable sound with pipewire.
|
|
|
|
sound.enable = true;
|
|
|
|
hardware.pulseaudio.enable = false;
|
|
|
|
security.rtkit.enable = true;
|
|
|
|
services.pipewire = {
|
|
|
|
enable = true;
|
|
|
|
alsa.enable = true;
|
|
|
|
alsa.support32Bit = true;
|
|
|
|
pulse.enable = true;
|
|
|
|
};
|
|
|
|
|
|
|
|
# Configure keymap in X11
|
|
|
|
services.xserver = {
|
|
|
|
enable = true;
|
|
|
|
layout = "us";
|
|
|
|
xkbVariant = "";
|
|
|
|
autorun = true;
|
2023-08-23 18:05:26 +02:00
|
|
|
# When you play games, change this to nvidia
|
2023-08-25 01:02:10 +02:00
|
|
|
videoDrivers = [ gpu ];
|
2023-08-14 07:55:14 +02:00
|
|
|
};
|
|
|
|
|
2023-08-23 16:40:37 +02:00
|
|
|
##### disable nvidia, very nice battery life.
|
2023-08-23 16:48:17 +02:00
|
|
|
# hardware.nvidiaOptimus.disable = lib.mkDefault true;
|
2023-08-23 16:40:37 +02:00
|
|
|
|
2023-08-19 11:35:19 +02:00
|
|
|
services.xserver = {
|
2023-07-10 12:50:05 +02:00
|
|
|
# https://nixos.org/manual/nixos/stable/index.html#chap-gnome
|
|
|
|
# Enable the GNOME Desktop Environment.
|
2023-08-23 18:27:35 +02:00
|
|
|
displayManager.gdm.enable = true;
|
2023-07-10 12:50:05 +02:00
|
|
|
desktopManager.gnome.enable = true;
|
2023-08-23 18:25:13 +02:00
|
|
|
desktopManager.gnome.extraGSettingsOverrides = ''
|
2023-08-23 18:31:18 +02:00
|
|
|
[org.gnome.login-screen]
|
2023-08-23 18:32:25 +02:00
|
|
|
banner-message-enable=true
|
2023-08-23 18:34:09 +02:00
|
|
|
banner-message-text='Test';
|
2023-08-23 18:25:13 +02:00
|
|
|
'';
|
2023-07-10 12:50:05 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
# Set Gnome settings:
|
2023-08-24 12:14:42 +02:00
|
|
|
services.gnome = {
|
2023-07-10 12:50:05 +02:00
|
|
|
games.enable = false;
|
|
|
|
core-utilities.enable = true;
|
2023-07-12 16:41:12 +02:00
|
|
|
gnome-remote-desktop.enable = true;
|
2023-07-10 12:50:05 +02:00
|
|
|
};
|
|
|
|
|
2023-07-13 14:07:53 +02:00
|
|
|
# Set the firewall ports for gnome-remote-desktop:
|
|
|
|
networking.firewall.interfaces.tailscale0.allowedTCPPorts = [ 3389 ];
|
|
|
|
|
2023-07-12 16:41:12 +02:00
|
|
|
|
2023-07-10 12:50:05 +02:00
|
|
|
# https://nixos.wiki/wiki/GNOME
|
|
|
|
# Remove unwanted packages
|
2023-08-22 14:14:49 +02:00
|
|
|
environment.gnome.excludePackages = (with pkgs; [
|
2023-07-10 12:50:05 +02:00
|
|
|
gnome.cheese
|
|
|
|
gnome.gnome-music
|
|
|
|
gnome.epiphany
|
|
|
|
gnome.geary
|
|
|
|
gnome.totem
|
|
|
|
gnome.gnome-characters
|
|
|
|
gnome-tour
|
|
|
|
gnome-photos
|
|
|
|
gnome.yelp
|
|
|
|
gnome.gnome-font-viewer
|
|
|
|
gnome-connections
|
|
|
|
gnome.gnome-contacts
|
|
|
|
gnome.gnome-logs
|
|
|
|
gnome.gnome-maps
|
|
|
|
gnome.simple-scan
|
2023-08-22 14:14:49 +02:00
|
|
|
]);
|
2023-07-10 12:50:05 +02:00
|
|
|
|
2023-08-22 14:14:49 +02:00
|
|
|
environment.systemPackages = with pkgs; [
|
2023-07-10 12:50:05 +02:00
|
|
|
# Gnome Extensions
|
2023-08-22 14:14:49 +02:00
|
|
|
gnomeExtensions.tiling-assistant
|
|
|
|
gnomeExtensions.dash-to-dock
|
|
|
|
gnomeExtensions.blur-my-shell
|
|
|
|
gnomeExtensions.vitals
|
|
|
|
gnomeExtensions.user-themes
|
|
|
|
gnomeExtensions.caffeine
|
|
|
|
gnomeExtensions.hibernate-status-button
|
|
|
|
gnomeExtensions.night-theme-switcher
|
|
|
|
gnomeExtensions.gamemode
|
2023-07-10 12:50:05 +02:00
|
|
|
|
|
|
|
# Gnome relevant packages
|
|
|
|
gnome3.gnome-tweaks
|
|
|
|
papirus-icon-theme
|
2023-08-23 07:30:15 +02:00
|
|
|
dconf2nix # https://github.com/gvolpe/dconf2nix
|
2023-07-10 12:50:05 +02:00
|
|
|
];
|
|
|
|
|
|
|
|
imports = [
|
|
|
|
# Gnome Themes
|
2023-08-23 07:30:15 +02:00
|
|
|
./themes/gruvbox.nix
|
|
|
|
./themes/tokyo-night.nix
|
|
|
|
./themes/nordic.nix
|
|
|
|
./themes/vimix.nix
|
|
|
|
./themes/fluent.nix
|
2023-07-10 12:50:05 +02:00
|
|
|
# You may need to edit which theme you're using in dconf.nix if you remove themes
|
|
|
|
];
|
|
|
|
}
|