# /etc/nixos/configuration.nix { config, pkgs, ... }: { # Set the hostname of the system networking.hostName = "nixos-minimal"; # Enable the OpenSSH service (optional, useful for remote access) services.openssh.enable = false; # Timezone configuration time.timeZone = "UTC"; # Set the default shell to bash users.defaultUserShell = pkgs.bash; # Create a minimal user (replace "your-user" with desired username) users.users.yourUser = { isNormalUser = true; shell = pkgs.bash; initialPassword = "password"; # Replace with a hashed password for production }; # Boot loader (for booting the system) boot.loader.grub.enable = true; boot.loader.grub.version = 2; boot.loader.grub.devices = [ "/dev/sda" ]; # Replace with your actual boot device # Allow unfree packages (if needed) nixpkgs.config.allowUnfree = true; # Enable virtual console console.useXkbConfig = true; # Enable bash as a package (part of the basic system environment) environment.systemPackages = with pkgs; [ bash ]; # Disable the display manager (minimal CLI system, no graphical interface) services.xserver.enable = false; }