mirror of
https://github.com/QubesOS/qubes-doc.git
synced 2025-04-25 10:19:23 -04:00
Tweak slightly for clarity
This commit is contained in:
parent
2de76980ae
commit
2bc69fc466
@ -53,7 +53,7 @@ It strives to provide not only a better mechanism for handling template installa
|
|||||||
- Machine-readable output for easy extension
|
- Machine-readable output for easy extension
|
||||||
- Search for templates
|
- Search for templates
|
||||||
- Remove templates
|
- Remove templates
|
||||||
- Ability to disassociate or remove VMs based on the template to be removed
|
- Optionally, VMs based on the template to be removed can be either removed or "disassociated" -- namely, have their templates changed to a "dummy" one.
|
||||||
- Show available repositories
|
- Show available repositories
|
||||||
- Works in both dom0 and management VMs by utilizing the Admin API
|
- Works in both dom0 and management VMs by utilizing the Admin API
|
||||||
- Works well with existing tools
|
- Works well with existing tools
|
||||||
@ -69,9 +69,8 @@ We can also avoid the burden of dealing with verification, reducing the risk of
|
|||||||
|
|
||||||
The package name should be in the form `qubes-template-${template_name}`.
|
The package name should be in the form `qubes-template-${template_name}`.
|
||||||
|
|
||||||
For the package metadata (e.g., summary, description), one needs to ensure that the character `|` does not appear.
|
The package metadata (summary, description, etc.) should not contain the `|` character to avoid possibly cryptic errors.
|
||||||
This is because we use the character as a separator internally.
|
This is because of its use as an internal separator.
|
||||||
Failing to do so may result in `qvm-template` to fail with cryptic error messages.
|
|
||||||
Note that as we already consider the repository metadata untrusted, this should not result in security issues.
|
Note that as we already consider the repository metadata untrusted, this should not result in security issues.
|
||||||
|
|
||||||
The file structure should be quite similar to previous template RPMs.
|
The file structure should be quite similar to previous template RPMs.
|
||||||
@ -89,16 +88,16 @@ Namely, there should be the following files in the package:
|
|||||||
- Setting this to `pv` requires user confirmation.
|
- Setting this to `pv` requires user confirmation.
|
||||||
- `kernel`
|
- `kernel`
|
||||||
- Only allowed to be set to "", i.e., "none", for PVGrub.
|
- Only allowed to be set to "", i.e., "none", for PVGrub.
|
||||||
- `no-monitor-layout`
|
|
||||||
- `pci-e820-host`
|
|
||||||
- `linux-stubdom`
|
|
||||||
- `gui`
|
|
||||||
- `gui-emulated`
|
|
||||||
- `qrexec`
|
|
||||||
- These six flags are only allowed to be set to "1" or "0", denoting "true" and "false" respectively.
|
|
||||||
- `net.fake-ip`
|
- `net.fake-ip`
|
||||||
- `net.fake-gateway`
|
- `net.fake-gateway`
|
||||||
- `net.fake-netmask`
|
- `net.fake-netmask`
|
||||||
|
- Boolean flags: (Permitted values are "1" and "0", denoting "true" and "false" respectively.)
|
||||||
|
- `no-monitor-layout`
|
||||||
|
- `pci-e820-host`
|
||||||
|
- `linux-stubdom`
|
||||||
|
- `gui`
|
||||||
|
- `gui-emulated`
|
||||||
|
- `qrexec`
|
||||||
- `var/lib/qubes/vm-templates/${template_name}/whitelisted-appmenus.list`
|
- `var/lib/qubes/vm-templates/${template_name}/whitelisted-appmenus.list`
|
||||||
- Contains default app menu entries of the template itself.
|
- Contains default app menu entries of the template itself.
|
||||||
- `var/lib/qubes/vm-templates/${template_name}/vm-whitelisted-appmenus.list`
|
- `var/lib/qubes/vm-templates/${template_name}/vm-whitelisted-appmenus.list`
|
||||||
@ -144,7 +143,7 @@ Most of the fields should be fairly self-explanatory.
|
|||||||
- `netvm-menu-items`
|
- `netvm-menu-items`
|
||||||
- The `*menu-items` entries store the contents of `var/lib/qubes/vm-templates/${template_name}/whitelisted-appmenus.list`, `var/lib/qubes/vm-templates/${template_name}/vm-whitelisted-appmenus.list`, `var/lib/qubes/vm-templates/${template_name}/netvm-whitelisted-appmenus.list` respectively.
|
- The `*menu-items` entries store the contents of `var/lib/qubes/vm-templates/${template_name}/whitelisted-appmenus.list`, `var/lib/qubes/vm-templates/${template_name}/vm-whitelisted-appmenus.list`, `var/lib/qubes/vm-templates/${template_name}/netvm-whitelisted-appmenus.list` respectively.
|
||||||
- Note that newlines are converted to spaces, again for it to work better with existing tools.
|
- Note that newlines are converted to spaces, again for it to work better with existing tools.
|
||||||
This should not cause ambiguity as [the FreeDesktop specifications][freedesktop-spec] forbid spaces from the names of desktop files.
|
This should not cause ambiguity as [the FreeDesktop specifications][freedesktop-spec] forbid spaces in .desktop file names.
|
||||||
|
|
||||||
[freedesktop-spec]: https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html
|
[freedesktop-spec]: https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html
|
||||||
|
|
||||||
@ -215,7 +214,10 @@ See the `qvm-template` man page for details.
|
|||||||
|
|
||||||
### `qvm-remove`
|
### `qvm-remove`
|
||||||
|
|
||||||
Should work straightforwardly.
|
The existing `qvm-remove` tool should behave identically to `qvm-template remove` -- albeit without fancy features like disassociation.
|
||||||
|
This is unlike the previous situation where `qvm-remove` cannot remove RPM-installed templates.
|
||||||
|
|
||||||
|
Notably, the metadata needs no special handling as it is stored in VM features and thus automatically consistent.
|
||||||
|
|
||||||
### Renaming / Cloning
|
### Renaming / Cloning
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user