@@ -22,17 +22,27 @@ in
boot . loader . efi . canTouchEfiVariables = true ;
boot . loader . grub . useOSProber = true ;
networking . hostName = " z 7 9 0 p r o r s - n i x " ; # Define your hostname.
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
# Set your time zone.
time . timeZone = " A m e r i c a / L o s _ A n g e l e s " ;
# The global useDHCP flag is deprecated, therefore explicitly set to false here.
# Per-interface useDHCP will be mandatory in the future, so this generated config
# replicates the default behaviour.
networking . useDHCP = false ;
networking . interfaces . enp3s 0 .useDHCP = true ;
networking = {
hostName = " z 7 9 0 p r o r s - n i x " ; # Define your hostname.
domain = " o g l e h o m e " ;
defaultGateway = " 1 0 . 0 . 0 . 1 " ;
nameservers = [ " 1 0 . 0 . 0 .1 " ] ;
# The global useDHCP flag is deprecated, therefore explicitly set to false here.
# Per-interface useDHCP will be mandatory in the future, so this generated config
# replicates the default behaviour.
useDHCP = false ;
interfaces . enp3s0 . ipv4 . addresses = [ {
address = " 1 0 . 0 . 0 . 3 7 " ;
prefixLength = 24 ;
} ] ;
} ;
# Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/";
@@ -70,6 +80,12 @@ in
nvidiaSettings = true ;
package = config . boot . kernelPackages . nvidiaPackages . production ;
} ;
boot . initrd . kernelModules = [
" n v i d i a "
" n v i d i a _ m o d e s e t "
" n v i d i a _ u v m "
" n v i d i a _ d r m "
] ;
# Configure keymap in X11
# services.xserver.layout = "us";
@@ -79,7 +95,8 @@ in
# services.printing.enable = true;
# Enable sound.
hardware . pulseaudio . enable = true ;
# TODO: Something is enabling pipewire (sunshine/moonlight maybe?) which is incompatible with pulseaudio
hardware . pulseaudio . enable = false ;
# Enable touchpad support (enabled default in most desktopManager).
# services.xserver.libinput.enable = true;
@@ -88,7 +105,7 @@ in
users . users . johno = {
isNormalUser = true ;
description = " J o h n O g l e " ;
extraGroups = [ " w h e e l " " n e t w o r k m a n a g e r " " a u d i o " " l i b v i r t d " ] ; # Enable ‘ sudo’ for the user.
extraGroups = [ " w h e e l " " n e t w o r k m a n a g e r " " a u d i o " " l i b v i r t d " " i n p u t " ] ; # Enable ‘ sudo’ for the user.
} ;
users . users . eli = {
@@ -134,10 +151,24 @@ in
services . displayManager = {
sddm . enable = true ;
sddm . wayland . enable = tru e;
sddm . wayland . enable = fals e;
#defaultSession = "plasmax11";
} ;
services . desktopManager . plasma6 . enable = true ;
services . xserver . windowManager . i3 = {
enable = true ;
extraPackages = with pkgs ; [
dmenu
i3status
i3lock
] ;
} ;
# Helps with i3. Not sure what dconf is though honestly
programs . dconf . enable = true ;
programs . kdeconnect . enable = true ;
programs . hyprland = {
enable = true ;
package = inputs . hyprland . packages . ${ pkgs . stdenv . hostPlatform . system } . hyprland ;
@@ -154,6 +185,12 @@ in
#extraPkgs = pkgs: [ bumblebee glxinfo ];
#};
} ;
services . sunshine = {
enable = true ;
autoStart = true ;
capSysAdmin = true ;
openFirewall = true ;
} ;
# Open ports in the firewall.
# networking.firewall.allowedTCPPorts = [ ... ];