Hi there.
Warning: the minimal templates are intended only for advanced users. To understand why, read the following:
I looked for a minimal template so that my AppVM does not take more place than needed and also to reduce potential attack surface. The sole purpose of my VPN AppVM is to serve as VPN. Debian seems also more stable and secure to me than Fedora.
I just collected other community member’s guides and pasted them together. As I am a newbie myself I thought this topic may be useful to others so here am I.
Please feel free to give advice and advises ![]()
ProtonVPN minimal Debian Qube
Create a ProtonVPN Minimal Template and create the AppVM’s based on it.
1 - Clone an unaltered Debian 13 minimal template to serve as the template for the Proton VPN AppVM, name it e.g. sys-protonvpn-minimal
2 - Debian 13 minimal templates don’t have wget or curl installed, so use another VM to download the available .deb file.
As of September 2026, that is version 1.0.8. (repo.protonvpn(dot)com/debian/dists/stable/main/binary-all/protonvpn-stable-release_1.0.8_all.deb)
Then, move the file to sys-protonvpn-minimal so that it appears in /home/user/QubesIncoming.
Open a terminal in the newly-created template as the root user.
[user@dom0 ~]$ qvm-run --user root sys-protonvpn-minimal uxterm
In the just-opened terminal, install the .deb file and then the required software.
This will use the default dom0 update qube for network access, which you could have chosen to be sys-whonix.
[root@sys-protonvpn-minimal ~]$ apt install /home/user/QubesIncoming/anon-whonix/protonvpn-stable-release_1.0.8_all.deb
(If you aren’t sure which folder, check it by [root@sys-protonvpn-minimal ~]$ ls /home/user/QubesIncoming)
[root@sys-protonvpn-minimal ~]$ apt install proton-vpn-gnome-desktop qubes-core-agent-networking qubes-core-agent-network-manager network-manager-applet gnome-shell-extension-appindicator gnome-shell-extension-prefs
[root@sys-protonvpn-minimal ~]$ usermod -G netdev -a user # from ``https://github.com/ProtonVPN/linux-app/issues/27
KillSwitch (even if you can toggle it on in the GUI menu):
Add the rules below in /rw/config/qubes-firewall-user-script in the qube:
#Prevent the qube to forward traffic outside of the VPN
nft add rule qubes custom-forward oifname eth0 counter drop
nft add rule ip6 qubes custom-forward oifname eth0 counter drop
Remove the ProtonVPN download
[root@sys-protonvpn-minimal ~]$ rm /home/user/QubesIncoming/anon-whonix/protonvpn-stable-release_1.0.8_all.deb
3 - Create a new AppVM:
Check “provide network access to other qubes” in the Advanced settings tab
In the qube settings:
- Give it 800 MB of memory minimum
- Add the service qubes-firewall
- Add the service network-manager
Remember, if you want to use sys-whonix (Tor) as NetVM for your ProtonVPN qube, choose “TCP” as protocol in the GUI menu of ProtonVPN.
Sources
:
Bye!