hosts/artemis: add hardware config from Jovian-NixOS
All checks were successful
Check flake / build-amd64-linux (push) Successful in 1m24s

This commit is contained in:
2025-07-26 16:29:26 +01:00
parent ec7985bdee
commit 29a269dcfb
2 changed files with 78 additions and 11 deletions

View File

@@ -6,7 +6,9 @@
}:
let
inherit (lib) mkForce;
inherit (lib)
mkForce
;
in
{
imports = [
@@ -45,6 +47,16 @@ in
};
};
services.earlyoom = {
enable = true;
extraArgs = [
"-M"
"409600,307200"
"-S"
"409600,307200"
];
};
services.sunshine = {
enable = false;
package = pkgs.unstable.sunshine;

View File

@@ -6,23 +6,59 @@
...
}:
let
inherit (lib)
mkDefault
mkOverride
;
in
{
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
# Inspired by: https://github.com/Jovian-Experiments/Jovian-NixOS
boot = {
initrd.availableKernelModules = [
"xhci_pci"
"ehci_pci"
"nvme"
"usbhid"
"usb_storage"
"sd_mod"
initrd = {
availableKernelModules = [
"xhci_pci"
"ehci_pci"
"nvme"
"usbhid"
"usb_storage"
"sd_mod"
];
kernelModules = [
"amdgpu"
];
supportedFilesystems = [ "zfs" ];
};
kernel.sysctl = {
"kernel.sched_cfs_bandwidth_slice_u" = mkDefault 3000;
"kernel.sched_latency_ns" = mkDefault 3000000;
"kernel.sched_min_granularity_ns" = mkDefault 300000;
"kernel.sched_wakeup_granularity_ns" = mkDefault 500000;
"kernel.sched_migration_cost_ns" = mkDefault 50000;
"kernel.sched_nr_migrate" = mkDefault 128;
"kernel.split_lock_mitigate" = mkDefault 0;
"net.ipv4.tcp_mtu_probing" = true;
"net.ipv4.tcp_fin_timeout" = mkDefault 5;
"vm.max_map_count" = mkOverride 999 2147483642;
};
kernelModules = [
"hid_nintendo"
"hid_playstation"
"kvm-amd"
];
kernelParams = [
"log_buf_len=4M"
"amdgpu.lockup_timeout=5000,10000,10000,5000"
"ttm.pages_min=2097152"
"amdgpu.sched_hw_submission=4"
"audit=0"
];
initrd.kernelModules = [ "amdgpu" ];
initrd.supportedFilesystems = [ "zfs" ];
kernelModules = [ "kvm-amd" ];
kernelPackages = pkgs.linuxPackages_6_12;
supportedFilesystems = [ "ntfs" ];
};
@@ -31,6 +67,23 @@
bluetooth = {
enable = true;
powerOnBoot = true;
settings = {
General = {
MultiProfile = "multiple";
FastConnectable = true;
# enable experimental LL privacy, experimental offload codecs
KernelExperimental = "15c0a148-c273-11ea-b3de-0242ac130004";
};
LE = {
ScanIntervalSuspend = 2240;
ScanWindowSuspend = 224;
};
};
};
graphics = {
enable32Bit = true;
extraPackages = [ pkgs.gamescope-wsi ];
extraPackages32 = [ pkgs.pkgsi686Linux.gamescope-wsi ];
};
cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
enableRedistributableFirmware = true;
@@ -38,6 +91,8 @@
powerManagement.cpuFreqGovernor = "schedutil";
services.pulseaudio.enable = false;
services.xserver.videoDrivers = [ "amdgpu" ];
networking.useDHCP = lib.mkDefault true;