How-to: Install Qubes-Whonix™
Getting started with Qubes-Whonix in 4 steps.
Here you can find installation instructions, release notices, disposable template setup, updates over Tor and more.
Table: Qubes-Whonix™ Release Notices
|Qubes Version Support||
In case technical issues are experienced such as broken
The instructions on this wiki page have bad usability. These are mostly out of control of the Whonix project. See footnote for more information. 
|Qubes-Whonix 16 to Qubes-Whonix 17 Release Upgrade||This is a notice for users who currently have Qubes-Whonix 16 installed.
If Qubes-Whonix 16 is installed and you want to get Qubes-Whonix 17, there is no need to uninstall Qubes-Whonix 16 before proceeding according to the instructions on this wiki page. This is because the new templates (
In this case, App Qubes that were previously configured to use Qubes-Whonix 16 templates will keep using them -- the Templates of any App Qubes are not automatically changed to the newly installed Qubes-Whonix 16 templates. This is a Qubes default and unspecific to Qubes-Whonix.  Therefore, a manual change must be applied to App Qubes settings by the user. The rationale is to prevent unexpected changes of an App Qube's Template without the user's consent. 
After the Qubes-Whonix installation has finished, it is recommended to manually change the setting of any App Qubes still using Qubes-Whonix 16 Templates to the Qubes-Whonix 16 Templates. 
|Preexisting Qubes-Whonix 16 Installations||
This is a notice for users who already have Qubes-Whonix 16 installed.
If any user data was stored in Qubes-Whonix VMs, before re-installation, back up any existing data.
If you are already running Qubes-Whonix 16, it must be uninstalled before a complete re-installation is performed. This is also necessary when Qubes-Whonix 16 is bundled as part of future Qubes releases, and auto-configuration is selected during the installation.
Choose re-installation options A) OR B). (listed in order of preference)
1. Launch a
Click the Qubes App Launcher (blue/grey "Q") →
Open the Terminal Emulator (Xfce Terminal)
2. Upgrade Qubes
sudo qubes-dom0-update --show-output --console
dom0 upgrade has been completed.
Version Number Verification
If the previous
sudo qubes-dom0-update was completed, it should not be necessary to verify the version number. However, this is mentioned because many users fail to update
dom0 packages beforehand.
2. View local salt Whonix version number.
View contents of file
sudo cat /srv/formulas/base/virtual-machines-formula/qvm/whonix.jinja
3. Example output.
- Qubes R4.1: Verify
- Qubes R4.2: Verify
Version number verification has been completed.
Download and Configure Whonix Templates
Download Whonix Templates and Configure
1. Download speed notice.
This downloading procedure can take a long time to finish. Fast Internet connections take only a few minutes, while slow connections can take twenty minutes or more (it is far slower over Tor).
To download Whonix-Gateway and Whonix-Workstation run this command:
anon-whonix safely. 
dom0, run. 
sudo qubesctl state.sls qvm.anon-whonix
4. In case of issues.
Only in case of issues, refer to the footnotes for troubleshooting tips.  Otherwise, proceed.
Download and installation of Qubes-Whonix has been completed.
6. Next steps.
See below for additional optional configurations and additional information.
Support the Future of Whonix
Whonix is made possible thanks to the donation of people like you. ❤️
Please support the Whonix development with a donation.
Whonix Disposable Template
- R4.1 / R4.2 sudo qubesctl state.sls qvm.whonix-ws-dvm
- Or in the future in R4.2 after upgrades: sudo qubesctl state.sls whonix-workstation-dvm.sls
There is a Qubes bug that may cause the Disposable Template to run instead of the Disposable. Might be fixed in Qubes R4.2. Unspecific to Whonix. If this happens, just log off and back on. There is no need to reinstall or set up anything.
Updates over Tor
To force all Template updates over Tor, use
sudo qubesctl state.sls qvm.updates-via-whonix
To undo this setting, modify
dom0.  See also How-to: Fix dom0 Qubes-Whonix™ UpdatesProxy Settings.
dom0 updates over Tor, set Qubes'
dom0 UpdateVM to
To revert this change, set Qubes'
dom0 UpdateVM to
sys-firewall or another preferred VM. 
AppArmor is enabled by default. No extra steps required.
Update and Launch Applications
Before starting applications in the Whonix-Workstation™ App Qube, update both Whonix-Gateway™ and Whonix-Workstation™ Templates.
To launch an application like Tor Browser:
Qubes App Launcher (blue/grey "Q")→
Tor Browser (AnonDist)
It is recommended to refer to these additional references:
- specifically: Qubes feature request: self-contained Qubes templates including meta scripts (salt) / improve Qubes-Whonix installation usability (#6948)
- generally: Linux User Experience versus Commercial Operating Systems
- This is also true for other distribution Templates. For example, users of the Qubes
debian-10Template will not have all their App Qubes updated to the new
debian-11Template by default when it is downloaded.
- For example, this could result in breakage if custom-installed applications in the old Template were not available in the new Template.
dom0is required to make sure:
- version file
/srv/formulas/base/virtual-machines-formula/qvm/whonix.jinjacontains the current version number of Whonix is up to date,
- a recent version of Qubes repository definition files,
- Qubes salt,
- as well as qubes-mgmt-salt-dom0-virtual-machines are installed and up to date.
- version file
--show-output --consoleis optional, recommended because of Qubes upstream bug:
No updates availablein case of network is down /
qubes-dom0-updatefails to notice if repositories are unreachable / network is down
It should not be necessary to manually update that file because the Qubes
dom0stable package should have updated it already. If it didn't, then the cause is general issues unspecific to Whonix.
This is currently not needed and discouraged:
whonix.jinjawith root rights.
sudo nano /srv/formulas/base/virtual-machines-formula/qvm/whonix.jinja
3. Save the file.
- The following Qubes issues are for developers understanding, reference only:
- Useful because it has a progress indicator while the subsequent
qubesctlcommand does not. (Qubes feature request: add salt download progress indicator) It very confusing to have a long running download command with progress bar, specifically over Tor.
- Insufficient by itself - the subsequent
qubesctlcommand that follow is mandatory as per phase out manual use of qubes-dom0-update by user / replace it by salt and Dev/Qubes#salt.
--enablerepo=qubes-templates-communitycan be omitted if Qubes Community Templates Repository is already enabled in
- Qubes Community Templates Repository should already be enabled as per Qubes default unless disabled by user, restored Qubes-Whonix™ from backup or some other edge case.
- Recommending to type
--enablerepo=qubes-templates-communityis bad usability since users cannot copy from their VM browser where they are most likely reading this to
dom0. But too many people reported this issue. had to enable Qubes templates community repository
- If Qubes Community Templates Repository is not enabled in
dom0, explicitly add
--enablerepo=qubes-templates-communityor enable through editing dom0 file
1. Open file
/etc/yum.repos.d/qubes-templates.repoin a text editor with root rights.
sudo nano /etc/yum.repos.d/qubes-templates.repo
2. In section
[qubes-templates-community], add the following.
enabled = 1
Qubes Community Templates Repository has been enabled. Command line parameter
--enablerepo=qubes-templates-communityshould be no longer required.
Please report if step this was necessary for you!
- Do not interrupt the salt process once it has started or this can lead to an unstable system.
qubesctl: Is a command by Qubes, not Whonix. Advanced users could may look at Qubes salt management stack
qubesctlfor further information about
qubesctland Qubes salt.
- If Templates were not previously downloaded already by using above
qubes-dom0-updatecommand, then the
qubesctlcommand would also download both Whonix-Gateway and Whonix-Workstation Templates.
- Related source code files, reference for developers only:
- No progress indicator is shown. Qubes feature request: add salt download progress indicator
qubesctlstill does not work, try shutting down Qubes OS and rebooting the machine. Please report if this step was necessary for you!
- For developers only, link to related source code file: https://github.com/QubesOS/qubes-mgmt-salt-dom0-virtual-machines/blob/master/qvm/whonix-workstation-dvm.sls
- By Qubes default, Qubes UpdatesProxy (RPC / qrexec based) is used to update Templates.
- Qubes: How to install software, technical details
- For developers only, related source code file: https://github.com/QubesOS/qubes-mgmt-salt-dom0-virtual-machines/blob/master/qvm/updates-via-whonix.sls
- How to change Template update method from Whonix to just another appvm?
Or manually set the torified UpdateVM in
dom0terminal. qubes-prefs updatevm sys-whonix
To revert this change in
dom0terminal, run. qubes-prefs updatevm sys-firewall