nixos/system/services.nix
2024-05-14 17:42:09 +02:00

81 lines
2.0 KiB
Nix

{ config, pkgs, ... }: {
sound.enable = true;
security.rtkit.enable = true;
networking.firewall.enable = false;
security.polkit.enable = true;
services = {
displayManager =
{
defaultSession = "none+i3";
autoLogin.enable = true;
autoLogin.user = "mbeno";
};
logind.extraConfig = "IdleAction=ignore";
xserver = {
enable = true;
xkb.layout = "us";
xkb.variant = "";
desktopManager = {
xterm.enable = false;
};
videoDrivers = [ "nvidia" ];
deviceSection = ''
Option "TearFree" "False"
Option "VariableRefresh" "true"
'';
xrandrHeads = [
{
output = "DP-2";
primary = true;
monitorConfig = "
Option \"TargetRefresh\" \"144\"
Option \"Primary\" \"true\"
Option \"PreferredMode\" \"2560x1440\"
Option \"DPMS\" \"true\"
";
}
{
output = "DP-0";
primary = false;
monitorConfig = "
Option \"TargetRefresh\" \"144\"
Option \"Primary\" \"false\"
Option \"PreferredMode\" \"1920x1080\"
";
}
];
screenSection =
''
Option "metamodes" "DP-2: 2560x1440_144 +0+0, DP-0: 1920x1080_144 +2560+0"
'';
windowManager.i3 = {
enable = true;
extraPackages = with pkgs; [
dmenu #application launcher most people use
i3status # gives you the default i3 status bar
# i3lock #default i3 screen locker
i3blocks #if you are planning on using i3blocks over i3status
polybar
rofi
nitrogen
];
};
};
};
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
services.pcscd.enable = true;
services.dbus.packages = [ pkgs.gcr ];
services.openssh = {
enable = true;
settings.PasswordAuthentication = true;
};
networking.firewall.allowedTCPPorts = [ 22 ];
}