152 lines
2.5 KiB
Nix
152 lines
2.5 KiB
Nix
{
|
|
inputs,
|
|
config,
|
|
pkgs,
|
|
lib,
|
|
...
|
|
}:
|
|
|
|
{
|
|
imports = [
|
|
../global.nix
|
|
./hardware-configuration.nix
|
|
./secrets.nix
|
|
../../modules/games.nix
|
|
../../services/forty_two.nix
|
|
../../services/discord.nix
|
|
../../services/server.nix
|
|
../../services/web.nix
|
|
../../services/self_host.nix
|
|
];
|
|
|
|
networking = {
|
|
hostName = "nixos-server";
|
|
firewall.enable = false;
|
|
networkmanager.enable = true;
|
|
wireless.enable = false;
|
|
interfaces.enp0s31f6.ipv4.addresses = [
|
|
{
|
|
address = "192.168.1.1";
|
|
prefixLength = 24;
|
|
}
|
|
];
|
|
defaultGateway = "192.168.1.254";
|
|
nameservers = [
|
|
"1.1.1.1"
|
|
"1.0.0.1"
|
|
"8.8.8.8"
|
|
"8.8.4.4"
|
|
];
|
|
};
|
|
|
|
games = {
|
|
lutris = false;
|
|
steam = {
|
|
enable = false;
|
|
bp = false;
|
|
};
|
|
};
|
|
|
|
service = {
|
|
selfhost = {
|
|
htop = true;
|
|
ollama = false;
|
|
mail = true;
|
|
monitor = true;
|
|
nextcloud = true;
|
|
jellyfin = true;
|
|
sso = true;
|
|
};
|
|
forty_two.irc = true;
|
|
web.portefolio = true;
|
|
server = {
|
|
minecraft = false;
|
|
teamspeak = true;
|
|
};
|
|
bot_discord = {
|
|
master = true;
|
|
bde = false;
|
|
tut = false;
|
|
marty = false;
|
|
ada = false;
|
|
music = false;
|
|
tempvoc = true;
|
|
ticket = true;
|
|
};
|
|
};
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
age
|
|
bat
|
|
cairo
|
|
dconf
|
|
fastfetch
|
|
git
|
|
home-manager
|
|
lego
|
|
libjpeg
|
|
libpng
|
|
libuuid
|
|
linux-manual
|
|
man
|
|
man-pages
|
|
man-pages-posix
|
|
networkmanager
|
|
openssl
|
|
pkg-config
|
|
postgresql
|
|
protonup-ng
|
|
python3
|
|
python3Packages.pip
|
|
qFlipper
|
|
ripgrep
|
|
swaylock
|
|
swaylock-fancy
|
|
tmux
|
|
unzip
|
|
vim
|
|
wget
|
|
wl-clipboard
|
|
xclip
|
|
xdg-desktop-portal-hyprland
|
|
xsel
|
|
yarn
|
|
zsh
|
|
] ++ [
|
|
inputs.agenix.packages.${pkgs.system}.agenix
|
|
];
|
|
|
|
# Bootloader.
|
|
boot.loader = {
|
|
systemd-boot.enable = true;
|
|
efi.canTouchEfiVariables = true;
|
|
};
|
|
|
|
services = {
|
|
seatd.enable = true;
|
|
xserver = {
|
|
enable = true;
|
|
videoDrivers = [
|
|
"nvidia"
|
|
];
|
|
};
|
|
dbus.enable = true;
|
|
openssh = {
|
|
enable = true;
|
|
ports = [
|
|
42131
|
|
];
|
|
};
|
|
udev.extraRules = ''
|
|
SUBSYSTEM=="usb", ATTR{idVendor}=="0483", ATTR{idProduct}=="5740", MODE="0666"
|
|
'';
|
|
redis.servers."" = {
|
|
enable = true;
|
|
};
|
|
postgresql = {
|
|
enable = true;
|
|
};
|
|
};
|
|
virtualisation.docker.enable = true;
|
|
system.stateVersion = "24.05";
|
|
}
|