diff options
author | Tim Keller <tjk@tjkeller.xyz> | 2025-08-26 21:36:16 -0500 |
---|---|---|
committer | Tim Keller <tjk@tjkeller.xyz> | 2025-08-26 21:36:16 -0500 |
commit | c3c3d6f1fd19a5da015c9a9d3ae5c54f2d177be0 (patch) | |
tree | 559a0d9385df907f471b9bdd2bf708ec4650c718 /hosts/optiplex | |
parent | 125313aabedb17516d735a718968bfad1289f12b (diff) | |
download | nixos-master.tar.xz nixos-master.zip |
reogranize files more only working on optiplex for now prepare for home manager refactoringHEADmaster
Diffstat (limited to 'hosts/optiplex')
-rw-r--r-- | hosts/optiplex/configuration.nix | 73 | ||||
-rw-r--r-- | hosts/optiplex/hardware-configuration.nix | 45 | ||||
-rw-r--r-- | hosts/optiplex/home.nix | 7 |
3 files changed, 125 insertions, 0 deletions
diff --git a/hosts/optiplex/configuration.nix b/hosts/optiplex/configuration.nix new file mode 100644 index 0000000..8a06294 --- /dev/null +++ b/hosts/optiplex/configuration.nix @@ -0,0 +1,73 @@ +{ config, lib, pkgs, ... }: { + imports = [ + ./hardware-configuration.nix + ../../archetypes/tjkeller + ]; + + # Setup bootloader + boot._loader.enable = true; + + # Enable common options + _archetypes = { + # Use desktop profile + profiles.desktop.enable = true; + # Install software + collections = { + desktop = { + extraUtilities.enable = true; + cad.enable = true; + chromium.enable = true; + crypto.enable = true; + graphics.enable = true; + office.enable = true; + }; + development = { + android.enable = true; + c.enable = true; + docker.enable = true; + lua.enable = true; + web = { + hugo = { + enable = true; + openFirewall = true; + }; + node.enable = true; + }; + }; + }; + # Setup user + users.primary = { + enable = true; + autologin.enable = true; + }; + tjkeller = { + nas.enable = true; + }; + }; + + # Disable suspend + systemd._suspend.disable = true; + + # Allow unfree for nvidia + others + nixpkgs.config.allowUnfree = true; + + # Install more software + environment.systemPackages = with pkgs; [ + prismlauncher + spotify + #vintagestory + ]; + + # Use nvidia driver + services.xserver.videoDrivers = [ "nvidia" ]; + hardware.nvidia = { + modesetting.enable = true; # Required + powerManagement.enable = false; # Can cause bugs + nvidiaSettings = true; + open = false; # Not compatible w/ GTX-1050 + package = config.boot.kernelPackages.nvidiaPackages.stable; # Still good for 1050 + forceFullCompositionPipeline = true; # Enables vsync + }; + + system.stateVersion = "24.11"; +} diff --git a/hosts/optiplex/hardware-configuration.nix b/hosts/optiplex/hardware-configuration.nix new file mode 100644 index 0000000..3d9651e --- /dev/null +++ b/hosts/optiplex/hardware-configuration.nix @@ -0,0 +1,45 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ config, lib, pkgs, modulesPath, ... }: + +{ + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "firewire_ohci" "usbhid" "usb_storage" "sd_mod" "sr_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/a9d54117-31f6-4cad-b1b2-250f6bfd7808"; + fsType = "btrfs"; + options = [ "subvol=@" ]; + }; + + fileSystems."/home" = + { device = "/dev/disk/by-uuid/a9d54117-31f6-4cad-b1b2-250f6bfd7808"; + fsType = "btrfs"; + options = [ "subvol=@home" ]; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/6987-81B6"; + fsType = "vfat"; + options = [ "fmask=0022" "dmask=0022" ]; + }; + + swapDevices = [ ]; + + # Enables DHCP on each ethernet and wireless interface. In case of scripted networking + # (the default) this is the recommended approach. When using systemd-networkd it's + # still possible to use this option, but it's recommended to use it in conjunction + # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.eno1.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +} diff --git a/hosts/optiplex/home.nix b/hosts/optiplex/home.nix new file mode 100644 index 0000000..d293ae0 --- /dev/null +++ b/hosts/optiplex/home.nix @@ -0,0 +1,7 @@ +{ ... }: { + imports = [ ../../home-manager ]; + + theme.mint.theme.color = "Dark-Green"; + theme.mint.icons.color = "Green"; + wallpapers.enable = true; +} |