diff options
Diffstat (limited to 'hosts/omar/configuration.nix')
-rw-r--r-- | hosts/omar/configuration.nix | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/hosts/omar/configuration.nix b/hosts/omar/configuration.nix new file mode 100644 index 0000000..9248c3c --- /dev/null +++ b/hosts/omar/configuration.nix @@ -0,0 +1,81 @@ +{ + config, + lib, + pkgs, + ... +}: { + imports = [ + # Include the results of the hardware scan. + ./hardware-configuration.nix + + ../../shared/nixos/common-nix-settings + ../../shared/nixos/common-shell-settings + ../../shared/nixos/common-hm-settings + ../../shared/nixos/zfs-impermenance + ]; + + boot.loader.grub = { + # Use the GRUB 2 boot loader. + enable = true; + + # Install grub on the main HDD. + device = "/dev/sda"; + + # ZFS on root requires GRUB to be able to read the pool. + # The pool was created with `-o compatibility=grub2`. + zfsSupport = true; + }; + + # The host id is required by ZFS. + # It is used to (among other things) avoid multiple hosts modifying the same dataset unsafely. + # This was randomly generated. + networking.hostId = "b6e8e80a"; + + # Should match containing folder. + networking.hostName = "omar"; + + # Pick only one of the below networking options. + networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. + # networking.networkmanager.enable = true; # Easiest to use and most distros use this by default. + + # Create the main user. + users.users.linus = { + isNormalUser = true; + hashedPassword = "$y$j9T$UmZES4WC8FWrjBvdazq2e/$rzneAKZeySwSVKiSZJfXC.fciiQdGqxB5uyRaPQ6OF."; + extraGroups = ["wheel"]; + }; + users.mutableUsers = false; + + home-manager.users.linus = { + imports = [ + # I am planning on using this host when traveling. + ../../shared/home-manager/development-full + ]; + }; + + # Enable the X11 windowing system. + # services.xserver.enable = true; + + # Configure keymap in X11 + # services.xserver.xkb.layout = "us"; + # 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; + + # Enable the OpenSSH daemon. + services.openssh.enable = true; + + system.stateVersion = "24.11"; +} |