204 lines
4.3 KiB
Nix
204 lines
4.3 KiB
Nix
{ ... }:
|
|
{
|
|
imports = [
|
|
./hardware-configuration.nix
|
|
../../base.nix
|
|
];
|
|
my = {
|
|
emacs.enable = true;
|
|
apps.dictionaries.enable = true;
|
|
services = {
|
|
network.enable = true;
|
|
wireguard.enable = true;
|
|
};
|
|
enableProxy = true;
|
|
shell = {
|
|
tools.enable = true;
|
|
multimedia.enable = true;
|
|
};
|
|
dev = {
|
|
nix.enable = true;
|
|
python.enable = true;
|
|
sh.enable = true;
|
|
};
|
|
units = {
|
|
download.enable = true;
|
|
downloadManga.enable = false;
|
|
stream-dl.enable = true;
|
|
};
|
|
scripts = {
|
|
run.enable = true;
|
|
split-dir.enable = true;
|
|
download.enable = true;
|
|
ffmpreg.enable = true;
|
|
ffmpeg4discord.enable = true;
|
|
manage-library.enable = false;
|
|
pika-list.enable = true;
|
|
find-dup-episodes.enable = true;
|
|
update-dns.enable = true;
|
|
};
|
|
servers = {
|
|
jellyfin = {
|
|
enable = false;
|
|
enableCron = false;
|
|
enableProxy = true;
|
|
hostName = "server";
|
|
};
|
|
nextcloud = {
|
|
enable = true;
|
|
enableCron = true;
|
|
enableProxy = true;
|
|
};
|
|
adguardhome.enable = false;
|
|
audiobookshelf = {
|
|
enable = true;
|
|
enableProxy = true;
|
|
};
|
|
bazarr = {
|
|
enable = false;
|
|
enableProxy = true;
|
|
hostName = "server";
|
|
};
|
|
collabora = {
|
|
enable = true;
|
|
enableProxy = true;
|
|
};
|
|
flame = {
|
|
enable = false;
|
|
enableProxy = false;
|
|
};
|
|
flameSecret = {
|
|
enable = false;
|
|
enableProxy = false;
|
|
};
|
|
go-vod.enable = false;
|
|
homepage = {
|
|
enable = true;
|
|
enableProxy = true;
|
|
};
|
|
kavita = {
|
|
enable = false;
|
|
enableProxy = true;
|
|
hostName = "server";
|
|
};
|
|
lidarr = {
|
|
enable = false;
|
|
enableProxy = true;
|
|
hostName = "server";
|
|
};
|
|
maloja = {
|
|
enable = true;
|
|
enableProxy = true;
|
|
};
|
|
mealie = {
|
|
enable = true;
|
|
enableProxy = true;
|
|
};
|
|
metube = {
|
|
enable = false;
|
|
enableProxy = false;
|
|
};
|
|
microbin = {
|
|
enable = true;
|
|
enableProxy = true;
|
|
};
|
|
multi-scrobbler = {
|
|
enable = true;
|
|
enableProxy = true;
|
|
};
|
|
paperless.enable = true;
|
|
postgres.enable = true;
|
|
prowlarr = {
|
|
enable = false;
|
|
enableProxy = true;
|
|
hostName = "server";
|
|
};
|
|
qbittorrent.enable = true;
|
|
unpackerr.enable = false;
|
|
radarr = {
|
|
enable = false;
|
|
enableProxy = true;
|
|
hostName = "server";
|
|
};
|
|
ryot = {
|
|
enable = true;
|
|
enableProxy = true;
|
|
};
|
|
shiori = {
|
|
enable = true;
|
|
enableProxy = true;
|
|
};
|
|
sonarr = {
|
|
enable = false;
|
|
enableProxy = true;
|
|
hostName = "server";
|
|
};
|
|
vaultwarden = {
|
|
enable = true;
|
|
enableProxy = true;
|
|
};
|
|
firefly-iii.enable = false;
|
|
};
|
|
};
|
|
networking = {
|
|
hostName = "miniserver";
|
|
firewall = {
|
|
allowedTCPPorts = [ 2049 ];
|
|
allowedUDPPorts = [ 2049 ];
|
|
};
|
|
};
|
|
nix =
|
|
let
|
|
featuresList = [
|
|
"nixos-test"
|
|
"benchmark"
|
|
"big-parallel"
|
|
"kvm"
|
|
"gccarch-znver3"
|
|
"gccarch-skylake"
|
|
"gccarch-alderlake"
|
|
];
|
|
in
|
|
{
|
|
settings.cores = 3;
|
|
buildMachines = [
|
|
{
|
|
hostName = "workstation";
|
|
system = "x86_64-linux";
|
|
sshUser = "nixremote";
|
|
maxJobs = 14;
|
|
speedFactor = 1;
|
|
supportedFeatures = featuresList;
|
|
}
|
|
];
|
|
};
|
|
nixpkgs = {
|
|
config.permittedInsecurePackages = [ "openssl-1.1.1w" ];
|
|
hostPlatform = "x86_64-linux";
|
|
};
|
|
users = {
|
|
groups.nixremote.gid = 555;
|
|
users.nixremote = {
|
|
isNormalUser = true;
|
|
createHome = true;
|
|
group = "nixremote";
|
|
home = "/var/nixremote/";
|
|
openssh.authorizedKeys.keyFiles = [ ../../secrets/ssh/ed25519_nixworkstation.pub ];
|
|
};
|
|
};
|
|
services = {
|
|
btrfs.autoScrub = {
|
|
enable = true;
|
|
fileSystems = [ "/" ];
|
|
};
|
|
minidlna = {
|
|
enable = false;
|
|
openFirewall = true;
|
|
settings = {
|
|
inotify = "yes";
|
|
media_dir = [ "/srv/pool/" ];
|
|
};
|
|
};
|
|
};
|
|
}
|