nix/os-mods/base/default.nix

81 lines
1.8 KiB
Nix

{
config,
pkgs,
...
}: {
nix = {
gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than 2w";
};
settings.auto-optimise-store = true;
package = pkgs.nixFlakes;
extraOptions = ''
experimental-features = nix-command flakes
'';
};
services.fwupd.enable = true;
# locale
time.timeZone = "Europe/Berlin";
i18n = {
defaultLocale = "en_US.UTF-8";
extraLocaleSettings = {
LANG = "en_US.UTF-8";
LC_ADDRESS = "de_DE.UTF-8";
LC_COLLATE = "de_DE.UTF-8";
LC_CTYPE = "en_US.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MESSAGES = "en_US.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
};
####################
security.rtkit.enable = true;
security.sudo.wheelNeedsPassword = false;
environment.sessionVariables = {
EDITOR = "nvim";
};
environment.systemPackages = with pkgs; [
neovim # editor
veracrypt
vim # fallback ed
];
# nix convenience
services.envfs.enable = true;
programs.nix-ld.dev.enable = true;
programs.command-not-found.enable = false;
programs.nix-index-database.comma.enable = true;
###################
programs.fish.enable = true;
programs.gnupg.agent = {
enable = true;
enableSSHSupport = true;
};
services.openssh.enable = true;
# For SMB ####
services.gvfs.enable = true;
services.avahi.enable = true;
services.avahi.nssmdns = true;
# netbios dns
networking.firewall.extraCommands = ''iptables -t raw -A OUTPUT -p udp -m udp --dport 137 -j CT --helper netbios-ns'';
##############
}