qvm-features.rst 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. .. program:: qvm-features
  2. :program:`qvm-features` -- manage domain's features
  3. ===================================================
  4. Synopsis
  5. --------
  6. :command:`qvm-features` [-h] [--verbose] [--quiet] *VMNAME* [*FEATURE* [*VALUE*]]
  7. Options
  8. -------
  9. .. option:: --help, -h
  10. show this help message and exit
  11. .. option:: --verbose, -v
  12. increase verbosity
  13. .. option:: --quiet, -q
  14. decrease verbosity
  15. .. option:: --unset, --default, --delete, -D
  16. Unset the feature.
  17. Description
  18. -----------
  19. This command is used to manually manage the *features* of the domain. The
  20. features are key-value pairs with both key and value being strings. They are
  21. used by extensions to store information about the domain and make policy
  22. decisions based on them. For example, they may indicate that some specific
  23. software package was installed inside the template and the domains based on it
  24. have some specific capability.
  25. .. warning::
  26. The features are normally managed by the extensions themselves and you should
  27. not change them directly. Strange things might happen otherwise.
  28. Some extensions interpret the values as boolean. In this case, the empty string
  29. means :py:obj:`False` and non-empty string (commonly ``'1'``) means
  30. :py:obj:`True`. An absence of the feature means "default", which is
  31. extension-dependent. In most cases the default value for feature is retrieved
  32. from a qube template.
  33. List of known features
  34. ----------------------
  35. .. warning::
  36. This list of features may be incomplete, because extensions are free to use any
  37. values, without registering them anywhere.
  38. gui
  39. ^^^
  40. Qube provide any kind of GUI. Setting this feature to :py:obj:`False` disable
  41. GUI for given qubes - both gui-agent based and emulated VGA based one. Setting
  42. this feature to :py:obj:`True` enable gui-agent based GUI (i.e. with support of
  43. tools installed inside of qube). Not setting this feature at all, enable showing
  44. VGA emulated output.
  45. Default: show emulated VGA output only
  46. qrexec
  47. ^^^^^^
  48. Qube has qrexec agent installed - i.e. it is possible to request staring a
  49. command/service in there.
  50. Default: assume qrexec not installed (do not wait for it while starting the
  51. qube)
  52. rpc-clipboard
  53. ^^^^^^^^^^^^^
  54. Use `qubes.ClipboardCopy` and `qubes.ClipboardPaste` qubes RPC services to
  55. fetch/send clipboard content from/to this qube, instead of using GUI protocol.
  56. This is supported (and required) by Qubes Windows Tools.
  57. Default: use GUI protocol for clipboard operations
  58. no-monitor-layout
  59. ^^^^^^^^^^^^^^^^^
  60. When set to :py:pbj:`True`, monitor layout is not sent to this qube. That is
  61. avoid calling `qubes.SetMonitorLayout` in this qube.
  62. Default: send monitor layout
  63. internal
  64. ^^^^^^^^
  65. Internal qubes (with this feature set to :py:obj:`True`) are not included in the
  66. menu.
  67. Default: not internal VM
  68. appmenus-legacy
  69. ^^^^^^^^^^^^^^^
  70. Generate legacy menu entries, using `qubes-desktop-run` command inside a VM,
  71. instead of `qubes.StartApp` qrexec service. This is used for qubes imported from
  72. previous Qubes version.
  73. Default: new style menu entries, using `qubes.StartApp` service
  74. appmenus-dispvm
  75. ^^^^^^^^^^^^^^^
  76. Generate menu entries for starting applications in Disposable VM based on given
  77. AppVM, instead of this AppVM directly.
  78. Default: create menu entries for AppVM itself
  79. qubes-firewall
  80. ^^^^^^^^^^^^^^
  81. Setting this to :py:obj:`True` means that qube support enforcing firewall rules
  82. set with `qvm-firewall` command.
  83. Default: assume qubes-firewall not enforced
  84. net.fake-ip
  85. ^^^^^^^^^^^
  86. Hide the real IP of the qube from it, and configure it with value set to this
  87. feature. Note that you can assign the same `net.fake-ip` address to multiple
  88. qubes and it shouldn't cause any troubles (unless you want to two such qubes
  89. communicate with each other). This feature does not affect address used in
  90. firewall rules, routing tables etc.
  91. Default: do not hide IP (qube's `ip` property) from the qube
  92. net.fake-gateway
  93. ^^^^^^^^^^^^^^^^
  94. Hide the real gateway of the qube from it, and configure it with value set to
  95. this feature.
  96. Default: do not hide geteway (qube's `gateway` property) from the qube
  97. net.fake-netmask
  98. ^^^^^^^^^^^^^^^^
  99. Hide the real netmask of the qube from it, and configure it with value set to
  100. this feature.
  101. Default: do not hide netmask (qube's `netmask` property) from the qube
  102. updates-available
  103. ^^^^^^^^^^^^^^^^^
  104. There are updates available.
  105. Default: no updates available
  106. Authors
  107. -------
  108. | Joanna Rutkowska <joanna at invisiblethingslab dot com>
  109. | Marek Marczykowski <marmarek at invisiblethingslab dot com>
  110. | Wojtek Porczyk <woju at invisiblethingslab dot com>
  111. .. vim: ts=3 sw=3 et tw=80