Files
nix-config/configuration.nix
chexit 6775a88ca8 feat(yami): add dataDir option for storing stack state on separate disk
- Bind-mounts /var/lib/{gitea,postgresql} under configurable dataDir
- gitea-runner intentionally excluded: its DynamicUser + StateDirectory
  conflicts with pre-existing mount points ("File exists")
- Runner token moved to /var/lib/gitea-runner-secret/ to avoid the same
  symlink/StateDirectory conflict inside /var/lib/gitea-runner
- Enable the stack on this host with dataDir = /mnt/ssd_110/yami
2026-04-19 18:54:28 +03:00

109 lines
2.6 KiB
Nix

{ config, pkgs, ... }:
{
imports = [
./hardware-configuration.nix
./packages.nix
./desktop.nix
./nvidia.nix
./shell.nix
./yami-dev-stack.nix
];
nix = {
settings.experimental-features = [ "nix-command" "flakes" ];
gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than 14d";
};
optimise.automatic = true;
};
boot = {
kernelPackages = pkgs.linuxPackages_zen;
loader = {
efi.canTouchEfiVariables = true;
systemd-boot.enable = false;
grub = {
enable = true;
device = "nodev";
efiSupport = true;
useOSProber = true;
};
};
};
fileSystems = {
"/mnt/storage" = {
device = "/dev/disk/by-uuid/C4E29B73E29B6906";
fsType = "ntfs-3g";
options = [ "nosuid" "nodev" "nofail" "uid=1000" ];
};
"/mnt/ssd_110" = {
device = "/dev/disk/by-uuid/14ca9da9-cd66-431c-be96-c0e05066f3a0";
fsType = "ext4";
options = [ "nosuid" "nodev" "nofail" ];
};
"/mnt/wd_blue" = {
device = "/dev/disk/by-uuid/91feabaf-ea5f-490e-9925-56f7c05e7110";
fsType = "ext4";
options = [ "nosuid" "nodev" "nofail" ];
};
};
networking = {
hostName = "chexit";
networkmanager.enable = true;
};
time.timeZone = "Europe/Moscow";
i18n = {
defaultLocale = "en_US.UTF-8";
extraLocaleSettings = {
LC_ADDRESS = "ru_RU.UTF-8";
LC_IDENTIFICATION = "ru_RU.UTF-8";
LC_MEASUREMENT = "ru_RU.UTF-8";
LC_MONETARY = "ru_RU.UTF-8";
LC_NAME = "ru_RU.UTF-8";
LC_NUMERIC = "ru_RU.UTF-8";
LC_PAPER = "ru_RU.UTF-8";
LC_TELEPHONE = "ru_RU.UTF-8";
LC_TIME = "ru_RU.UTF-8";
};
};
users.users.chexit = {
isNormalUser = true;
description = "chexit";
shell = pkgs.zsh;
extraGroups = [ "networkmanager" "wheel" "docker" ];
};
programs.throne = {
enable = true;
tunMode.enable = true;
};
programs.steam = {
enable = true;
remotePlay.openFirewall = true;
dedicatedServer.openFirewall = true;
};
programs.gamemode.enable = true;
services.tailscale.enable = true;
# Docker is now managed by yami-dev-stack.nix when that module is enabled.
# services.yami-dev-stack = { enable = true; user = "chexit"; };
services.yami-dev-stack = {
enable = true;
user = "chexit";
dataDir = "/mnt/ssd_110/yami";
};
system.stateVersion = "25.11";
}