summaryrefslogtreecommitdiff
path: root/modules/hosts/hp-envy-office/configuration.nix
diff options
context:
space:
mode:
authorTim Keller <tjk@tjkeller.xyz>2025-08-21 12:27:51 -0500
committerTim Keller <tjk@tjkeller.xyz>2025-08-21 12:27:51 -0500
commit86fb7036cb4279abfc4ffc2bfa6b3a432c8700b5 (patch)
treebcde8a15f5cec938d3f4653863b0f6309bc65626 /modules/hosts/hp-envy-office/configuration.nix
parent078e8ea33d29af21bad55313d75d716db8d5a617 (diff)
downloadnixos-86fb7036cb4279abfc4ffc2bfa6b3a432c8700b5.tar.xz
nixos-86fb7036cb4279abfc4ffc2bfa6b3a432c8700b5.zip
refactor project to prioritize correctness. place custom nixos options into existing 'modules' and prefix them with '_'. use _archetypes module for software collections, system profiles, etc. personal configs moved to _archetypes.tjkeller. probably changed or fixed or broke a few other things in the process
Diffstat (limited to 'modules/hosts/hp-envy-office/configuration.nix')
-rw-r--r--modules/hosts/hp-envy-office/configuration.nix75
1 files changed, 44 insertions, 31 deletions
diff --git a/modules/hosts/hp-envy-office/configuration.nix b/modules/hosts/hp-envy-office/configuration.nix
index 9b3e173..89c5da4 100644
--- a/modules/hosts/hp-envy-office/configuration.nix
+++ b/modules/hosts/hp-envy-office/configuration.nix
@@ -1,42 +1,55 @@
{ config, lib, pkgs, ... }: {
- imports = [ ./hardware-configuration.nix ];
-
- # Show bootloader for longer since it usually doesn't show
- boot.loader.timeout = 15;
-
- # Enable extra software pkgs
- software.desktop = {
- chromium.enable = true;
- cad.enable = false;
- crypto.enable = false;
- graphics.enable = true;
- office.enable = true;
- utilities.enable = true;
- };
- software.development = {
- docker.enable = true;
+ imports = [
+ ./hardware-configuration.nix
+ ../../nixos/archetypes/tjkeller
+ ];
+
+ # Setup bootloader
+ boot._loader.enable = true;
+ boot.loader.timeout = 15; # Show for longer since it's usually skipped
+
+ # Enable common options
+ _archetypes = {
+ # Use desktop profile
+ profiles.desktop.enable = true;
+ # Install software
+ collections = {
+ desktop = {
+ extraUtilities.enable = true;
+ chromium.enable = true;
+ graphics.enable = true;
+ office.enable = true;
+ };
+ development = {
+ docker.enable = true;
+ web = {
+ node.enable = true;
+ };
+ };
+ virtualization.enable = true;
+ bluetooth.enable = true;
+ };
+ # Setup user
+ users.primary = {
+ enable = true;
+ };
+ tjkeller = {
+ nas = {
+ enable = true;
+ office.enable = true;
+ office.automount = true;
+ };
+ };
};
+ # Disable suspend
+ systemd._suspend.disable = true;
+
# Enable virtualization
virtualization.enable = true;
- # Enable network drives
- nas.enable = true;
- nas.office.enable = true;
- nas.home.enable = false;
-
- networking.hosts = {
- "192.168.77.3" = [ "devel" ];
- };
-
# Use amdgpu driver for x11
services.xserver.videoDrivers = [ "amdgpu" ];
- # Enable bluetooth
- bluetooth.enable = true;
-
- # Disable autologin
- autologin.enable = false;
-
system.stateVersion = "24.11";
}