summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--flake.lock261
-rw-r--r--flake.nix23
-rw-r--r--modules/core/createHost.nix115
-rw-r--r--modules/hosts/shar/shar.nix0
-rw-r--r--modules/hosts/tiamat/hardware-configuration.nix40
-rw-r--r--modules/hosts/tiamat/hardware.nix37
-rw-r--r--modules/hosts/tiamat/tiamat.nix19
-rw-r--r--modules/hosts/vecna/vecna.nix0
-rw-r--r--modules/packages/fish.nix23
-rw-r--r--modules/parts.nix10
10 files changed, 230 insertions, 298 deletions
diff --git a/flake.lock b/flake.lock
index 933b8aa..4fe581b 100644
--- a/flake.lock
+++ b/flake.lock
@@ -1,25 +1,5 @@
{
"nodes": {
- "auto-cpufreq": {
- "inputs": {
- "nixpkgs": [
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1772058043,
- "narHash": "sha256-m1cmQgb6tBcHkndKZ8BSsw6PRNJMG89FZwoYVOuKi34=",
- "owner": "AdnanHodzic",
- "repo": "auto-cpufreq",
- "rev": "5d600d710bb2aa331e1a4370e08476bcdea1cab5",
- "type": "github"
- },
- "original": {
- "owner": "AdnanHodzic",
- "repo": "auto-cpufreq",
- "type": "github"
- }
- },
"flake-compat": {
"flake": false,
"locked": {
@@ -41,11 +21,11 @@
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
- "lastModified": 1749398372,
- "narHash": "sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98=",
+ "lastModified": 1772408722,
+ "narHash": "sha256-rHuJtdcOjK7rAHpHphUb1iCvgkU3GpfvicLMwwnfMT0=",
"owner": "hercules-ci",
"repo": "flake-parts",
- "rev": "9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569",
+ "rev": "f20dc5d9b8027381c474144ecabc9034d6a839a3",
"type": "github"
},
"original": {
@@ -57,27 +37,6 @@
"flake-parts_2": {
"inputs": {
"nixpkgs-lib": [
- "nur",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1733312601,
- "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
- "owner": "hercules-ci",
- "repo": "flake-parts",
- "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
- "type": "github"
- },
- "original": {
- "owner": "hercules-ci",
- "repo": "flake-parts",
- "type": "github"
- }
- },
- "flake-parts_3": {
- "inputs": {
- "nixpkgs-lib": [
"nvf",
"nixpkgs"
]
@@ -103,11 +62,11 @@
]
},
"locked": {
- "lastModified": 1773810247,
- "narHash": "sha256-6Vz1Thy/1s7z+Rq5OfkWOBAdV4eD+OrvDs10yH6xJzQ=",
+ "lastModified": 1774647770,
+ "narHash": "sha256-UNNi14XiqRWWjO8ykbFwA5wRwx7EscsC+GItOVpuGjc=",
"owner": "nix-community",
"repo": "home-manager",
- "rev": "d47357a4c806d18a3e853ad2699eaec3c01622e7",
+ "rev": "02371c05a04a2876cf92e2d67a259e8f87399068",
"type": "github"
},
"original": {
@@ -137,25 +96,18 @@
"type": "github"
}
},
- "mango": {
- "inputs": {
- "flake-parts": "flake-parts",
- "nixpkgs": [
- "nixpkgs"
- ],
- "scenefx": "scenefx"
- },
+ "import-tree": {
"locked": {
- "lastModified": 1773887083,
- "narHash": "sha256-Uqo0rulfjQmUmlRJTWfu5anjdsvY2xDZtvKtmEMECts=",
- "owner": "DreamMaoMao",
- "repo": "mango",
- "rev": "c776356efe165dca09742f78f2a018e065b825be",
+ "lastModified": 1773693634,
+ "narHash": "sha256-BtZ2dtkBdSUnFPPFc+n0kcMbgaTxzFNPv2iaO326Ffg=",
+ "owner": "vic",
+ "repo": "import-tree",
+ "rev": "c41e7d58045f9057880b0d85e1152d6a4430dbf1",
"type": "github"
},
"original": {
- "owner": "DreamMaoMao",
- "repo": "mango",
+ "owner": "vic",
+ "repo": "import-tree",
"type": "github"
}
},
@@ -198,27 +150,26 @@
},
"nix-flatpak": {
"locked": {
- "lastModified": 1767983141,
- "narHash": "sha256-7ZCulYUD9RmJIDULTRkGLSW1faMpDlPKcbWJLYHoXcs=",
+ "lastModified": 1768656715,
+ "narHash": "sha256-Sbh037scxKFm7xL0ahgSCw+X2/5ZKeOwI2clqrYr9j4=",
"owner": "gmodena",
"repo": "nix-flatpak",
- "rev": "440818969ac2cbd77bfe025e884d0aa528991374",
+ "rev": "123fe29340a5b8671367055b75a6e7c320d6f89a",
"type": "github"
},
"original": {
"owner": "gmodena",
- "ref": "latest",
"repo": "nix-flatpak",
"type": "github"
}
},
"nixos-hardware": {
"locked": {
- "lastModified": 1773533765,
- "narHash": "sha256-qonGfS2lzCgCl59Zl63jF6dIRRpvW3AJooBGMaXjHiY=",
+ "lastModified": 1774567711,
+ "narHash": "sha256-uVlOHBvt6Vc/iYNJXLPa4c3cLXwMllOCVfAaLAcphIo=",
"owner": "NixOS",
"repo": "nixos-hardware",
- "rev": "f8e82243fd601afb9f59ad230958bd073795cbfe",
+ "rev": "3f6f874dfc34d386d10e434c48ad966c4832243e",
"type": "github"
},
"original": {
@@ -230,15 +181,15 @@
},
"nixpkgs": {
"locked": {
- "lastModified": 1773821835,
- "narHash": "sha256-TJ3lSQtW0E2JrznGVm8hOQGVpXjJyXY2guAxku2O9A4=",
- "owner": "nixos",
+ "lastModified": 1774386573,
+ "narHash": "sha256-4hAV26quOxdC6iyG7kYaZcM3VOskcPUrdCQd/nx8obc=",
+ "owner": "NixOS",
"repo": "nixpkgs",
- "rev": "b40629efe5d6ec48dd1efba650c797ddbd39ace0",
+ "rev": "46db2e09e1d3f113a13c0d7b81e2f221c63b8ce9",
"type": "github"
},
"original": {
- "owner": "nixos",
+ "owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
@@ -246,11 +197,11 @@
},
"nixpkgs-lib": {
"locked": {
- "lastModified": 1748740939,
- "narHash": "sha256-rQaysilft1aVMwF14xIdGS3sj1yHlI6oKQNBRTF40cc=",
+ "lastModified": 1772328832,
+ "narHash": "sha256-e+/T/pmEkLP6BHhYjx6GmwP5ivonQQn0bJdH9YrRB+Q=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
- "rev": "656a64127e9d791a334452c6b6606d17539476e2",
+ "rev": "c185c7a5e5dd8f9add5b2f8ebeff00888b070742",
"type": "github"
},
"original": {
@@ -261,76 +212,40 @@
},
"nixpkgs_2": {
"locked": {
- "lastModified": 1764983851,
- "narHash": "sha256-y7RPKl/jJ/KAP/VKLMghMgXTlvNIJMHKskl8/Uuar7o=",
+ "lastModified": 1773840656,
+ "narHash": "sha256-9tpvMGFteZnd3gRQZFlRCohVpqooygFuy9yjuyRL2C0=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "d9bc5c7dceb30d8d6fafa10aeb6aa8a48c218454",
+ "rev": "9cf7092bdd603554bd8b63c216e8943cf9b12512",
"type": "github"
},
"original": {
"owner": "NixOS",
- "ref": "nixos-25.11",
+ "ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
- "lastModified": 1773389992,
- "narHash": "sha256-wLdaFm1T0uzQya3eG/5+LPbmyB92jE/AnMtVY6re818=",
- "rev": "c06b4ae3d6599a672a6210b7021d699c351eebda",
- "type": "tarball",
- "url": "https://releases.nixos.org/nixos/unstable/nixos-26.05pre962836.c06b4ae3d659/nixexprs.tar.xz"
- },
- "original": {
- "type": "tarball",
- "url": "https://channels.nixos.org/nixos-unstable/nixexprs.tar.xz"
- }
- },
- "nordvpn-flake": {
- "inputs": {
- "nixpkgs": "nixpkgs_2"
- },
- "locked": {
- "lastModified": 1767767456,
- "narHash": "sha256-4pvbTFMA3HCPy2BDbrYE7qJ4Gqi4+6sOEnogns1ZdLE=",
- "owner": "scouckel",
- "repo": "nordvpn-flake",
- "rev": "911ec60100db550bfaf6eced73e3cbb1a5a3e367",
- "type": "github"
- },
- "original": {
- "owner": "scouckel",
- "repo": "nordvpn-flake",
- "type": "github"
- }
- },
- "nur": {
- "inputs": {
- "flake-parts": "flake-parts_2",
- "nixpkgs": [
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1773888763,
- "narHash": "sha256-u7KyDatVwmdWmud5Rcz1bsI24W5xe1DU6c/kyk7Dszo=",
- "owner": "nix-community",
- "repo": "NUR",
- "rev": "d7fbf7d4d9c65342c4dcbe3fefe0576f7734c852",
+ "lastModified": 1773734432,
+ "narHash": "sha256-IF5ppUWh6gHGHYDbtVUyhwy/i7D261P7fWD1bPefOsw=",
+ "owner": "NixOS",
+ "repo": "nixpkgs",
+ "rev": "cda48547b432e8d3b18b4180ba07473762ec8558",
"type": "github"
},
"original": {
- "owner": "nix-community",
- "repo": "NUR",
+ "owner": "NixOS",
+ "ref": "nixos-unstable",
+ "repo": "nixpkgs",
"type": "github"
}
},
"nvf": {
"inputs": {
"flake-compat": "flake-compat",
- "flake-parts": "flake-parts_3",
+ "flake-parts": "flake-parts_2",
"mnw": "mnw",
"ndg": "ndg",
"nixpkgs": [
@@ -339,11 +254,11 @@
"systems": "systems"
},
"locked": {
- "lastModified": 1773863905,
- "narHash": "sha256-gfTSlftHbUmW3Z++XzquqH/GaAAI/z+Ep/zU03gLMQ4=",
+ "lastModified": 1774631252,
+ "narHash": "sha256-SBPYPLuM+KSaauKsWa7sETRf26NT7LH0ilUw36V5nkA=",
"owner": "NotAShelf",
"repo": "nvf",
- "rev": "046afc8b3e7a5b0f668ef2dc1b8b904e5b892435",
+ "rev": "5836038ead139a0c54269ecde45cba262fb3a3db",
"type": "github"
},
"original": {
@@ -354,86 +269,66 @@
},
"root": {
"inputs": {
- "auto-cpufreq": "auto-cpufreq",
+ "flake-parts": "flake-parts",
"home-manager": "home-manager",
- "mango": "mango",
+ "import-tree": "import-tree",
"nix-flatpak": "nix-flatpak",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs",
- "nordvpn-flake": "nordvpn-flake",
- "nur": "nur",
"nvf": "nvf",
- "spicetify": "spicetify",
+ "wrapper-modules": "wrapper-modules",
+ "wrappers": "wrappers",
"zen-browser": "zen-browser"
}
},
- "scenefx": {
- "inputs": {
- "nixpkgs": [
- "mango",
- "nixpkgs"
- ]
- },
+ "systems": {
"locked": {
- "lastModified": 1750785057,
- "narHash": "sha256-tGX6j4W91rcb+glXJo43sjPI9zQvPotonknG1BdihR4=",
- "owner": "wlrfx",
- "repo": "scenefx",
- "rev": "3a6cfb12e4ba97b43326357d14f7b3e40897adfc",
+ "lastModified": 1681028828,
+ "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
+ "owner": "nix-systems",
+ "repo": "default",
+ "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
- "owner": "wlrfx",
- "repo": "scenefx",
+ "owner": "nix-systems",
+ "repo": "default",
"type": "github"
}
},
- "spicetify": {
+ "wrapper-modules": {
"inputs": {
- "nixpkgs": "nixpkgs_3",
- "systems": "systems_2"
+ "nixpkgs": "nixpkgs_2"
},
"locked": {
- "lastModified": 1773619901,
- "narHash": "sha256-Br8CQy4ht+a2OxyzaRwuP5+oIFfoRvCxYgsmdrgid40=",
- "owner": "Gerg-L",
- "repo": "spicetify-nix",
- "rev": "6f06ff05cd536b790b7662550a10b61a1ac4619e",
+ "lastModified": 1774622331,
+ "narHash": "sha256-73C9XYuBrgo8unDbmqEFq4pNwQaSGXrTnBckqkOXmBk=",
+ "owner": "BirdeeHub",
+ "repo": "nix-wrapper-modules",
+ "rev": "364e0007179fc2c910a6588e8826fd3fd7a45c14",
"type": "github"
},
"original": {
- "owner": "Gerg-L",
- "repo": "spicetify-nix",
+ "owner": "BirdeeHub",
+ "repo": "nix-wrapper-modules",
"type": "github"
}
},
- "systems": {
- "locked": {
- "lastModified": 1681028828,
- "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
- "owner": "nix-systems",
- "repo": "default",
- "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
- "type": "github"
+ "wrappers": {
+ "inputs": {
+ "nixpkgs": "nixpkgs_3"
},
- "original": {
- "owner": "nix-systems",
- "repo": "default",
- "type": "github"
- }
- },
- "systems_2": {
"locked": {
- "lastModified": 1681028828,
- "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
- "owner": "nix-systems",
- "repo": "default",
- "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
+ "lastModified": 1774293387,
+ "narHash": "sha256-yVekLWxKTUfUyuvo9HVihtOK8llIP3IZCrJmftxT+Nc=",
+ "owner": "Lassulus",
+ "repo": "wrappers",
+ "rev": "3cf1e8371129e8746d37c863c5d56a81fb16caa0",
"type": "github"
},
"original": {
- "owner": "nix-systems",
- "repo": "default",
+ "owner": "Lassulus",
+ "repo": "wrappers",
"type": "github"
}
},
@@ -445,11 +340,11 @@
]
},
"locked": {
- "lastModified": 1773737882,
- "narHash": "sha256-P6k0BtT1/idYveVRdcwAZk8By9UjZW8XOMhSoS6wTBY=",
+ "lastModified": 1774605342,
+ "narHash": "sha256-VEcy7N8TExxCsDem0SUsqJJlTcUm0y4vaSPYCghe5W8=",
"owner": "0xc000022070",
"repo": "zen-browser-flake",
- "rev": "a7f1db35d74faf04e5189b3a32f890186ace5c28",
+ "rev": "4916e4d7ab444c544c3f36cc9fafe58cdb0f7237",
"type": "github"
},
"original": {
diff --git a/flake.nix b/flake.nix
index 793dc7b..cdb95c6 100644
--- a/flake.nix
+++ b/flake.nix
@@ -1,11 +1,28 @@
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
+
flake-parts.url = "github:hercules-ci/flake-parts";
import-tree.url = "github:vic/import-tree";
+ wrappers.url = "github:Lassulus/wrappers";
+ wrapper-modules.url = "github:BirdeeHub/nix-wrapper-modules";
+
+ home-manager = {
+ url = "github:nix-community/home-manager";
+ inputs.nixpkgs.follows = "nixpkgs";
+ };
+ nixos-hardware.url = "github:NixOS/nixos-hardware/master";
+
+ nvf = {
+ url = "github:NotAShelf/nvf";
+ inputs.nixpkgs.follows = "nixpkgs";
+ };
+ zen-browser = {
+ url = "github:0xc000022070/zen-browser-flake";
+ inputs.nixpkgs.follows = "nixpkgs";
+ };
+ nix-flatpak.url = "github:gmodena/nix-flatpak";
};
- outputs = inputs:
- inputs.flake-parts.lib.mkFlake {inherit inputs;}
- (inputs.import-tree ./modules);
+ outputs = inputs: inputs.flake-parts.lib.mkFlake {inherit inputs;} (inputs.import-tree ./modules);
}
diff --git a/modules/core/createHost.nix b/modules/core/createHost.nix
index 7c84bde..da33708 100644
--- a/modules/core/createHost.nix
+++ b/modules/core/createHost.nix
@@ -1,13 +1,12 @@
{
self,
lib,
- config,
- pkgs,
...
-}: let
- cfg = config.jcklib.createHost;
-in {
- flake.nixosModules.createHost = {lib, ...}: {
+}:
+{
+ flake.nixosModules.createHost = { lib, config, pkgs, ... }: let
+ cfg = config.jcklib.createHost;
+ in {
options.jcklib.createHost = {
hostName = lib.mkOption {
type = lib.types.str;
@@ -21,57 +20,75 @@ in {
default = "jck";
};
};
- };
- config = {
- boot.kernelPackages = lib.mkDefault pkgs.linuxPackages_latest;
- hardware.firmware = with pkgs; [
- linux-firmware
- ];
- hardware.enableRedistributableFirmware = true;
+ config = {
+ boot.loader = {
+ efi = {
+ canTouchEfiVariables = true;
+ efiSysMountPoint = "/boot"; # ← use the same mount point here.
+ };
+ grub = {
+ efiSupport = true;
+ device = "nodev";
+ useOSProber = true;
+ theme = "${pkgs.fetchFromGitHub { # blue screen of life grub theme
+ owner = "scouckel";
+ repo = "bsol";
+ rev = "a8eedad9e7163dce230ca7886be8e1b4ef81da99";
+ sha256 = "sha256-P2q73uM1Ysn1a+0mOGOvee/Q1WAYRGQvfanrasx/8r8";
+ }}/bsol";
+ };
+ };
- system.name = cfg.hostName;
- networking.hostName = cfg.hostName;
+ boot.kernelPackages = lib.mkDefault pkgs.linuxPackages_latest;
+ hardware.firmware = with pkgs; [
+ linux-firmware
+ ];
+ hardware.enableRedistributableFirmware = true;
- networking.networkmanager.enable = true;
+ system.name = cfg.hostName;
+ networking.hostName = cfg.hostName;
- time.timeZone = lib.mkDefault "US/Central";
- i18n.defaultLocale = "en_US.UTF-8";
- i18n.extraLocaleSettings = {
- LC_ADDRESS = "en_US.UTF-8";
- LC_IDENTIFICATION = "en_US.UTF-8";
- LC_MEASUREMENT = "en_US.UTF-8";
- LC_MONETARY = "en_US.UTF-8";
- LC_NAME = "en_US.UTF-8";
- LC_NUMERIC = "en_US.UTF-8";
- LC_PAPER = "en_US.UTF-8";
- LC_TELEPHONE = "en_US.UTF-8";
- LC_TIME = "en_US.UTF-8";
- };
+ networking.networkmanager.enable = true;
- services.xserver.xkb = {
- layout = "us";
- variant = "";
- };
+ time.timeZone = lib.mkDefault "US/Central";
+ i18n.defaultLocale = "en_US.UTF-8";
+ i18n.extraLocaleSettings = {
+ LC_ADDRESS = "en_US.UTF-8";
+ LC_IDENTIFICATION = "en_US.UTF-8";
+ LC_MEASUREMENT = "en_US.UTF-8";
+ LC_MONETARY = "en_US.UTF-8";
+ LC_NAME = "en_US.UTF-8";
+ LC_NUMERIC = "en_US.UTF-8";
+ LC_PAPER = "en_US.UTF-8";
+ LC_TELEPHONE = "en_US.UTF-8";
+ LC_TIME = "en_US.UTF-8";
+ };
- users.users.${cfg.userName} = {
- isNormalUser = true;
- description = cfg.userName;
- extraGroups = ["networkmanager" "wheel"];
- shell = pkgs.fish; # UPDATE WITH WRAPPED FISH CONFIG LATER
- };
+ services.xserver.xkb = {
+ layout = "us";
+ variant = "";
+ };
- nixpkgs.config.allowUnfree = true;
- nix.settings = {
- experimental-features = ["nix-command" "flakes"];
- auto-optimise-store = true;
- };
+ users.users.${cfg.userName} = {
+ isNormalUser = true;
+ description = cfg.userName;
+ extraGroups = ["networkmanager" "wheel"];
+ # shell = self.packages.fish; # UPDATE WITH WRAPPED FISH CONFIG LATER
+ };
- services.openssh = {
- enable = true;
- settings.PermitRootLogin = "no";
- };
+ nixpkgs.config.allowUnfree = true;
+ nix.settings = {
+ experimental-features = ["nix-command" "flakes"];
+ auto-optimise-store = true;
+ };
- system.stateVersion = "25.05";
+ services.openssh = {
+ enable = true;
+ settings.PermitRootLogin = "no";
+ };
+
+ system.stateVersion = "25.05";
+ };
};
}
diff --git a/modules/hosts/shar/shar.nix b/modules/hosts/shar/shar.nix
deleted file mode 100644
index e69de29..0000000
--- a/modules/hosts/shar/shar.nix
+++ /dev/null
diff --git a/modules/hosts/tiamat/hardware-configuration.nix b/modules/hosts/tiamat/hardware-configuration.nix
deleted file mode 100644
index dee0ce0..0000000
--- a/modules/hosts/tiamat/hardware-configuration.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-# 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 = [ "nvme" "xhci_pci" "thunderbolt" "usb_storage" "uas" "sd_mod" ];
- boot.initrd.kernelModules = [ ];
- boot.kernelModules = [ "kvm-amd" ];
- boot.extraModulePackages = [ ];
-
- fileSystems."/" =
- { device = "/dev/disk/by-uuid/0983bf69-0f71-4c49-885b-0b5c09a19429";
- fsType = "ext4";
- };
-
- fileSystems."/boot" =
- { device = "/dev/disk/by-uuid/756C-8B9B";
- fsType = "vfat";
- options = [ "fmask=0077" "dmask=0077" ];
- };
-
- swapDevices =
- [ { device = "/dev/disk/by-uuid/50dd07e0-bf93-450c-a91b-aa73a18a8224"; }
- ];
-
- # 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.wlp1s0.useDHCP = lib.mkDefault true;
-
- nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
- hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
-}
diff --git a/modules/hosts/tiamat/hardware.nix b/modules/hosts/tiamat/hardware.nix
new file mode 100644
index 0000000..eadfd00
--- /dev/null
+++ b/modules/hosts/tiamat/hardware.nix
@@ -0,0 +1,37 @@
+{ self, inputs, ... }: {
+ flake.nixosModules.tiamatHardware = { config, lib, pkgs, modulesPath, ... }: {
+ imports =
+ [ (modulesPath + "/installer/scan/not-detected.nix")
+ ];
+
+ boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" "usb_storage" "uas" "sd_mod" ];
+ boot.initrd.kernelModules = [ ];
+ boot.kernelModules = [ "kvm-amd" ];
+ boot.extraModulePackages = [ ];
+
+ fileSystems."/" =
+ { device = "/dev/disk/by-uuid/0983bf69-0f71-4c49-885b-0b5c09a19429";
+ fsType = "ext4";
+ };
+
+ fileSystems."/boot" =
+ { device = "/dev/disk/by-uuid/756C-8B9B";
+ fsType = "vfat";
+ options = [ "fmask=0077" "dmask=0077" ];
+ };
+
+ swapDevices =
+ [ { device = "/dev/disk/by-uuid/50dd07e0-bf93-450c-a91b-aa73a18a8224"; }
+ ];
+
+ # 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.wlp1s0.useDHCP = lib.mkDefault true;
+
+ nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
+ hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
+ };
+}
diff --git a/modules/hosts/tiamat/tiamat.nix b/modules/hosts/tiamat/tiamat.nix
index e69de29..3ff764b 100644
--- a/modules/hosts/tiamat/tiamat.nix
+++ b/modules/hosts/tiamat/tiamat.nix
@@ -0,0 +1,19 @@
+{ inputs, self, ... }:
+
+{
+ flake.nixosConfigurations.tiamat = inputs.nixpkgs.lib.nixosSystem {
+ modules = [
+ self.nixosModules.tiamat
+ self.nixosModules.tiamatHardware
+
+ self.nixosModules.createHost
+ ];
+ };
+
+ flake.nixosModules.tiamat = { pkgs, ... }: {
+ jcklib.createHost = {
+ hostName = "tiamat";
+ userName = "jck";
+ };
+ };
+}
diff --git a/modules/hosts/vecna/vecna.nix b/modules/hosts/vecna/vecna.nix
deleted file mode 100644
index e69de29..0000000
--- a/modules/hosts/vecna/vecna.nix
+++ /dev/null
diff --git a/modules/packages/fish.nix b/modules/packages/fish.nix
deleted file mode 100644
index fb3223d..0000000
--- a/modules/packages/fish.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{inputs, ...}: {
- perSystem = {
- self',
- pkgs,
- ...
- }: let
- fishConf = ''
- function fish_greeting
- fastfetch
- end
-
- fish_vi_key_bindings
- '';
- in {
- packages.fish = inputs.wrappers.lib.wrapPackage {
- inherit pkgs;
- package = pkgs.fish;
- flags = {
- "-C" = "source ${fishConf}";
- };
- };
- };
-}
diff --git a/modules/parts.nix b/modules/parts.nix
new file mode 100644
index 0000000..657e3ca
--- /dev/null
+++ b/modules/parts.nix
@@ -0,0 +1,10 @@
+{
+ config = {
+ systems = [
+ "x86_64-linux"
+ "x86_64-darwin"
+ "aarch64-linux"
+ "aarch64-darwin"
+ ];
+ };
+}