-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
This is an interesting idea. Generally, making it harder to set
dangerous configuration is a good idea. But also, I don't think should
be completely blocked. For example there may be cases where one wants
to use Whonix Workstation based qube just because they like default
settings there, but don't really care about the anonymity aspect. Or
they want to use some replacement that isn't really Whonix.
A simpler whonix-specific solution was considered before, but since it
was based on more-or-less hardcoded Whonix-ness of specific qubes, it
didn't allowed necessary flexibility (like allowing the user to change
the value anyway). There is also a problem of respecting user choice -
to set proper defaults, but do not override user intentional changes.
An API for listing valid choices for netvm and dispvm via qvm-features
seems like a good idea, as it would prevent unintentionally setting
dangerous value, while still could be overridden by advanced user.
So, it could be for example "allowed-netvm" feature that would be a
space separated list of names, or `@tag:something` values (syntax
inspired on qrexec policy). And similar for "allowed-default-dispvm".
And then, core-admin could could use those via "check_with_template"
function, so it's enough to set it once on whonix-workstation-18
template, not necessarily on every app qube based on it.
And while at maybe also "allowed-template"? To prevent accidental
template change, but still allow for example switching from
whonix-workstation-17 to whonix-workstation-18 (or even some clone of
them). But I'm not sure if that's really a good idea.
As for respecting user choice, this still has similar issue as before,
but moved elsewhere - now qubes-core-admin-addon-whonix could set those
features, but would need to be careful to not override user-configured
value, especially if some future version would need to change the value.
We do have a mechanism for distinguishing built-in defaults from user
changes, but we don't have it for changes made by an addon (or salt)...
Something to consider maybe in the future...
- --
Best Regards,
Marek Marczykowski-Górecki
Invisible Things Lab
-----BEGIN PGP SIGNATURE-----
iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmj2eNUACgkQ24/THMrX
1ywZxAf9FILapcCgEVGz+EjvPPTz+aLoPVLPfxeCPBRV+bTxYtNLhmpAJmZDruG5
NLnpNgMrMQSlK3cnz0yrJglE1ulC6nrXTWw1+9h+0lp6FX1BfMrG+V+HG2bRU/yW
miIZsX1c5dbvQ74Paux/cZldc2yAHT3SzMRi86XjGG/MDrfkcvK+LPHn4IffZEy+
UPew9roaBlQ5vP0XU9sLiVg2U2LB8skpdun7fj+vujUKY6iMBgDZCFFM7WzZdYHV
lfV9ZPaRVXDTkHxePfsn0iuQaz0n3P0GPdj3rl1+m7J22p19wbDgBHIqup6ZYUU0
xb+g/KEh3rl5rt4KJE4sh2Ri7dyuYA==
=9cgq
-----END PGP SIGNATURE-----