Evie Litherland-Smith
b102f9e209
Reduce complexity and in flake.nix and be more efficient in re-using things Removed some reduandant files in home/ and tidied up the structure somewhat Moved things from desktop, gui, etc... to top level Changed env to shell, indiv shell expressions import relevant others
92 lines
2.3 KiB
Nix
92 lines
2.3 KiB
Nix
{pkgs, ...}: {
|
|
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 = "git+https://git.xenia.me.uk/xenia/nixos.git?ref=main";
|
|
};
|
|
networking.networkmanager.enable = true;
|
|
services.power-profiles-daemon.enable = true;
|
|
virtualisation.podman.enable = true;
|
|
programs = {
|
|
ssh.startAgent = true;
|
|
dconf.enable = true;
|
|
fish.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"];
|
|
};
|
|
};
|
|
};
|
|
environment.systemPackages = with pkgs; [
|
|
dig
|
|
gnumake
|
|
silver-searcher
|
|
distrobox
|
|
];
|
|
environment = {
|
|
localBinInPath = true;
|
|
shellAliases = {
|
|
ll = "ls -laF";
|
|
lg = "lazygit";
|
|
gg = "nvim +Neogit";
|
|
};
|
|
};
|
|
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";
|
|
};
|
|
};
|
|
}
|