mirror of
https://github.com/blahai/nyx.git
synced 2025-01-18 19:10:21 +00:00
Add theia stuffies
This commit is contained in:
parent
452e600c5f
commit
ad09e551fd
11 changed files with 135 additions and 2 deletions
|
@ -1 +1,31 @@
|
||||||
{}
|
{
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
inherit (lib.modules) mkIf mkDefault;
|
||||||
|
inherit (lib.options) mkOption;
|
||||||
|
inherit (lib.types) nullOr str;
|
||||||
|
cfg = config.olympus.system.boot;
|
||||||
|
in {
|
||||||
|
options.olympus.system.boot.grub = {
|
||||||
|
device = mkOption {
|
||||||
|
type = nullOr str;
|
||||||
|
default = "nodev";
|
||||||
|
description = "The device to install the bootloader to.";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf (cfg.loader == "grub") {
|
||||||
|
boot.loader.grub = {
|
||||||
|
enable = mkDefault true;
|
||||||
|
useOSProber = false;
|
||||||
|
efiSupport = false;
|
||||||
|
enableCryptodisk = mkDefault false;
|
||||||
|
inherit (cfg.grub) device;
|
||||||
|
theme = null;
|
||||||
|
backgroundColor = null;
|
||||||
|
splashImage = null;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
inherit (config.olympus) device;
|
inherit (config.olympus) device;
|
||||||
inherit (lib.modules) mkIf;
|
inherit (lib.modules) mkIf;
|
||||||
in {
|
in {
|
||||||
config = mkIf (device.cpu == "amd") {
|
config = mkIf (device.cpu == "amd" || device.cpu == "vm-amd") {
|
||||||
hardware.cpu.amd.updateMicrocode = true;
|
hardware.cpu.amd.updateMicrocode = true;
|
||||||
|
|
||||||
boot.kernelModules = [
|
boot.kernelModules = [
|
||||||
|
|
|
@ -9,6 +9,7 @@ in {
|
||||||
type = types.nullOr (
|
type = types.nullOr (
|
||||||
types.enum [
|
types.enum [
|
||||||
"amd"
|
"amd"
|
||||||
|
"vm-amd"
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
default = null;
|
default = null;
|
||||||
|
|
1
modules/profiles/headless/default.nix
Normal file
1
modules/profiles/headless/default.nix
Normal file
|
@ -0,0 +1 @@
|
||||||
|
{}
|
1
modules/profiles/laptop/default.nix
Normal file
1
modules/profiles/laptop/default.nix
Normal file
|
@ -0,0 +1 @@
|
||||||
|
{}
|
1
modules/profiles/server/default.nix
Normal file
1
modules/profiles/server/default.nix
Normal file
|
@ -0,0 +1 @@
|
||||||
|
{}
|
24
systems/theia/default.nix
Normal file
24
systems/theia/default.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./hardware.nix
|
||||||
|
./networking.nix
|
||||||
|
./overrides.nix
|
||||||
|
./services.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
olympus = {
|
||||||
|
device = {
|
||||||
|
cpu = "vm-amd";
|
||||||
|
gpu = null;
|
||||||
|
};
|
||||||
|
system = {
|
||||||
|
boot = {
|
||||||
|
loader = "grub";
|
||||||
|
loadRecommendedModules = true;
|
||||||
|
enableKernelTweaks = true;
|
||||||
|
initrd.enableTweaks = true;
|
||||||
|
plymouth.enable = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
20
systems/theia/hardware.nix
Normal file
20
systems/theia/hardware.nix
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
{
|
||||||
|
fileSystems = {
|
||||||
|
"/" = {
|
||||||
|
device = "/dev/disk/by-uuid/09e65ff9-2195-41d8-b6a4-671c306742c3";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
"/boot" = {
|
||||||
|
device = "/dev/disk/by-uuid/FED3-A372";
|
||||||
|
fsType = "vfat";
|
||||||
|
options = ["fmask=0022" "dmask=0022"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
swapDevices = [
|
||||||
|
{
|
||||||
|
device = "/var/lib/swapfile";
|
||||||
|
size = 16 * 1024;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
1
systems/theia/networking.nix
Normal file
1
systems/theia/networking.nix
Normal file
|
@ -0,0 +1 @@
|
||||||
|
{}
|
53
systems/theia/overrides.nix
Normal file
53
systems/theia/overrides.nix
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
inherit (lib.modules) mkForce;
|
||||||
|
in {
|
||||||
|
imports = [(modulesPath + "/profiles/qemu-guest.nix")];
|
||||||
|
|
||||||
|
config = {
|
||||||
|
services = {
|
||||||
|
smartd.enable = mkForce false; # Unavailable - device lacks SMART capability.
|
||||||
|
qemuGuest.enable = true;
|
||||||
|
};
|
||||||
|
systemd.services.qemu-guest-agent.path = [pkgs.shadow];
|
||||||
|
|
||||||
|
system.stateVersion = mkForce "25.04";
|
||||||
|
|
||||||
|
boot = {
|
||||||
|
kernelParams = ["net.ifnames=0"];
|
||||||
|
kernel.sysctl = {
|
||||||
|
"net.ipv4.ip_forward" = true;
|
||||||
|
"net.ipv6.conf.all.forwarding" = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
initrd = {
|
||||||
|
availableKernelModules = [
|
||||||
|
"ata_piix"
|
||||||
|
"uhci_hcd"
|
||||||
|
"virtio_pci"
|
||||||
|
"virtio_scsi"
|
||||||
|
"ahci"
|
||||||
|
"sr_mod"
|
||||||
|
"virtio_blk"
|
||||||
|
];
|
||||||
|
kernelModules = ["dm-snapshot"];
|
||||||
|
};
|
||||||
|
|
||||||
|
loader.grub = {
|
||||||
|
enable = true;
|
||||||
|
useOSProber = mkForce false;
|
||||||
|
efiSupport = mkForce false;
|
||||||
|
enableCryptodisk = false;
|
||||||
|
theme = mkForce null;
|
||||||
|
backgroundColor = mkForce null;
|
||||||
|
splashImage = mkForce null;
|
||||||
|
device = mkForce "/dev/vda";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
1
systems/theia/services.nix
Normal file
1
systems/theia/services.nix
Normal file
|
@ -0,0 +1 @@
|
||||||
|
{}
|
Loading…
Reference in a new issue