infra/nix/os/profiles/graphical/system.nix

124 lines
3.4 KiB
Nix
Raw Normal View History

2023-02-07 18:24:28 +01:00
{pkgs, ...}: {
networking.networkmanager = {
enable = true;
dns = "systemd-resolved";
unmanaged = [
"interface-name:veth*"
"interface-name:virbr*"
"interface-name:br*"
"interface-name:*vbox*"
"interface-name:*cni*"
];
};
networking.usePredictableInterfaceNames = false;
services.resolved.enable = true;
# hardware related services
services.illum.enable = true;
services.pcscd.enable = false;
hardware = {
bluetooth.enable = true;
pulseaudio = {
enable = true;
package = pkgs.pulseaudioFull;
support32Bit = true;
};
};
# required for running blueman-applet in user sessions
2023-02-07 18:24:28 +01:00
services.dbus.packages = with pkgs; [blueman];
2020-10-17 15:28:19 +02:00
services.blueman.enable = true;
services.xserver = {
enable = true;
libinput.enable = true;
2021-06-08 12:39:01 +02:00
libinput.touchpad.naturalScrolling = true;
2022-10-31 11:04:38 +01:00
videoDrivers = [
"qxl"
"modesetting"
"ati"
"cirrus"
"intel"
"vesa"
"vmware"
"modesetting"
];
2022-02-01 13:33:49 +01:00
layout = "us";
xkbVariant = "altgr-intl";
xkbOptions = "nodeadkeys";
desktopManager = {
# FIXME: gnome should be moved to user session
2021-06-08 12:39:01 +02:00
gnome.enable = true;
xterm.enable = true;
plasma5.enable = false;
};
displayManager = {
gdm.enable = false;
autoLogin = {
enable = true;
user = "steveej";
};
lightdm = {
enable = true;
2023-02-07 18:24:28 +01:00
background = "${pkgs.nixos-artwork.wallpapers.simple-blue}/share/artwork/gnome/nix-wallpaper-simple-blue.png";
};
2022-10-31 11:04:38 +01:00
sessionCommands = "";
};
};
services.gvfs.enable = true;
programs.seahorse.enable = true;
programs.gpaste.enable = false;
programs.gnome-terminal.enable = false;
programs.gnome-documents.enable = false;
programs.gnome-disks.enable = false;
2021-06-08 12:39:01 +02:00
services.gnome = {
# gnome-online-miners.enable = false; TODO: enable this again
games.enable = false;
gnome-remote-desktop.enable = false;
gnome-user-share.enable = false;
rygel.enable = false;
sushi.enable = false;
tracker.enable = false;
tracker-miners.enable = false;
# FIXME: gnome should be moved to user session
2021-08-20 23:28:51 +02:00
core-os-services.enable = true;
at-spi2-core.enable = true;
evolution-data-server.enable = true;
gnome-online-accounts.enable = true;
gnome-keyring.enable = true;
};
# More Services
2023-02-07 18:24:28 +01:00
services.udev.packages = [pkgs.libu2f-host pkgs.yubikey-personalization pkgs.android-udev-rules];
services.udev.extraRules = ''
# OnePlusOne
ATTR{idVendor}=="05c6", ATTR{idProduct}=="6764", SYMLINK+="libmtp-%k", MODE="660", GROUP="audio", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1", TAG+="uaccess"
ATTR{idVendor}=="05c6", ATTR{idProduct}=="6765", SYMLINK+="libmtp-%k", MODE="660", GROUP="audio", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1", TAG+="uaccess"
# Plantronics BackBeat PRO
SUBSYSTEM=="usb", ATTR{idVendor}=="047f", ATTR{idProduct}=="011a", GROUP="users", MODE="0777"
SUBSYSTEM=="usb", ATTR{idVendor}=="047f", ATTR{idProduct}=="fffe", GROUP="users", MODE="0777"
SUBSYSTEM=="usb", ATTR{idVendor}=="047f", ATTR{idProduct}=="0001", GROUP="users", MODE="0777"
# Yubikey 4/5 U2F+CCID
SUBSYSTEM=="usb", ATTR{idVendor}=="1050", ATTR{idProduct}=="0406", ENV{ID_SECURITY_TOKEN}="1", GROUP="wheel"
'';
services.samba.enable = true;
services.samba.extraConfig = ''
client max protocol = SMB3
'';
services.logind.lidSwitchExternalPower = "ignore";
}