{ config, lib, ff, ... }: with lib; { options.features.disableMedia = mkOption { type = types.bool; default = false; description = '' This assumes a deployment where video consumption does not occur often. It disables DRM and other encrypted media, as well as autoplay. ''; }; config.policies = lib.mkIf config.features.disableMedia { Preferences = ff.flattenAttrs { media = { eme.enabled = false; gmp-gmpopenh264 = { enabled = false; autoupdate = false; }; gmp-widevinecdm.enabled = false; peerconnection.enabled = false; autoplay = { default = 1; enabled.user-gestures-needed = true; allow-muted = false; }; }; }; }; }