1{
2 config,
3 lib,
4 pkgs,
5 ...
6}:
7let
8 cfg = config.hardware.xone;
9in
10{
11 options.hardware.xone = {
12 enable = lib.mkEnableOption "the xone driver for Xbox One and Xbox Series X|S accessories";
13 };
14
15 config = lib.mkIf cfg.enable {
16 boot = {
17 blacklistedKernelModules = [
18 "xpad"
19 "mt76x2u"
20 ];
21 extraModulePackages = with config.boot.kernelPackages; [ xone ];
22 };
23 hardware.firmware = [ pkgs.xow_dongle-firmware ];
24 hardware.xpad-noone.enable = lib.mkDefault true;
25 };
26
27 meta = {
28 maintainers = with lib.maintainers; [ rhysmdnz ];
29 };
30}