aboutsummaryrefslogtreecommitdiffstats
path: root/modules
diff options
context:
space:
mode:
authorSimen A. W. Olsen <hello@simenandre.no>2026-03-21 13:39:30 +0100
committerSimen A. W. Olsen <hello@simenandre.no>2026-03-21 13:39:30 +0100
commit95083ca2ac000adeaaaa9a14c8e64b015979d0b1 (patch)
tree264a55a71972390db89c5109fbe2484f1c379671 /modules
parentecfe68dbe12dfdd58125e0f0bcd047832189b04a (diff)
downloaddotfiles-95083ca2ac000adeaaaa9a14c8e64b015979d0b1.tar.gz
dotfiles-95083ca2ac000adeaaaa9a14c8e64b015979d0b1.zip
feat: add NixOS system configuration for nixbox
Diffstat (limited to 'modules')
-rw-r--r--modules/nixos/default.nix51
1 files changed, 51 insertions, 0 deletions
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";
+}