systems/machines/persephone.nix
2025-12-27 21:26:40 +01:00

173 lines
3.8 KiB
Nix

{
config,
lib,
pkgs,
...
}:
let
boot = "cb03cf78-715e-4030-ba82-189ff8897eaf";
esp = "4E4C-1139";
luks = "0cf52ea1-16d1-4dec-a69a-bdac82bbcf25";
cryptroot = "6fb9ce3c-c870-4eb7-8199-6536ff898701";
in
{
boot = {
blacklistedKernelModules = [
"spd5118"
];
extraModulePackages = [ ];
kernelModules = [
"i2c-dev"
"kvm-intel"
];
kernelPackages = pkgs.linuxPackages_6_17;
kernelParams = [ "i915.enable_guc=3" ];
};
boot.initrd = {
availableKernelModules = [
"xhci_pci"
"thunderbolt"
"nvme"
"ahci"
"usbhid"
"sd_mod"
];
luks.devices."cryptroot".device = "/dev/disk/by-uuid/${luks}";
};
console = {
keyMap = "us";
font = "${pkgs.terminus_font}/share/consolefonts/ter-v28b.psf.gz";
};
i18n.defaultLocale = "en_US.UTF-8";
fileSystems."/".device = "/dev/disk/by-uuid/${cryptroot}";
fileSystems."/boot".device = "/dev/disk/by-uuid/${boot}";
fileSystems."/efi".device = "/dev/disk/by-uuid/${esp}";
fileSystems."/home".device = "/dev/disk/by-uuid/${cryptroot}";
fileSystems."/nix".device = "/dev/disk/by-uuid/${cryptroot}";
fileSystems."/var/cache".device = "/dev/disk/by-uuid/${cryptroot}";
fileSystems."/var/lib/machines".device = "/dev/disk/by-uuid/${cryptroot}";
fileSystems."/var/lib/portables".device = "/dev/disk/by-uuid/${cryptroot}";
fileSystems."/var/log".device = "/dev/disk/by-uuid/${cryptroot}";
fileSystems."/var/spool".device = "/dev/disk/by-uuid/${cryptroot}";
fileSystems."/var/tmp".device = "/dev/disk/by-uuid/${cryptroot}";
hardware.enableRedistributableFirmware = true;
hardware.bluetooth.enable = true;
hardware.graphics = {
enable = true;
extraPackages = with pkgs; [
intel-media-driver
vpl-gpu-rt
];
};
hardware.i2c.enable = true;
hardware.nvidia = {
package = config.boot.kernelPackages.nvidiaPackages.stable;
open = true;
nvidiaSettings = true;
};
hardware.nvidia.prime = {
intelBusId = "PCI:0:2:0";
nvidiaBusId = "PCI:2:0:0";
};
fonts.packages = with pkgs; [
apple-fonts.sf-pro
noto-fonts-cjk-sans
noto-fonts-color-emoji
(iosevka.override {
set = "cavalier";
privateBuildPlan = {
family = "Iosevka Cavalier";
spacing = "normal";
serifs = "sans";
noCvSs = false;
exportGlyphNames = true;
variants.inherits = "ss08";
variants.weights.Regular = {
shape = 400;
menu = 400;
css = 400;
};
variants.weights.Bold = {
shape = 700;
menu = 700;
css = 700;
};
variants.weights.Italic = {
angle = 9.4;
shape = "italic";
menu = "italic";
css = "italic";
};
variants.weights.Upright = {
angle = 0;
shape = "upright";
menu = "upright";
css = "upright";
};
};
})
];
environment.sessionVariables = {
LIBVA_DRIVER_NAME = "iHD";
VDPAU_DRIVER = "va_gl";
};
environment.systemPackages = with pkgs; [
i2c-tools
lm_sensors
];
networking.wireless.iwd.enable = true;
nix.settings = {
substituters = [ "https://cache.nixos-cuda.org" ];
trusted-public-keys = [ "cache.nixos-cuda.org:74DUi4Ye579gUqzH4ziL9IyiJBlDpMRn9MBN8oNan9M=" ];
};
programs._1password.enable = true;
services.hardware.openrgb = {
enable = true;
startupProfile = "off";
};
services.pipewire.enable = true;
services.udev.packages = [ pkgs.openrgb ];
services.xserver.videoDrivers = [
"modesetting"
"nvidia"
];
time.timeZone = "Europe/Paris";
users.users.pml = {
isNormalUser = true;
shell = pkgs.zsh;
extraGroups = [
"i2c"
"wheel"
];
};
# DO NOT EDIT
system.stateVersion = "25.05";
}