nixos/devices/pc/default.nix

148 lines
4.9 KiB
Nix
Raw Normal View History

2024-01-16 22:41:03 +08:00
inputs:
{
config =
{
nixos =
{
system =
{
fileSystems =
{
mount =
{
2024-03-23 14:05:15 +08:00
vfat."/dev/disk/by-uuid/E58F-416A" = "/boot/efi";
2024-01-16 22:41:03 +08:00
btrfs =
{
2024-03-23 14:05:15 +08:00
"/dev/disk/by-uuid/066be4fd-8617-4fe1-9654-c133c2996d33"."/" = "/boot";
2024-01-16 22:41:03 +08:00
"/dev/mapper/root" = { "/nix" = "/nix"; "/nix/rootfs/current" = "/"; };
};
};
decrypt.auto =
{
2024-03-23 14:05:15 +08:00
"/dev/disk/by-uuid/4c73288c-bcd8-4a7e-b683-693f9eed2d81" = { mapper = "root"; ssd = true; };
2024-01-16 22:41:03 +08:00
"/dev/disk/by-uuid/4be45329-a054-4c20-8965-8c5b7ee6b35d" =
{ mapper = "swap"; ssd = true; before = [ "root" ]; };
};
swap = [ "/dev/mapper/swap" ];
resume = "/dev/mapper/swap";
2024-03-08 18:43:42 +08:00
rollingRootfs = {};
2024-01-16 22:41:03 +08:00
};
grub =
{
# TODO: install windows
# windowsEntries = { "7317-1DB6" = "Windows"; "7321-FA9C" = "Windows for malware"; };
installDevice = "efi";
};
nix =
{
marches =
[
"znver2" "znver3" "znver4"
# FXSR SAHF XSAVE
"sandybridge"
# FXSR PREFETCHW RDRND SAHF
"silvermont"
# FXSR HLE LZCNT PREFETCHW RDRND SAHF XSAVE
"broadwell"
# FXSR HLE LZCNT PREFETCHW RDRND SAHF SGX XSAVE
"skylake"
# AVX-VNNI CLDEMOTE GFNI-SSE HRESET KL LZCNT MOVDIR64B MOVDIRI PCONFIG PREFETCHW PTWRITE RDRND
# SERIALIZE SGX WAITPKG WIDEKL XSAVE XSAVEOPT
"alderlake"
];
2024-03-11 16:19:37 +08:00
remote.master = { enable = true; hosts = [ "xmupc1" "xmupc2" ]; };
2024-05-24 11:41:09 +08:00
githubToken.enable = true;
2024-01-16 22:41:03 +08:00
};
nixpkgs =
{ march = "znver4"; cuda = { enable = true; capabilities = [ "8.9" ]; forwardCompat = false; }; };
2024-04-20 10:55:18 +08:00
kernel.patches = [ "cjktty" "hibernate-progress" ];
2024-01-16 22:41:03 +08:00
networking.hostname = "pc";
sysctl.laptop-mode = 5;
gui.enable = true;
2024-01-16 22:41:03 +08:00
};
2024-05-25 18:01:47 +08:00
hardware = { cpus = [ "amd" ]; gpu = { type = "nvidia"; dynamicBoost = true; }; legion = {}; };
2024-01-16 22:41:03 +08:00
packages.packageSet = "workstation";
virtualization =
{
2024-01-17 12:16:03 +08:00
waydroid.enable = true;
2024-01-16 22:41:03 +08:00
docker.enable = true;
kvmHost = { enable = true; gui = true; autoSuspend = [ "win10" "hardconnect" ]; };
nspawn = [ "arch" "ubuntu-22.04" "fedora" ];
};
services =
{
2024-03-25 12:57:25 +08:00
snapper.enable = true;
2024-01-16 22:41:03 +08:00
samba =
{
enable = true;
private = true;
hostsAllowed = "192.168. 127.";
shares =
{
media.path = "/run/media/chn";
home.path = "/home/chn";
mnt.path = "/mnt";
share.path = "/home/chn/share";
};
};
2024-03-31 14:17:00 +08:00
sshd = {};
xray.client =
{
dnsmasq.hosts = builtins.listToAttrs
(
(builtins.map
(name: { inherit name; value = "74.211.99.69"; })
[ "mirism.one" "beta.mirism.one" "ng01.mirism.one" "initrd.vps6.chn.moe" ])
++ (builtins.map
(name: { inherit name; value = "0.0.0.0"; })
[
"log-upload.mihoyo.com" "uspider.yuanshen.com" "ys-log-upload.mihoyo.com"
"dispatchcnglobal.yuanshen.com"
])
);
};
2024-01-16 22:41:03 +08:00
firewall.trustedInterfaces = [ "virbr0" "waydroid0" ];
2024-03-24 13:55:06 +08:00
acme.cert."debug.mirism.one" = {};
2024-01-16 22:41:03 +08:00
frpClient =
{
enable = true;
serverName = "frp.chn.moe";
user = "pc";
stcpVisitor."yy.vnc".localPort = 6187;
};
nix-serve = { enable = true; hostname = "nix-store.chn.moe"; };
smartd.enable = true;
misskey.instances.misskey.hostname = "xn--qbtm095lrg0bfka60z.chn.moe";
2024-03-24 18:19:58 +08:00
beesd.instances.root = { device = "/"; hashTableSizeMB = 4096; threads = 4; };
2024-01-16 22:41:03 +08:00
wireguard =
{
enable = true;
peers = [ "vps6" ];
publicKey = "l1gFSDCeBxyf/BipXNvoEvVvLqPgdil84nmr5q6+EEw=";
wireguardIp = "192.168.83.3";
};
2024-05-25 18:01:47 +08:00
gamemode = { enable = true; drmDevice = 0; };
2024-03-12 23:57:59 +08:00
slurm = { enable = true; cpu = { cores = 16; threads = 2; }; memoryMB = 90112; gpus."4060" = 1; };
2024-05-22 10:44:41 +08:00
xrdp = { enable = true; hostname = [ "pc.chn.moe" ]; };
2024-01-16 22:41:03 +08:00
};
bugs = [ "xmunet" "backlight" "amdpstate" "hibernate-mt7921e" "suspend-hibernate-no-platform" ];
2024-01-16 22:41:03 +08:00
};
2024-05-26 00:59:43 +08:00
system.nixos.tags = [ "next" ];
2024-03-11 16:44:25 +08:00
networking.extraHosts = "74.211.99.69 mirism.one beta.mirism.one ng01.mirism.one";
2024-03-06 20:09:18 +08:00
services.colord.enable = true;
2024-03-07 12:54:16 +08:00
specialisation =
{
2024-05-25 18:01:47 +08:00
hybrid.configuration =
2024-03-07 12:54:16 +08:00
{
nixos =
{
2024-05-25 18:01:47 +08:00
hardware.gpu =
2024-05-26 00:59:43 +08:00
{ type = inputs.lib.mkForce "amd+nvidia"; prime.busId = { amd = "6:0:0"; nvidia = "1:0:0"; }; };
2024-05-25 18:01:47 +08:00
services.gamemode.drmDevice = inputs.lib.mkForce 1;
2024-03-07 12:54:16 +08:00
};
2024-05-25 18:01:47 +08:00
system.nixos.tags = [ "hybrid" ];
2024-03-07 12:54:16 +08:00
};
};
2024-01-16 22:41:03 +08:00
};
}