All checks were successful
Run nix flake check / flake-check (push) Successful in 2m12s
Replace scattered osConfig.system.name comparisons with a declarative host.capabilities module. This improves maintainability and semantic clarity by expressing what capabilities a host has rather than checking its name. Changes: - Add system/host-capabilities.nix with options for hardware, form factor, UI behavior, services, and backup configuration - Configure capabilities in hosts/gunter and hosts/magicman - Migrate 6 files to use capabilities: packages, waybar, ssh, backup-home - Remove redundant host name check for pciutils in gunter config - Make backup-home service conditionally enabled based on capabilities Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
96 lines
2.0 KiB
Nix
96 lines
2.0 KiB
Nix
{
|
|
pkgs,
|
|
...
|
|
}:
|
|
|
|
{
|
|
imports = [ ./hardware-configuration.nix ];
|
|
|
|
# Bootloader stuff
|
|
boot.kernelParams = [
|
|
"acpi_backlight=native"
|
|
"video=efifb:nobgrt"
|
|
"loglevel=3"
|
|
"rd.udev.log_level=3"
|
|
];
|
|
|
|
boot.loader.systemd-boot.configurationLimit = 3;
|
|
|
|
boot.initrd.systemd.enable = true;
|
|
boot.plymouth = {
|
|
enable = true;
|
|
themePackages = with pkgs; [ catppuccin-plymouth ];
|
|
theme = "catppuccin-macchiato";
|
|
extraConfig = ''
|
|
UseFirmwareBackground=false
|
|
'';
|
|
};
|
|
|
|
# Networking stuff
|
|
networking.hostName = "magicman"; # Define your hostname.
|
|
|
|
hardware = {
|
|
enableRedistributableFirmware = true;
|
|
enableAllFirmware = true;
|
|
|
|
# Enable opengl
|
|
graphics = {
|
|
enable = true;
|
|
extraPackages = with pkgs; [
|
|
intel-media-driver
|
|
libva-vdpau-driver
|
|
libvdpau-va-gl
|
|
];
|
|
};
|
|
};
|
|
|
|
# Host capabilities
|
|
host.capabilities = {
|
|
hasCuda = false;
|
|
hasNvidia = false;
|
|
hasBattery = true;
|
|
formFactor = "laptop";
|
|
volumeScrollStep = 1;
|
|
enableArrhist = false;
|
|
hasEduroamAccess = true;
|
|
backupRepository = null;
|
|
backupPassword = null;
|
|
};
|
|
|
|
# Bluetooth stuff
|
|
services.blueman.enable = true;
|
|
hardware.bluetooth.enable = true;
|
|
services.pipewire.wireplumber.extraConfig = {
|
|
"monitor.bluez.properties" = {
|
|
"bluez5.enable-sbc-xq" = true;
|
|
"bluez5.enable-msbc" = true;
|
|
"bluez5.enable-hw-volume" = true;
|
|
"bluez5.roles" = [
|
|
"hsp_hs"
|
|
"hsp_ag"
|
|
"hfp_hf"
|
|
"hfp_ag"
|
|
];
|
|
};
|
|
};
|
|
|
|
# TRIM
|
|
services.fstrim.enable = true;
|
|
|
|
programs.steam.enable = true;
|
|
|
|
# Install system-wide packages
|
|
environment.systemPackages = with pkgs; [
|
|
vim
|
|
wget
|
|
curl
|
|
git
|
|
];
|
|
|
|
# Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
|
|
# and migrated your data accordingly.
|
|
#
|
|
# For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
|
|
system.stateVersion = "23.11"; # Did you read the comment?
|
|
}
|