From 95083ca2ac000adeaaaa9a14c8e64b015979d0b1 Mon Sep 17 00:00:00 2001 From: "Simen A. W. Olsen" Date: Sat, 21 Mar 2026 13:39:30 +0100 Subject: feat: add NixOS system configuration for nixbox --- modules/nixos/default.nix | 51 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 modules/nixos/default.nix (limited to 'modules/nixos/default.nix') diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix new file mode 100644 index 0000000..155601a --- /dev/null +++ b/modules/nixos/default.nix @@ -0,0 +1,51 @@ +{ pkgs, ... }: + +{ + imports = [ + ./hardware-configuration.nix + ]; + + # Enable experimental Nix features + nix.settings.experimental-features = "nix-command flakes"; + + # Allow unfree packages + nixpkgs.config.allowUnfree = true; + + # Bootloader + boot.loader.systemd-boot.enable = true; + boot.loader.efi.canTouchEfiVariables = true; + + # Networking + networking.hostName = "nixbox"; + networking.networkmanager.enable = true; + + # Timezone / locale + time.timeZone = "Europe/Oslo"; + i18n.defaultLocale = "en_US.UTF-8"; + + # User account + users.users.simenandre = { + isNormalUser = true; + extraGroups = [ "wheel" "networkmanager" ]; + shell = pkgs.zsh; + }; + programs.zsh.enable = true; + + # Core system packages + environment.systemPackages = with pkgs; [ + curl + git + wget + neovim + ]; + + # 1Password (for SSH signing) + programs._1password.enable = true; + programs._1password-gui.enable = true; + + # SSH + services.openssh.enable = true; + + # System state version – do not change after first installation + system.stateVersion = "24.11"; +} -- cgit v1.2.3