diff --git a/hosts/igor/default.nix b/hosts/igor/default.nix index c0edc6b..4fc7703 100644 --- a/hosts/igor/default.nix +++ b/hosts/igor/default.nix @@ -6,7 +6,7 @@ { imports = [ - inputs.disko.nixosModules.disko + ./hardware-configuration.nix ../../modules/security.nix ../../modules/nix-config.nix ../../modules/iohk.nix @@ -14,10 +14,15 @@ ../../modules/keybase.nix ../../modules/ssh.nix ../../modules/tailscale - ./disko-config.nix - ./hardware-configuration.nix ]; + config.boot.loader.grub.enable = true; + config.boot.loader.grub.efiSupport = true; + config.boot.loader.grub.efiInstallAsRemovable = true; + config.boot.loader.efi.efiSysMountPoint = "/boot/efi"; + # Define on which hard drive you want to install Grub. + config.boot.loader.grub.device = "/dev/sdb"; # or "nodev" for efi only + config.networking = { hostName = "igor"; domain = "failco.de"; @@ -25,7 +30,7 @@ useDHCP = false; enableIPv6 = false; networkmanager.enable = true; - interfaces.eth0 = { + interfaces.enp0s25 = { ipv4.addresses = [ { address = "192.168.178.2"; @@ -55,6 +60,37 @@ keyMap = "dvorak"; }; + # Set your time zone. + config.time.timeZone = "Europe/Berlin"; + + # Enable the X11 windowing system. + services.xserver.enable = true; + + # Enable the GNOME Desktop Environment. + services.xserver.displayManager.gdm.enable = true; + services.xserver.desktopManager.gnome.enable = true; + + # Configure keymap in X11 + services.xserver.xkb.layout = "us"; + services.xserver.xkb.variant = "dvorak"; + services.xserver.xkb.options = "eurosign:e,caps:escape"; + + # Enable CUPS to print documents. + services.printing.enable = true; + + # Enable sound. + # hardware.pulseaudio.enable = true; + # OR + services.pipewire = { + enable = true; + pulse.enable = true; + }; + + # Enable touchpad support (enabled default in most desktopManager). + services.libinput.enable = true; + + programs.firefox.enable = true; + # Define a user account. Don't forget to set a password with ‘passwd’. config.users.users.alex = { isNormalUser = true; @@ -71,5 +107,6 @@ config.programs.zsh.enable = true; + config.system.copySystemConfiguration = true; config.system.stateVersion = "24.11"; } diff --git a/hosts/igor/disko-config.nix b/hosts/igor/disko-config.nix index 531b8d0..b16ed85 100644 --- a/hosts/igor/disko-config.nix +++ b/hosts/igor/disko-config.nix @@ -2,7 +2,7 @@ disko.devices = { disk.main = { type = "disk"; - device = "/dev/sda"; + device = "/dev/sdb"; content = { type = "gpt"; partitions = { diff --git a/hosts/igor/hardware-configuration.nix b/hosts/igor/hardware-configuration.nix index 5007365..4810052 100644 --- a/hosts/igor/hardware-configuration.nix +++ b/hosts/igor/hardware-configuration.nix @@ -1,10 +1,27 @@ -{ - config, - lib, - pkgs, - ... -}: +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ config, lib, pkgs, modulesPath, ... }: { + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; + boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + # Enables DHCP on each ethernet and wireless interface. In case of scripted networking + # (the default) this is the recommended approach. When using systemd-networkd it's + # still possible to use this option, but it's recommended to use it in conjunction + # with explicit per-interface declarations with `networking.interfaces..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.enp0s25.useDHCP = lib.mkDefault true; + # networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true; + # networking.interfaces.wwp0s20u4i6.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; }