dotfiles/hosts/aspi/default.nix
2025-04-24 14:06:27 +02:00

136 lines
3.4 KiB
Nix

{
pkgs,
inputs,
...
}:
{
imports = [
# inputs.hardware.nixosModules.common-cpu-amd # TODO something useful for me?
./hardware-configuration.nix
../common/global
../common/users/julian
# ../common/optional/openssh.nix
../common/optional/pipewire.nix
../common/optional/remote-builder.nix
../common/optional/boot-efi.nix
../common/optional/pcmanfm.nix
# ../common/optional/i3.nix
# ../common/optional/gdm.nix
../common/optional/greetd.nix
../common/optional/gamemode.nix
# ../common/optional/redshift.nix
# ../common/optional/redshift.nix
../common/optional/virtualbox.nix
../common/optional/xdg-portal.nix # TODO: not needed?
../common/optional/polkit.nix # TODO: maybe not needed!
../common/optional/keyring.nix # TODO: maybe not needed!
];
# programs.hyprland.enable = true;
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
boot.blacklistedKernelModules = [ "pcspkr" ]; # Disables "beep"
networking.hostName = "aspi";
networking.networkmanager.enable = true;
# networking.networkmanager.dns = "systemd-resolved";
services.resolved.enable = true;
time.timeZone = "Europe/Berlin";
hardware.graphics.enable = true;
modules = {
syncthing = {
enable = true;
overrideSettings = false;
};
};
users.mutableUsers = false;
services.blueman.enable = true;
services.upower.enable = true;
programs.steam.enable = true;
programs.dconf.enable = true;
services.logind.lidSwitch = "lock";
services.logind.lidSwitchDocked = "lock";
programs.kdeconnect.enable = true;
# Enable touchpad support (enabled default in most desktopManager).
services.libinput.enable = true;
# This interface is started on boot / switch
networking.wg-quick.interfaces = {
julian = {
configFile = "/etc/wireguard/julian.conf";
};
};
# List services that you want to enable:
services.openssh.enable = false;
services.flatpak.enable = true;
security.krb5.enable = true;
security.krb5.settings = {
# domain_realm = {
# ".julian-mutter.de" = "julian-mutter.de";
# "julian-mutter.de" = "julian-mutter.de";
# };
libdefaults = {
default_realm = "julian-mutter.de";
# dns_lookup_realm = true;
# dns_lookup_kdc = true;
# ticket_lifetime = "24h";
# renew_lifetime = "7d";
};
realms = {
"julian-mutter.de" = {
kdc = [ "kerberos.julian-mutter.de" ];
admin_server = "kerberos-admin.julian-mutter.de";
default_domain = "julian-mutter.de";
};
};
};
virtualisation.docker.enable = true;
# hardware.nvidia-container-toolkit.enable = true;
# services.xserver.videoDrivers = [ "nvidia" ];
hardware.nvidia.open = false;
# Do not alway generate man-cache, making builds much faster
documentation.man.generateCaches = false;
# MDNS on local network
services.avahi = {
enable = true;
nssmdns4 = true;
};
# Packages needed as root
environment.systemPackages = with pkgs; [
vim
htop
mc
xorg.xhost
pavucontrol
frajul.pulseaudio-popup
gparted-xhost # needs to be installed as system package so it can be actually opened
xclip
brightnessctl
];
# ======================== DO NOT CHANGE THIS ========================
system.stateVersion = "24.05";
# ======================== DO NOT CHANGE THIS ========================
}