Commit 43fb6df9099f
Changed files (5)
systems
shikoku
systems/shikoku/boot.nix
@@ -1,56 +1,20 @@
-{
- config,
- pkgs,
- ...
-}:
+{ pkgs, ... }:
{
boot = {
- # supportedFilesystems = [ "zfs" ];
initrd.availableKernelModules = [
- "xhci_pci"
"ahci"
"nvme"
- "usb_storage"
- "usbhid"
"sd_mod"
"sr_mod"
- ];
- initrd.kernelModules = [
- "vfio_pci"
- "vfio"
- "vfio_iommu_type1"
-
- "nvidia"
- "nvidia_modeset"
- "nvidia_uvm"
- "nvidia_drm"
+ "usb_storage"
+ "usbhid"
+ "xhci_pci"
];
kernelModules = [
- "ahci" # sata controller, might not be needed
- "nvme" # required for nvme disks
- "thunderbolt" # required for thunderbolt (dock, …)
- # from thinkpad x1 gen 9
- "dm-mod"
- "cryptd" # required for encryption
- "xhci_pci" # usb controller related
- "usb_storage" # usb storage related
- "sd_mod" # block device related
- "sdhci_pci" # block device related as well
- "aesni-intel" # advanced encryption for intel
- "kvm_intel"
+ "thunderbolt"
"kvm-intel"
- "nvidia"
];
- extraModulePackages = [
- config.boot.kernelPackages.nvidiaPackages.stable
- config.boot.kernelPackages.nvidia_x11
- ];
- kernelParams = [
- "intel_iommu=on"
- "kvm_intel.nested=1"
- # ("vfio-pci.ids=" + lib.concatStringsSep "," gpuIDs)
- ];
-
+ kernelParams = [ "kvm_intel.nested=1" ];
kernelPackages = pkgs.linuxPackages_latest;
};
}
systems/shikoku/disks.nix
@@ -1,17 +1,10 @@
_: {
disko.devices = {
- # NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
- # sda 8:0 0 489G 0 disk
- # sdb 8:16 0 1.8T 0 disk
- # sdc 8:32 0 465.8G 0 disk
- # nvme0n1 259:0 0 232.9G 0 disk
- # nvme1n1 259:3 0 232.9G 0 disk
disk = {
- # 512GB root/boot drive. Configured with:
- # - A FAT32 ESP partition for systemd-boot
- # - A LUKS container which contains an EXT4 filesystem
root = {
type = "disk";
+ # Verify with lsblk before installing. Override with --disk root DEVICE
+ # when the system disk changes, for example after adding Okinawa's NVMe.
device = "/dev/nvme0n1";
content = {
type = "gpt";
systems/shikoku/extra.nix
@@ -1,92 +1,1 @@
-{
- pkgs,
- ...
-}:
-{
- imports = [
-
- ../common/services/containers.nix
- ../common/services/docker.nix
- ../common/services/libvirt.nix
- ];
-
- age.secrets."aria2RPCSecret" = {
- file = ../../secrets/shikoku/aria2rpcsecret.age;
- mode = "444";
- owner = "aria2";
- group = "aria2";
- };
- nixpkgs.config.permittedInsecurePackages = [
- "dotnet-sdk-6.0.428"
- "aspnetcore-runtime-6.0.36"
- ];
-
- services = {
-
- aria2 = {
- enable = true;
- openPorts = true;
- # extraArguments = "--max-concurrent-downloads=20";
- settings = {
- max-concurrent-downloads = 20;
- };
- downloadDir = "/data/downloads";
- rpcSecretFile = "${pkgs.writeText "aria" "aria2rpc\n"}";
- };
- bazarr = {
- enable = true;
- # Use reverse proxy instead
- openFirewall = true;
- };
- radarr = {
- enable = true;
- # Use reverse proxy instead
- openFirewall = true;
- };
- sonarr = {
- enable = true;
- # Use reverse proxy instead
- openFirewall = true;
- };
- prowlarr = {
- enable = true;
- # Use reverse proxy instead
- openFirewall = true;
- };
- readarr = {
- enable = true;
- # Use reverse proxy instead
- openFirewall = true;
- };
- lidarr = {
- enable = true;
- # Use reverse proxy instead
- openFirewall = true;
- };
- smartd = {
- enable = true;
- devices = [ { device = "/dev/nvme0n1"; } ];
- };
- ollama = {
- enable = true;
- package = pkgs.ollama.override {
- config.cudaSupport = true;
- config.rocmSupport = false;
- };
- acceleration = "cuda"; # no nivida :D
- };
- };
-
- # Move this to a "builder" role, or maybe I don't need this anymore ?
- users.extraUsers.builder = {
- isNormalUser = true;
- uid = 1018;
- extraGroups = [ ];
- openssh.authorizedKeys.keys = [ (builtins.readFile ../../secrets/builder.pub) ];
- };
- nix.settings.trusted-users = [
- "root"
- "vincent"
- "builder"
- ];
-}
+_: { }
systems/shikoku/hardware.nix
@@ -1,81 +1,14 @@
-{
- inputs,
- lib,
- config,
- ...
-}:
+{ inputs, ... }:
{
imports = [
inputs.disko.nixosModules.disko
- (import ./disks.nix { inherit lib; })
+ ./disks.nix
];
- fileSystems."/" = {
- device = "/dev/disk/by-uuid/73fd8864-f6af-4fdd-b826-0dfdeacd3c19";
- fsType = "ext4";
- options = [
- "noatime"
- "discard"
- ];
- };
-
- fileSystems."/boot" = {
- device = "/dev/disk/by-uuid/829D-BFD1";
- fsType = "vfat";
- };
-
- # Extra data
- # HDD: b58e59a4-92e7-4278-97ba-6fe361913f50
- fileSystems."/data" = {
- device = "/dev/disk/by-uuid/b58e59a4-92e7-4278-97ba-6fe361913f50";
- fsType = "ext4";
- options = [ "noatime" ];
- };
- # ZFS Pool
- # SSD1: 469077df-049f-4f5d-a34f-1f5449d782ec
- # SSD2: e11a3b63-791c-418b-9f4b-5ae0199f1f97
- # NVME2: 3d2dff80-f2b1-4c48-8e76-12b01fdf4137
- # boot.zfs.extraPools = [ "tank" ];
- # networking.hostId = "03129692bea040488878aa0133e54914";
- # networking.hostId = "03129692";
- # fileSystems."/tank/data" =
- # {
- # device = "tank/data";
- # fsType = "zfs";
- # options = [ "zfsutil" ];
- # };
- #
- # fileSystems."/tank/virt" =
- # {
- # device = "tank/virt";
- # fsType = "zfs";
- # options = [ "zfsutil" ];
- # };
swapDevices = [
{
- device = "/dev/disk/by-uuid/a9ec44e6-0c1d-4f60-9f5c-81a7eaa8e8fd";
+ device = "/swapfile";
+ size = 8 * 1024; # 8 GiB
}
];
-
- networking = {
- hostId = builtins.substring 0 8 (builtins.hashString "md5" config.networking.hostName);
- # Bridge setup
- bridges.br1.interfaces = [ "enp0s31f6" ];
- useDHCP = false;
- interfaces.br1 = {
- useDHCP = true;
- };
- # FIXME probably change this
- firewall.enable = false; # we are in safe territory :D
- };
- hardware.nvidia = {
- modesetting.enable = true;
- open = false;
- nvidiaSettings = true;
- package = config.boot.kernelPackages.nvidiaPackages.stable;
- };
- hardware.graphics = {
- enable = true;
- };
- nixpkgs.config.allowUnfree = true;
}
flake.nix
@@ -91,9 +91,12 @@
sakhalin = libx.mkHost {
hostname = "sakhalin";
};
- # shikoku = libx.mkHost {
- # hostname = "shikoku";
- # };
+ shikoku = libx.mkHost {
+ hostname = "shikoku";
+ pkgsInput = inputs.nixpkgs-26_05;
+ homeInput = inputs.home-manager-26_05;
+ agenixInput = inputs.agenix-26_05;
+ };
# Servers (stable)
aix = libx.mkHost {
hostname = "aix";