systems/machines/hermes/default.nix
2025-12-14 00:24:47 +01:00

142 lines
2.9 KiB
Nix

{
inputs,
lib,
pkgs,
...
}:
{
imports = [
./bootloader.nix
./filesystems.nix
./gpu.nix
./cpu.nix
./audio.nix
./bluetooth.nix
./networking.nix
./hardware.nix
];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
time.timeZone = "Europe/Paris";
console = {
keyMap = "us";
font = "ter-v28b";
# earlySetup = true;
packages = [ pkgs.terminus_font ];
};
i18n.defaultLocale = "en_US.UTF-8";
nixpkgs.config.allowUnfree = true;
nix.settings = {
experimental-features = [
"nix-command"
"flakes"
];
substituters = [ "https://cache.nixos-cuda.org" ];
trusted-public-keys = [ "cache.nixos-cuda.org:74DUi4Ye579gUqzH4ziL9IyiJBlDpMRn9MBN8oNan9M=" ];
};
programs.niri.enable = true;
# List packages installed in system profile.
# You can use https://search.nixos.org/ to find more packages (and options).
environment.systemPackages = with pkgs; [
wget
alacritty
fuzzel
firefox
adwaita-icon-theme
];
fonts.fontconfig = {
enable = true;
antialias = true;
hinting = {
enable = true;
style = "slight";
};
subpixel = {
rgba = "rgb";
lcdfilter = "default";
};
defaultFonts = {
serif = [
"SF Pro"
"DejaVu Serif"
];
sansSerif = [
"SF Pro"
"DejaVu Sans"
];
monospace = [
"Iosevka"
"DejaVu Sans Mono"
];
emoji = [ "Noto Color Emoji" ];
};
};
fonts.packages = with pkgs; [
inputs.apple-fonts.packages."${system}".sf-pro
noto-fonts-color-emoji
(iosevka.override {
set = "cavalier";
privateBuildPlan = {
family = "Iosevka Cavalier";
spacing = "normal";
serifs = "sans";
noCvSs = false;
exportGlyphNames = true;
variants.inherits = "ss08";
variants.weights.Regular = {
shape = 400;
menu = 400;
css = 400;
};
variants.weights.Bold = {
shape = 700;
menu = 700;
css = 700;
};
variants.weights.Italic = {
angle = 9.4;
shape = "italic";
menu = "italic";
css = "italic";
};
variants.weights.Upright = {
angle = 0;
shape = "upright";
menu = "upright";
css = "upright";
};
};
})
];
programs._1password.enable = true;
programs._1password-gui = {
enable = true;
# Certain features, including CLI integration and system authentication support,
# require enabling PolKit integration on some desktop environments (e.g. Plasma).
polkitPolicyOwners = [ "pml" ];
};
environment.etc = {
"1password/custom_allowed_browsers" = {
text = ''
firefox
'';
mode = "0755";
};
};
system.stateVersion = "25.05"; # Did you read the comment?
}