28 lines
692 B
Nix
28 lines
692 B
Nix
{ config, lib, inputs, namespace, ... }:
|
|
let
|
|
inherit (lib) types optionalAttrs;
|
|
inherit (lib.${namespace}) mkOpt mkBoolOpt;
|
|
|
|
cfg = config.${namespace}.hardware.asahi;
|
|
in
|
|
{
|
|
imports = [
|
|
inputs.apple-silicon.nixosModules.default
|
|
];
|
|
|
|
options.${namespace}.hardware.asahi = {
|
|
enable = lib.mkEnableOption "support for asahi linux";
|
|
enableGPU = mkBoolOpt false "enable gpu driver";
|
|
firmwareDirectory = mkOpt types.path null "firmware directory";
|
|
};
|
|
|
|
config = {
|
|
hardware.asahi = {
|
|
enable = cfg.enable;
|
|
} // optionalAttrs cfg.enable {
|
|
peripheralFirmwareDirectory = cfg.firmwareDirectory;
|
|
useExperimentalGPUDriver = cfg.enableGPU;
|
|
};
|
|
};
|
|
}
|