# Edit this configuration file to define what should be installed on # your system. Help is available in the configuration.nix(5) man page # and in the NixOS manual (accessible by running ‘nixos-help’). { config, pkgs, home-manager, ... }: { # Bootloader #boot.loader.limine.enable = true; #boot.loader.systemd-boot.enable = true; #boot.loader.limine.secureBoot.enable = true; boot.loader.efi.canTouchEfiVariables = true; # Enable networking #networking.networkmanager.enable = true; # Set your time zone. time.timeZone = "Europe/London"; # Select internationalisation properties. i18n.defaultLocale = "en_GB.UTF-8"; i18n.extraLocaleSettings = { LC_ADDRESS = "en_GB.UTF-8"; LC_IDENTIFICATION = "en_GB.UTF-8"; LC_MEASUREMENT = "en_GB.UTF-8"; LC_MONETARY = "en_GB.UTF-8"; LC_NAME = "en_GB.UTF-8"; LC_NUMERIC = "en_GB.UTF-8"; LC_PAPER = "en_GB.UTF-8"; LC_TELEPHONE = "en_GB.UTF-8"; LC_TIME = "en_GB.UTF-8"; }; # Enable touchpad support (enabled default in most desktopManager). # services.xserver.libinput.enable = true; # Define a user account. Don't forget to set a password with ‘passwd’. users.users.admin = { isNormalUser = true; description = "admin"; shell = pkgs.zsh; extraGroups = [ #"networkmanager" "wheel" "adbusers" # adb "kvm" # virt ]; packages = with pkgs; [ ]; }; # Some programs need SUID wrappers, can be configured further or are # started in user sessions. # programs.mtr.enable = true; # programs.gnupg.agent = { # enable = true; # enableSSHSupport = true; # }; # Enable the OpenSSH daemon. services.openssh.enable = true; nix.settings.experimental-features = [ "nix-command" "flakes" ]; programs = { zsh.enable = true; }; nix = { extraOptions = '' keep-outputs = true keep-derivations = true ''; gc.automatic = true; optimise.automatic = true; }; # unfree nixpkgs.config.allowUnfree = true; environment.systemPackages = with pkgs; [ zsh htop fastfetch restic nixpkgs-fmt nixfmt-rfc-style rsync lm_sensors pciutils # lspci usbutils # lsusb nmap tree ]; }