dotfiles/nixos/hosts/aigis.nix

88 lines
2.3 KiB
Nix

#
# Per-system configuration for Ashyn.
#
# vim: et:ts=2:sw=2:
#
{
config,
deprekages,
pkgs,
lib,
modulesPath,
...
}:
{
system.stateVersion = "23.11";
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
../../apple-silicon-support
];
# Bootloader.
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = false;
# Networking.
networking.hostName = "aigis";
networking.firewall.enable = false;
# Use kwin for sddm instead of westin, to account for multi-monitor.
services.displayManager.sddm.wayland.compositor = "kwin";
networking.networkmanager.enable = true;
# Set up MacOS features.
hardware.asahi = {
peripheralFirmwareDirectory = ../../apple-silicon-support/firmware;
useExperimentalGPUDriver = true;
};
# Make Niri work on this machine. :)
home-manager.users.deprekated = {
programs.niri.settings = {
outputs."eDP-1".scale = 1.5;
# Forcibly override the render-node detection, as it doesn't work on Apple Silicon.
debug.render-drm-device = "/dev/dri/renderD128";
};
};
# Be able to run x64 binaries, because they're everywhere.
boot.binfmt.emulatedSystems = [
"x86_64-linux"
];
# Set UI font sizes to work with this machine.
stylix.fonts.sizes.desktop = lib.mkForce 16;
#
# Hardware config.
#
boot.initrd.availableKernelModules = [ "usb_storage" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/b4dd01d3-28b8-4c58-af86-9c96afa33263";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/077A-1AFE";
fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.wlan0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux";
}