nixos/hosts/common.nix

94 lines
2.4 KiB
Nix
Raw Normal View History

{
pkgs,
shell,
...
}: let
flakeURL = "git+https://git.xenia.me.uk/xenia/nixos.git?ref=main";
in {
nix = {
settings.experimental-features = ["nix-command" "flakes"];
gc = {
automatic = true;
dates = "daily";
options = "--delete-older-than 7d";
};
extraOptions = ''
keep-outputs = true
keep-derivations = true
'';
};
system.autoUpgrade = {
enable = true;
flake = flakeURL;
};
environment = {
localBinInPath = true;
shellAliases = {
ll = "ls -laF";
gg = "${pkgs.gitui}/bin/gitui";
2023-07-19 08:59:19 +01:00
nosu = "sudo nixos-rebuild switch --flake \"${flakeURL}\"";
hms = "${pkgs.home-manager}/bin/home-manager switch --flake \"${flakeURL}\"";
};
systemPackages = with pkgs; [distrobox];
};
2023-07-07 17:25:04 +01:00
networking.networkmanager.enable = true;
services.power-profiles-daemon.enable = true;
virtualisation.podman.enable = true;
programs = {
${shell}.enable = true;
ssh.startAgent = true;
dconf.enable = true;
};
fonts = {
fonts = with pkgs; [
# icon fonts
material-symbols
# normal fonts
jost
lexend
noto-fonts
noto-fonts-cjk
noto-fonts-emoji
roboto
# nerdfonts
(nerdfonts.override {fonts = ["FiraCode"];})
];
# use fonts specified by user rather than default ones
enableDefaultFonts = false;
fontconfig = {
enable = true;
# user defined fonts
# the reason there's Noto Color Emoji everywhere is to override DejaVu's
# B&W emojis that would sometimes show instead of some Color emojis
defaultFonts = {
serif = ["Noto Serif" "Noto Color Emoji"];
sansSerif = ["Noto Sans" "Noto Color Emoji"];
monospace = ["FiraCode Nerd Font" "Noto Color Emoji"];
emoji = ["Noto Color Emoji"];
};
};
};
services.xserver = {
layout = "gb";
xkbVariant = "";
};
console.keyMap = "uk";
# Set your time zone.
time.timeZone = "Europe/London";
i18n = {
# Select internationalisation properties.
defaultLocale = "en_GB.UTF-8";
extraLocaleSettings = {
LC_ADDRESS = "en_GB.UTF-8";
LC_IDENTIFICATION = "en_GB.UTF-8";
LC_MEASUREMENT = "en_GB.UTF-8";
LC_MONETARY = "en_GB.UTF-8";
LC_NAME = "en_GB.UTF-8";
LC_NUMERIC = "en_GB.UTF-8";
LC_PAPER = "en_GB.UTF-8";
LC_TELEPHONE = "en_GB.UTF-8";
LC_TIME = "en_GB.UTF-8";
};
};
}