{ config, lib, ... }: with lib; let cfg = config.nixfiles.modules.games; in { imports = attrValues (modulesIn ./.); options.nixfiles.modules.games.enable32BitSupport = mkEnableOption "support for games"; config = mkMerge [ { hardware.graphics.enable = true; } (mkIf cfg.enable32BitSupport { services = { jack.alsa.support32Bit = config.services.jack.alsa.enable; pipewire.alsa.support32Bit = config.services.pipewire.alsa.enable; }; hardware = { graphics.enable32Bit = true; pulseaudio.support32Bit = config.hardware.pulseaudio.enable; }; }) ]; }