nixcfg/hosts/mauville/default.nix
Aly Raffauf b3e3fda67e
Some checks are pending
git-mirror / gitlab-sync (push) Waiting to run
nix-build / adjustor-build (push) Waiting to run
nix-build / clean-install-build (push) Waiting to run
nix-build / hhd-ui-build (push) Waiting to run
nix-build / rofi-bluetooth-build (push) Waiting to run
nix-build / fallarbor-build (push) Waiting to run
nix-build / lavaridge-build (push) Waiting to run
nix-build / mauville-build (push) Waiting to run
nix-build / pacifidlog-build (push) Waiting to run
nix-build / rustboro-build (push) Waiting to run
nix-build / slateport-build (push) Waiting to run
nix-check / fmt-check (push) Waiting to run
nix-check / eval-check (push) Waiting to run
hwModules: integrate legion go improvements (#138)
* hwModuled/amd/cpu: switch to zenpower

* hwModules/framework/13/amd-7000: improve format

* hwModules: add common and common-gaming modules

* hwModules/legion/go: killuserProcesses on logout
2024-10-20 17:29:15 -04:00

145 lines
3.4 KiB
Nix

# Custom desktop with AMD Ryzen 5 2600, 16GB RAM, AMD Rx 6700, and 1TB SSD + 2TB HDD.
{
config,
lib,
self,
...
}: let
archiveDirectory = "/mnt/Archive";
mediaDirectory = "/mnt/Media";
in {
imports = [
./disko.nix
./home.nix
./raffauflabs.nix
./secrets.nix
./stylix.nix
self.nixosModules.common-auto-upgrade
self.nixosModules.common-base
self.nixosModules.common-locale
self.nixosModules.common-nix
self.nixosModules.common-pkgs
self.nixosModules.common-tailscale
self.nixosModules.common-wifi-profiles
self.nixosModules.hw-common
self.nixosModules.hw-common-amd-cpu
self.nixosModules.hw-common-amd-gpu
self.nixosModules.hw-common-bluetooth
self.nixosModules.hw-common-ssd
self.nixosModules.hw-common-gaming
];
boot = {
initrd = {
availableKernelModules = ["xhci_pci" "ahci" "nvme" "usbhid" "sd_mod" "r8169"];
systemd.enable = true;
};
lanzaboote = {
enable = true;
pkiBundle = "/etc/secureboot";
};
loader = {
efi.canTouchEfiVariables = true;
systemd-boot.enable = lib.mkForce false;
};
};
networking.hostName = "mauville";
services = {
samba = {
enable = true;
openFirewall = true;
settings = {
global = {
security = "user";
"read raw" = "Yes";
"write raw" = "Yes";
"socket options" = "TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=131072 SO_SNDBUF=131072";
"min receivefile size" = 16384;
"use sendfile" = true;
"aio read size" = 16384;
"aio write size" = 16384;
};
Media = {
"create mask" = "0755";
"directory mask" = "0755";
"force group" = "users";
"force user" = "aly";
"guest ok" = "yes";
"read only" = "no";
browseable = "yes";
comment = "Media @ ${config.networking.hostName}";
path = mediaDirectory;
};
Archive = {
"create mask" = "0755";
"directory mask" = "0755";
"force group" = "users";
"force user" = "aly";
"guest ok" = "yes";
"read only" = "no";
browseable = "yes";
comment = "Archive @ ${config.networking.hostName}";
path = archiveDirectory;
};
};
};
samba-wsdd = {
enable = true;
openFirewall = true;
};
};
environment.variables.GDK_SCALE = "1.25";
system.stateVersion = "24.05";
zramSwap.memoryPercent = 100;
ar = {
apps = {
firefox.enable = true;
nicotine-plus.enable = true;
podman.enable = true;
steam.enable = true;
virt-manager.enable = true;
};
desktop = {
greetd = {
enable = true;
autologin = "aly";
session = lib.getExe config.programs.hyprland.package;
};
steam.enable = true;
hyprland.enable = true;
sway.enable = true;
};
users = {
aly = {
enable = true;
password = "$y$j9T$SHPShqI2IpRE101Ey2ry/0$0mhW1f9LbVY02ifhJlP9XVImge9HOpf23s9i1JFLIt9";
syncthing = {
enable = true;
certFile = config.age.secrets.syncthingCert.path;
keyFile = config.age.secrets.syncthingKey.path;
musicPath = "${mediaDirectory}/Music";
};
};
dustin = {
enable = true;
password = "$y$j9T$3mMCBnUQ.xjuPIbSof7w0.$fPtRGblPRSwRLj7TFqk1nzuNQk2oVlgvb/bE47sghl.";
};
};
};
}