dots/nix/modules/system.nix

81 lines
2.6 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.

{
lib,
pkgs,
...
}: {
# ╭──────────────────────────────────────────────────────────╮
# │ System Config │
# ╰──────────────────────────────────────────────────────────╯
# Allow unfree packages
nixpkgs.config.allowUnfree = lib.mkDefault true;
environment.systemPackages = with pkgs; [
git
curl
neovim
];
# Define a user account. Don't forget to set a password with passwd.
users.users = lib.mkDefault {
aleidk = {
isNormalUser = true;
description = "aleidk";
extraGroups = ["networkmanager" "wheel"];
packages = with pkgs; [];
};
};
# Limit the number of generations to keep
boot.loader.systemd-boot.configurationLimit = lib.mkDefault 10;
# Perform garbage collection weekly to maintain low disk usage
nix.gc = lib.mkDefault {
automatic = true;
dates = "weekly";
options = "--delete-older-than 4w";
};
nix.settings = {
experimental-features = ["nix-command" "flakes"];
# Optimize storage
# You can also manually optimize the store via:
# nix-store --optimise
# Refer to the following link for more details:
# https://nixos.org/manual/nix/stable/command-ref/conf-file.html#conf-auto-optimise-store
auto-optimise-store = lib.mkDefault true;
};
# ╭──────────────────────────────────────────────────────────╮
# │ Locale Settings │
# ╰──────────────────────────────────────────────────────────╯
# Set your time zone.
time.timeZone = "America/Santiago";
# Select internationalisation properties.
i18n = {
defaultLocale = "en_US.UTF-8";
extraLocaleSettings = {
LC_ADDRESS = "es_CL.UTF-8";
LC_IDENTIFICATION = "es_CL.UTF-8";
LC_MEASUREMENT = "es_CL.UTF-8";
LC_MONETARY = "es_CL.UTF-8";
LC_NAME = "es_CL.UTF-8";
LC_NUMERIC = "es_CL.UTF-8";
LC_PAPER = "es_CL.UTF-8";
LC_TELEPHONE = "es_CL.UTF-8";
LC_TIME = "es_CL.UTF-8";
};
};
# Configure keymap in X11
services.xserver.xkb = {
layout = "latam";
variant = "";
};
# Configure console keymap
console.keyMap = "la-latin1";
}