···51 # to install it because it would create a cyclic dependency between
52 # the outputs. We also need to enable the remote,
53 # which should not be done by default.
54- lib.optionalAttrs cfg.enableTestRemote (enableRemote cfg.package.installedTests "fwupd-tests")
0055 );
5657in {
···86 '';
87 };
8889- enableTestRemote = mkOption {
90- type = types.bool;
91- default = false;
92- description = lib.mdDoc ''
93- Whether to enable test remote. This is used by
94- [installed tests](https://github.com/fwupd/fwupd/blob/master/data/installed-tests/README.md).
95- '';
96- };
97-98 package = mkPackageOption pkgs "fwupd" { };
99100 daemonSettings = mkOption {
···128 or if this partition is not mounted at /boot/efi, /boot, or /efi
129 '';
130 };
000000000131 };
132 };
133 default = {};
···159 config = mkIf cfg.enable {
160 # Disable test related plug-ins implicitly so that users do not have to care about them.
161 services.fwupd.daemonSettings = {
162- DisabledPlugins = cfg.package.defaultDisabledPlugins;
163 EspLocation = config.boot.loader.efi.efiSysMountPoint;
164 };
165
···51 # to install it because it would create a cyclic dependency between
52 # the outputs. We also need to enable the remote,
53 # which should not be done by default.
54+ lib.optionalAttrs
55+ (cfg.daemonSettings.TestDevices or false)
56+ (enableRemote cfg.package.installedTests "fwupd-tests")
57 );
5859in {
···88 '';
89 };
9000000000091 package = mkPackageOption pkgs "fwupd" { };
9293 daemonSettings = mkOption {
···121 or if this partition is not mounted at /boot/efi, /boot, or /efi
122 '';
123 };
124+125+ TestDevices = mkOption {
126+ type = types.bool;
127+ default = false;
128+ description = lib.mdDoc ''
129+ Create virtual test devices and remote for validating daemon flows.
130+ This is only intended for CI testing and development purposes.
131+ '';
132+ };
133 };
134 };
135 default = {};
···161 config = mkIf cfg.enable {
162 # Disable test related plug-ins implicitly so that users do not have to care about them.
163 services.fwupd.daemonSettings = {
0164 EspLocation = config.boot.loader.efi.efiSysMountPoint;
165 };
166