hosts/hosts/Ernesto.nix
2025-07-17 15:10:05 +02:00

203 lines
4.7 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{ config, lib, pkgs, ... }:
{
imports = [
./kde.nix
./development.nix
./printer.nix
# ./clamav.nix
];
networking.hostName = "Ernesto";
boot.loader.systemd-boot = {
enable = true;
windows = {
"windows" = {
title = "Windows 10";
efiDeviceHandle = "HD1d65535a3";
sortKey = "a_windows";
};
};
edk2-uefi-shell = {
enable = true;
sortKey = "z_edk2";
};
};
boot.loader.efi.canTouchEfiVariables = true;
hardware.bluetooth = {
enable = true;
settings = {
General = {
Enable = "Source,Sink,Media,Socket";
# Bluetooth headsets dont appear in PulseAudio without this,
# might be a pecularity of the dongle
ControllerMode = "bredr";
};
};
};
hardware.graphics.enable = true;
services.xserver.videoDrivers = [ "nvidia" ];
hardware.nvidia = {
powerManagement.enable = true;
open = false;
};
console.keyMap = "us";
services.xserver.xkb.layout = "us-fruchti";
i18n.defaultLocale = "de_DE.UTF-8";
networking.networkmanager.enable = true;
services.avahi.enable = true;
networking.firewall.allowedTCPPorts = [ 22 ];
programs.gnupg.agent = {
enable = true;
# enableSSHSupport = true;
};
environment.systemPackages = with pkgs; [
ntfsprogs
direnv nix-direnv
tmux zellij
helix
picocom
wget
texlive.combined.scheme-full
xsel
rsync
ranger nnn w3m
hexyl
git
gnupg
ripgrep
fd
ncdu
rink
htop
ncmpcpp
usbutils # lsusb etc.
dig
nmap
file
binwalk
ffmpeg
shellcheck
wine
wineWowPackages.stable
winePackages.fonts
pavucontrol
xsensors
kitty
kitty-themes
firefox
ungoogled-chromium
thunderbird
zathura
inkscape
vlc mpv a52dec
gthumb
gimp
darktable
tenacity
openscad
freecad
solvespace
dune3d
vscodium
marktext
tor-browser-bundle-bin
libreoffice-fresh
tdesktop
horizon-eda
kicad-small
pulseview
nextcloud-client
];
services.burp.client = {
enable = true;
server = "rupert";
includes = [
"/etc/nixos"
"/home"
"/data"
"/windows/Users"
"/shared"
];
passwordFile = "/secrets/burp_client_password";
sslKeyPasswordFile = "/secrets/burp_ssl_key_password";
encryptionPasswordFile = "/secrets/burp_encryption_password";
extraConfig = ''
working_dir_recovery_method = resume
max_resume_attempts = 5
exclude_regex = /home/.*/\.cache
exclude_regex = /home/.*/\.mozilla
exclude_regex = /home/.*/\.local
exclude_regex = /home/.*/\.cargo
exclude_regex = /home/.*/\.texlive.*
exclude_regex = /home/.*/\.vscode.*
exclude_regex = sync_[0-9a-f]+\.db
exclude_regex = \.fuse_hidden.*
'';
};
programs.steam = {
enable = true;
remotePlay.openFirewall = true;
dedicatedServer.openFirewall = true;
localNetworkGameTransfers.openFirewall = true;
};
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
"steam"
"steam-original"
"steam-runtime"
"steam-run"
"steam-unwrapped"
"nvidia-x11"
"nvidia-settings"
];
fileSystems = {
"/windows" = {
device = "/dev/disk/by-uuid/7692527592523A37";
fsType = "ntfs";
options = [
"defaults"
"gid=1010"
"umask=002"
];
};
"/data" = {
device = "/dev/disk/by-uuid/6b063b1a-8f80-430e-8ecb-83f1d4087e4c";
fsType = "btrfs";
};
"/shared" = {
device = "/dev/disk/by-uuid/15D9B1070A5041E1";
fsType = "ntfs";
options = [
"defaults"
"gid=1010"
"umask=002"
];
};
};
users.extraGroups = {
windows = {
gid = 1010;
members = [ "fruchti" ];
};
};
services.earlyoom = {
enable = true;
enableNotifications = true;
};
}