summaryrefslogtreecommitdiff
path: root/hosts
diff options
context:
space:
mode:
Diffstat (limited to 'hosts')
-rw-r--r--hosts/common/default.nix25
-rw-r--r--hosts/common/desktop/default.nix28
-rw-r--r--hosts/common/desktop/gnome.nix24
-rw-r--r--hosts/common/desktop/plasma.nix14
-rw-r--r--hosts/common/documentation.nix7
-rw-r--r--hosts/common/fonts.nix27
-rw-r--r--hosts/common/hardware/default.nix3
-rw-r--r--hosts/common/hardware/nvidia.nix24
-rw-r--r--hosts/common/locale.nix13
-rw-r--r--hosts/common/packages.nix36
-rw-r--r--hosts/common/security.nix23
-rw-r--r--hosts/common/systemd.nix16
-rw-r--r--hosts/common/users.nix19
-rw-r--r--hosts/common/virtualisation.nix11
-rw-r--r--hosts/default.nix32
-rw-r--r--hosts/glados-wsl/default.nix29
-rw-r--r--hosts/glados/default.nix21
17 files changed, 77 insertions, 275 deletions
diff --git a/hosts/common/default.nix b/hosts/common/default.nix
deleted file mode 100644
index 25d08d3..0000000
--- a/hosts/common/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-_: {
- imports = [
- ./documentation.nix
- ./desktop
- ./fonts.nix
- ./locale.nix
- ./packages.nix
- ./security.nix
- ./systemd.nix
- ./users.nix
- ];
-
- nix = {
- gc = {
- automatic = true;
- dates = "weekly";
- options = "--delete-older-than 7d";
- };
- settings = {
- auto-optimise-store = true;
- warn-dirty = false;
- };
- };
- # config.services.kmscon.enable = true;
-}
diff --git a/hosts/common/desktop/default.nix b/hosts/common/desktop/default.nix
deleted file mode 100644
index 68ac655..0000000
--- a/hosts/common/desktop/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{
- lib,
- desktop,
- ...
-}: let
- gui = desktop != "";
-in {
- imports =
- []
- ++ (
- if (desktop == "gnome")
- then [./gnome.nix]
- else []
- )
- ++ (
- if (desktop == "plasma")
- then [./plasma.nix]
- else []
- );
-
- environment.noXlibs = lib.mkForce false;
- programs = {
- dconf.enable = gui;
- xwayland.enable = gui;
- };
- services.xserver.enable = gui;
- xdg.portal.enable = gui;
-}
diff --git a/hosts/common/desktop/gnome.nix b/hosts/common/desktop/gnome.nix
deleted file mode 100644
index 04e32e1..0000000
--- a/hosts/common/desktop/gnome.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{
- pkgs,
- lib,
- ...
-}: {
- environment = {
- gnome.excludePackages = with pkgs; [
- epiphany
- gnome-tour
- ];
- systemPackages = with pkgs; [
- adw-gtk3
- blackbox-terminal
- ];
- };
-
- services.xserver = {
- displayManager.gdm = {
- enable = true;
- wayland = lib.mkForce true;
- };
- desktopManager.gnome.enable = true;
- };
-}
diff --git a/hosts/common/desktop/plasma.nix b/hosts/common/desktop/plasma.nix
deleted file mode 100644
index bc38720..0000000
--- a/hosts/common/desktop/plasma.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{pkgs, ...}: {
- services.xserver = {
- displayManager.sddm.enable = true;
- desktopManager.plasma5 = {
- enable = true;
- excludePackages = with pkgs.libsForQt5; [
- khelpcenter
- plasma-browser-integration
- print-manager
- ];
- useQtScaling = true;
- };
- };
-}
diff --git a/hosts/common/documentation.nix b/hosts/common/documentation.nix
deleted file mode 100644
index bd22316..0000000
--- a/hosts/common/documentation.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{pkgs, ...}: {
- environment.systemPackages = with pkgs; [man-pages man-pages-posix];
- documentation = {
- dev.enable = true;
- man.enable = true;
- };
-}
diff --git a/hosts/common/fonts.nix b/hosts/common/fonts.nix
deleted file mode 100644
index 698b4fb..0000000
--- a/hosts/common/fonts.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{
- pkgs,
- desktop,
- ...
-}:
-if desktop != ""
-then {
- fonts = {
- enableDefaultFonts = true;
- fonts = with pkgs; [
- corefonts
- fira-code
- (nerdfonts.override {fonts = ["FiraCode"];})
- noto-fonts
- noto-fonts-extra
- noto-fonts-emoji
- noto-fonts-cjk-sans
- ];
- fontconfig.defaultFonts = {
- serif = ["Noto Serif"];
- sansSerif = ["Noto Sans"];
- emoji = ["Noto Color Emoji"];
- monospace = ["Fira Code"];
- };
- };
-}
-else {}
diff --git a/hosts/common/hardware/default.nix b/hosts/common/hardware/default.nix
deleted file mode 100644
index be395d2..0000000
--- a/hosts/common/hardware/default.nix
+++ /dev/null
@@ -1,3 +0,0 @@
-_: {
- hardware.enableAllFirmware = true;
-}
diff --git a/hosts/common/hardware/nvidia.nix b/hosts/common/hardware/nvidia.nix
deleted file mode 100644
index 99f7d6e..0000000
--- a/hosts/common/hardware/nvidia.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{
- config,
- pkgs,
- ...
-}: {
- hardware = {
- nvidia = {
- package = config.boot.kernelPackages.nvidiaPackages.stable;
- modesetting.enable = true;
- # nvidiaPersistenced = true;
- # powerManagement.enable = true;
- };
- opengl = {
- enable = true;
- # make steam work
- driSupport32Bit = true;
- extraPackages = with pkgs; [
- vaapiVdpau
- ];
- };
- };
-
- services.xserver.videoDrivers = ["nvidia"];
-}
diff --git a/hosts/common/locale.nix b/hosts/common/locale.nix
deleted file mode 100644
index 45589ef..0000000
--- a/hosts/common/locale.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-_: {
- i18n = {
- supportedLocales = [
- "en_US.UTF-8/UTF-8"
- ];
- defaultLocale = "en_US.UTF-8";
- };
-
- time = {
- hardwareClockInLocalTime = true;
- timeZone = "America/New_York";
- };
-}
diff --git a/hosts/common/packages.nix b/hosts/common/packages.nix
deleted file mode 100644
index 3a4d2b2..0000000
--- a/hosts/common/packages.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{
- pkgs,
- desktop,
- ...
-}: let
- gui = desktop != "";
- pinentry = with pkgs;
- if desktop == "gnome"
- then pinentry-gnome
- else pinentry-curses;
-in {
- environment.systemPackages = with pkgs;
- [
- neofetch
- python311
- ]
- ++ [pinentry];
-
- programs = {
- firefox.enable =
- if gui
- then true
- else false;
- git.enable = true;
- gnupg = {
- agent = {
- enable = true;
- pinentryFlavor =
- if desktop == "gnome"
- then "gnome3"
- else "curses";
- };
- };
- vim.defaultEditor = true;
- };
-}
diff --git a/hosts/common/security.nix b/hosts/common/security.nix
deleted file mode 100644
index 260538a..0000000
--- a/hosts/common/security.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{wsl, ...}: {
- security = {
- apparmor.enable = !wsl;
- audit.enable = !wsl;
- auditd.enable = !wsl;
- rtkit.enable = true;
- sudo = {
- execWheelOnly = true;
- extraRules = [
- {
- users = ["root"];
- groups = ["root"];
- commands = ["ALL"];
- }
- {
- users = ["seth"];
- commands = ["ALL"];
- }
- ];
- };
- polkit.enable = true;
- };
-}
diff --git a/hosts/common/systemd.nix b/hosts/common/systemd.nix
deleted file mode 100644
index 86fea4a..0000000
--- a/hosts/common/systemd.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{wsl, ...}: {
- services = {
- journald.extraConfig = ''
- MaxRetentionSec=1w
- '';
- resolved = {
- enable = !wsl;
- dnssec = "allow-downgrade";
- extraConfig = ''
- [Resolve]
- DNS=1.1.1.1 1.0.0.1
- DNSOverTLS=yes
- '';
- };
- };
-}
diff --git a/hosts/common/users.nix b/hosts/common/users.nix
deleted file mode 100644
index 6ca24c4..0000000
--- a/hosts/common/users.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- config,
- pkgs,
- ...
-}: {
- users = {
- defaultUserShell = pkgs.bash;
- mutableUsers = false;
-
- users = {
- root = {
- home = "/root";
- uid = config.ids.uids.root;
- group = "root";
- initialHashedPassword = "***REMOVED***";
- };
- };
- };
-}
diff --git a/hosts/common/virtualisation.nix b/hosts/common/virtualisation.nix
deleted file mode 100644
index f78ca1d..0000000
--- a/hosts/common/virtualisation.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{pkgs, ...}: {
- virtualisation = {
- podman = {
- enable = true;
- enableNvidia = true;
- extraPackages = with pkgs; [podman-compose];
- autoPrune.enable = true;
- };
- oci-containers.backend = "podman";
- };
-}
diff --git a/hosts/default.nix b/hosts/default.nix
new file mode 100644
index 0000000..8aff79e
--- /dev/null
+++ b/hosts/default.nix
@@ -0,0 +1,32 @@
+{inputs}:
+with inputs; let
+ common = {
+ system = "x86_64-linux";
+ stateVersion = "23.05";
+ pkgs = nixpkgsUnstable;
+ modules = with inputs; [
+ home-manager.nixosModules.home-manager
+ nur.nixosModules.nur
+ ];
+ };
+in {
+ glados = {
+ modules =
+ common.modules
+ ++ [
+ nixos-hardware.nixosModules.common-cpu-amd-pstate
+ nixos-hardware.nixosModules.common-gpu-nvidia-nonprime
+ nixos-hardware.nixosModules.common-pc-ssd
+ lanzaboote.nixosModules.lanzaboote
+ ];
+ inherit (common) system stateVersion pkgs;
+ };
+ glados-wsl = {
+ modules =
+ common.modules
+ ++ [
+ nixos-wsl.nixosModules.wsl
+ ];
+ inherit (common) system stateVersion pkgs;
+ };
+}
diff --git a/hosts/glados-wsl/default.nix b/hosts/glados-wsl/default.nix
index af6e712..cb0854e 100644
--- a/hosts/glados-wsl/default.nix
+++ b/hosts/glados-wsl/default.nix
@@ -1,5 +1,32 @@
-{modulesPath, ...}: {
+{
+ lib,
+ modulesPath,
+ ...
+}: {
imports = [
(modulesPath + "/profiles/minimal.nix")
+ ../../profiles/nixos
+ ../../users/seth
];
+
+ wsl = {
+ enable = true;
+ defaultUser = "seth";
+ nativeSystemd = true;
+ wslConf.network = {
+ hostname = "glados-wsl";
+ generateResolvConf = true;
+ };
+ startMenuLaunchers = false;
+ interop.includePath = false;
+ };
+
+ services.resolved.enable = lib.mkForce false;
+ security = {
+ apparmor.enable = lib.mkForce false;
+ audit.enable = lib.mkForce false;
+ auditd.enable = lib.mkForce false;
+ };
+
+ system.stateVersion = "23.05";
}
diff --git a/hosts/glados/default.nix b/hosts/glados/default.nix
index 0b6d7c5..e8b083e 100644
--- a/hosts/glados/default.nix
+++ b/hosts/glados/default.nix
@@ -1,14 +1,25 @@
-_: {
+{
+ config,
+ home-manager,
+ ...
+}: {
imports = [
- ../common/hardware
- ../common/hardware/nvidia.nix
- ../common/virtualisation.nix
+ ../../profiles/desktop/gnome
+ ../../profiles/hardware/nvidia.nix
+ ../../profiles/virtualisation.nix
+ ../../users/seth
./boot.nix
./hardware-configuration.nix
./network.nix
./services.nix
];
+ home-manager.users.seth = {
+ imports = [
+ ../../users/seth/desktop/gnome
+ ];
+ };
+
environment.etc."environment".text = ''
LIBVA_DRIVER_NAME=vdpau
'';
@@ -26,4 +37,6 @@ _: {
swapDevices = 1;
memoryPercent = 50;
};
+
+ system.stateVersion = "23.05";
}