110 lines
1.9 KiB
Nix
Executable File
110 lines
1.9 KiB
Nix
Executable File
{ namespace
|
|
, pkgs
|
|
, lib
|
|
, ...
|
|
}:
|
|
let
|
|
inherit (lib.${namespace}) enabled;
|
|
|
|
llama-cpp = pkgs.reichard.llama-cpp;
|
|
stable-diffusion-cpp = pkgs.reichard.stable-diffusion-cpp.override {
|
|
cudaSupport = true;
|
|
};
|
|
in
|
|
{
|
|
system.stateVersion = "25.11";
|
|
time.timeZone = "America/New_York";
|
|
boot.supportedFilesystems = [ "nfs" ];
|
|
nixpkgs.config.allowUnfree = true;
|
|
hardware.nvidia-container-toolkit.enable = true;
|
|
|
|
security.pam.loginLimits = [
|
|
{
|
|
domain = "*";
|
|
type = "soft";
|
|
item = "memlock";
|
|
value = "unlimited";
|
|
}
|
|
{
|
|
domain = "*";
|
|
type = "hard";
|
|
item = "memlock";
|
|
value = "unlimited";
|
|
}
|
|
];
|
|
|
|
fileSystems."/mnt/ssd" = {
|
|
device = "/dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S6PTNZ0R620739L-part1";
|
|
fsType = "exfat";
|
|
options = [
|
|
"uid=1000"
|
|
"gid=100"
|
|
"umask=0022"
|
|
];
|
|
};
|
|
|
|
networking.firewall = {
|
|
allowedTCPPorts = [ 8081 ];
|
|
};
|
|
|
|
# System Config
|
|
reichard = {
|
|
nix = enabled;
|
|
|
|
system = {
|
|
boot = {
|
|
enable = true;
|
|
silentBoot = true;
|
|
enableSystemd = true;
|
|
enableGrub = false;
|
|
};
|
|
disk = {
|
|
enable = true;
|
|
diskPath = "/dev/sdc";
|
|
};
|
|
networking = {
|
|
enable = true;
|
|
useStatic = {
|
|
interface = "enp3s0";
|
|
address = "10.0.20.100";
|
|
defaultGateway = "10.0.20.254";
|
|
nameservers = [ "10.0.20.20" ];
|
|
};
|
|
};
|
|
};
|
|
|
|
hardware = {
|
|
opengl = {
|
|
enable = true;
|
|
enableNvidia = true;
|
|
};
|
|
};
|
|
|
|
services = {
|
|
openssh = enabled;
|
|
llama-swap = enabled;
|
|
mosh = enabled;
|
|
};
|
|
|
|
virtualisation = {
|
|
podman = enabled;
|
|
};
|
|
|
|
security = {
|
|
sops = enabled;
|
|
};
|
|
};
|
|
|
|
# System Packages
|
|
environment.systemPackages = with pkgs; [
|
|
btop
|
|
git
|
|
tmux
|
|
vim
|
|
|
|
# Local Packages
|
|
llama-cpp
|
|
stable-diffusion-cpp
|
|
];
|
|
}
|