From b6bcc6af673b2bb3ce40e04349be200cd354eece Mon Sep 17 00:00:00 2001 From: Simon Parri Date: Tue, 3 Jun 2025 15:25:18 -0500 Subject: hosts/tomato: Add initial configuration --- hosts/default.nix | 1 + hosts/tomato/default.nix | 32 ++++++++++++++++++++++++++++++++ hosts/tomato/hardware.nix | 42 ++++++++++++++++++++++++++++++++++++++++++ hosts/tomato/packages.nix | 40 ++++++++++++++++++++++++++++++++++++++++ 4 files changed, 115 insertions(+) create mode 100644 hosts/tomato/default.nix create mode 100644 hosts/tomato/hardware.nix create mode 100644 hosts/tomato/packages.nix diff --git a/hosts/default.nix b/hosts/default.nix index 8ba60fb..6435c09 100644 --- a/hosts/default.nix +++ b/hosts/default.nix @@ -39,6 +39,7 @@ in hosts { "x86_64-linux" = [ "thyme" + "tomato" ]; "aarch64-linux" = [ "muspell" diff --git a/hosts/tomato/default.nix b/hosts/tomato/default.nix new file mode 100644 index 0000000..623e81a --- /dev/null +++ b/hosts/tomato/default.nix @@ -0,0 +1,32 @@ +{ ... }: + +{ + imports = [ + ./hardware.nix + ./packages.nix + ]; + + this.main.enable = true; + this.laptop.enable = true; + + networking.domain = "alef.zoar.cx"; + + this.locales = { + default = "us"; + extra = ["it" "jp"]; + dictionaries.extra = ["grc" "la"]; + }; + + time.timeZone = "America/Chicago"; + + this.users.enabled = ["simon"]; + + services.printing.enable = true; + + this.hosts = { + lan.home = true; + mine = true; + }; + + system.stateVersion = "24.11"; +} diff --git a/hosts/tomato/hardware.nix b/hosts/tomato/hardware.nix new file mode 100644 index 0000000..eec1b89 --- /dev/null +++ b/hosts/tomato/hardware.nix @@ -0,0 +1,42 @@ +{ ... }: + +let swapPart = "/dev/sda2"; +in +{ + boot.initrd.availableKernelModules = []; + boot.initrd.kernelModules = []; + boot.kernelModules = [ + "kvm-intel" + "uinput" # work around rules bug + "iwlwifi" + ]; + boot.extraModulePackages = []; + boot.resumeDevice = swapPart; + + boot.loader.grub.enable = true; + boot.loader.grub.device = "/dev/sda"; + + fileSystems."/" = { + device = "/dev/sda1"; + fsType = "ext4"; + }; + + fileSystems."/home" = { + device = "/dev/sda3"; + fsType = "ext4"; + }; + + swapDevices = [ + { device = swapPart; } + ]; + + hardware.graphics.extraPackages = [pkgs.intel-vaapi-driver]; + services.xserver.videoDrivers = ["intel"]; + + + hardware.firmware = with pkgs; [ + linux-firmware + ]; + + nixpkgs.hostPlatform = "x86_64-linux"; +} diff --git a/hosts/tomato/packages.nix b/hosts/tomato/packages.nix new file mode 100644 index 0000000..b4c4ba4 --- /dev/null +++ b/hosts/tomato/packages.nix @@ -0,0 +1,40 @@ +{ pkgs, ... }: + +{ + this.sets = { + arch.tools = true; + cli.tools.full = true; + cli.shell = true; + comm.im = true; + de.utils = true; + gui.tools.full = true; + gui.theme = true; + gui.fonts = true; + image.utils = true; + image.tools = true; + manga.dl = true; + media.tools = true; + net.tools.full = true; + script.utils = true; + sound.tools = true; + sys.tools = true; + writing.tools = true; + www.browser = true; + }; + + environment.systemPackages = with pkgs; [ + emacs + emacsPackages.pdf-tools + jre + ruby + sbcl + python3 + rclone + nethack + sil-q + mu + emacsPackages.mu4e + isync + ppsspp + ]; +} -- cgit v1.2.3