nixos-demo/os/hardware/default.nix

63 lines
2.0 KiB
Nix
Raw Normal View History

2025-07-12 00:28:21 +02:00
{
config,
lib,
pkgs,
modulesPath,
...
}:
{
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
./macbook
];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
hardware.bluetooth.enable = true;
hardware.bluetooth.powerOnBoot = false;
# hidpi settings
fonts.fontconfig.subpixel.rgba = "rgb";
services.xserver.dpi = 144;
environment.variables = {
NIXOS_OZONE_WL = "1";
QT_QPA_PLATFORM = "wayland";
};
hardware = {
graphics = {
enable = true;
enable32Bit = true;
extraPackages = with pkgs; [
(lib.mkIf config.beancloud.hardware.gpu.intel.xe intel-compute-runtime)
(lib.mkIf config.beancloud.hardware.gpu.intel.xe vpl-gpu-rt)
(lib.mkIf (config.beancloud.hardware.gpu.amd.enable && config.beancloud.hardware.gpu.amd.amdvlk) amdvlk)
];
extraPackages32 = with pkgs; [
(lib.mkIf (config.beancloud.hardware.gpu.amd.enable && config.beancloud.hardware.gpu.amd.amdvlk) driversi686Linux.amdvlk)
];
};
amdgpu = {
initrd.enable = if config.beancloud.hardware.gpu.amd.enable then true else false;
amdvlk = {
enable = if (config.beancloud.hardware.gpu.amd.enable && config.beancloud.hardware.gpu.amd.amdvlk) then true else false;
support32Bit.enable = if (config.beancloud.hardware.gpu.amd.enable && config.beancloud.hardware.gpu.amd.amdvlk) then true else false;
};
};
xone.enable = false;
xpadneo.enable = false;
};
environment.systemPackages = with pkgs; [
(lib.mkIf config.beancloud.hardware.gpu.intel.xe clinfo)
(lib.mkIf config.beancloud.hardware.gpu.intel.xe nvtopPackages.intel)
];
services.fwupd.enable = lib.mkIf (config.beancloud.hardware.virtualmachine.type == "") true;
# services.udev.extraRules = lib.mkIf config.beancloud.hardware.steamdeck ''
# ACTION=="change", SUBSYSTEM=="drm", TAG+="systemd", ENV{SYSTEMD_USER_WANTS}="display-config.service"
# '';
}