{ config, pkgs, lib, nhekoSrc, mtxclientSrc, ... }: { imports = [ ../../modules/base-client.nix ../../modules/packages/vim.nix ../../modules/environments/home.nix ../../modules/software-templates/profilers.nix ]; boot = { kernelPackages = pkgs.linuxPackages_latest; loader = { grub = { enable = true; device = "nodev"; # nodev for EFI only # EFI efiSupport = true; efiInstallAsRemovable = true; }; }; #readOnlyNixStore = false; }; networking = { hostName = "Rory-desktop"; networkmanager.enable = true; wireless.enable = false; firewall = { enable = false; # allowedTCPPorts = [ ... ]; # allowedUDPPorts = [ ... ]; }; interfaces.enp34s0.ipv4.addresses = [ { address = "192.168.0.3"; prefixLength = 24; } ]; defaultGateway = "192.168.0.1"; # useDHCP = true; }; time.timeZone = "Europe/Brussels"; i18n.defaultLocale = "en_US.UTF-8"; services = { xserver = { enable = true; #videoDrivers = [ "intel" ]; desktopManager.gnome.enable = true; libinput.enable = true; layout = "us"; #modules = [ pkgs.xorg.xf86videointel ]; windowManager.i3.enable = true; windowManager.i3.extraPackages = with pkgs; [ dmenu i3status polybarFull dunst ]; windowManager.i3.extraSessionCommands = '' xrandr --output DP-5 --auto --pos -1920x1080 xrandr --output HDMI-0 --auto --primary --pos 1920x0 polybar & dunst & ''; }; picom.enable = true; picom.vSync = false; picom.backend = "glx"; gnome = { core-developer-tools.enable = false; core-utilities.enable = false; tracker-miners.enable = false; tracker.enable = false; sushi.enable = false; rygel.enable = false; gnome-user-share.enable = false; gnome-remote-desktop.enable = false; gnome-online-miners.enable = lib.mkForce false; gnome-online-accounts.enable = false; gnome-initial-setup.enable = false; gnome-browser-connector.enable = false; games.enable = false; gnome-keyring.enable = lib.mkForce false; evolution-data-server.enable = lib.mkForce false; at-spi2-core.enable = lib.mkForce false; }; printing.enable = false; openssh = { enable = true; extraConfig = '' MaxAuthTries 32 ''; }; pipewire = { enable = true; audio.enable = true; pulse.enable = true; wireplumber.enable = true; jack.enable = true; alsa.enable = true; }; }; sound.enable = true; hardware.pulseaudio.enable = false; users.users = { Rory = { isNormalUser = true; extraGroups = [ "wheel" ]; packages = with pkgs; [ #gimp-with-plugins #xterm gnomeExtensions.vitals gnomeExtensions.runcat ]; initialPassword = "password"; }; }; environment.systemPackages = with pkgs; [ cinnamon.nemo firefox-bin schildichat-desktop gnome-console feh easyeffects kitty youtube-music # - IDEs jetbrains-toolbox jetbrains.rider dbeaver insomnia vscode # - Languages #dotnet-sdk_7 #dotnet-sdk_8 (callPackage ../../modules/packages/dotnet-pack.nix { inherit pkgs; }) #games osu-lazer-bin #steam steam-run steam-acf (callPackage ../../modules/packages/nheko-git.nix { inherit nhekoSrc; inherit mtxclientSrc; }) ]; programs.steam.enable = true; programs.steam.gamescopeSession.enable = true; environment.gnome.excludePackages = [ pkgs.orca pkgs.gnome-tour pkgs.gnome-user-docs ]; fonts.fonts = with pkgs; [ (nerdfonts.override { fonts = [ "JetBrainsMono" ]; }) ]; nix = { settings = { experimental-features = [ "nix-command" "flakes" ]; auto-optimise-store = true; }; }; nixpkgs = { config.allowUnfree = true; }; security = { polkit.enable = true; sudo.wheelNeedsPassword = false; }; hardware.opengl = { enable = true; driSupport = true; driSupport32Bit = true; }; # Load nvidia driver for Xorg and Wayland services.xserver.videoDrivers = ["nvidia"]; hardware.nvidia = { # Modesetting is required. modesetting.enable = true; # Nvidia power management. Experimental, and can cause sleep/suspend to fail. powerManagement.enable = false; # Fine-grained power management. Turns off GPU when not in use. # Experimental and only works on modern Nvidia GPUs (Turing or newer). powerManagement.finegrained = false; # Use the NVidia open source kernel module (not to be confused with the # independent third-party "nouveau" open source driver). # Support is limited to the Turing and later architectures. Full list of # supported GPUs is at: # https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus # Only available from driver 515.43.04+ # Do not disable this unless your GPU is unsupported or if you have a good reason to. open = true; # Enable the Nvidia settings menu, # accessible via `nvidia-settings`. nvidiaSettings = true; # Optionally, you may need to select the appropriate driver version for your specific GPU. package = config.boot.kernelPackages.nvidiaPackages.stable; }; environment.etc."resolv.conf".text = '' nameserver 8.8.8.8 nameserver 8.4.4.8 nameserver 1.1.1.1 nameserver 1.0.0.1 ''; system.stateVersion = "22.11"; # DO NOT EDIT! }