Is there anyway to create a "child template" with a small modifcation from the original template? Or am I using templates wrong?

So here is my situation. I have my standard fedora-34 template which is the template for most of my vm’s. I want to install the nordvpn client into 1 or two vm’s only. I don’t want to add it to the fedora-34 because the system vms don’t need it and I don’t want to be installing unneeded software in them due to the potential security risk.

So of course, I can clone the fedora-34 template and make a fedora-34-nord template for the two vm’s that need it. My problem with this is both templates are now the same size taking up 5gb of space even though fedora-34-nord is really just a slight modification from fedora-34. Of course storage is dirt cheap and this isn’t a real problem.

Still, is there a “docker-like” solution with layers where I can have a child template or just a small layer on top of or added to the fedora-34 template. Ideally hard-connected to the parent fedora-34 template so that when fedora-34 updates, fedora-34-nord updates as well. I don’t think this is possible with qubes currently based on my current knowledge.

Am I using templates wrong or something? Is there a better solution to my problem then creating another full 5gb template just for one small app?

1 Like

You got three options:

  1. Clone fedora template as you described.
    Pro: easy, basic skills required
    Contra: lots of wasted space, now you have two fedora templates that need to be updated quite frequently

  2. Use minimal templates (fedora or debian).
    Pro: much smaller, reduced attack surface, less updates (less installed) and in case of debian also less frequent updates
    Contra: advanced skills required (reading/understanding documentation, install troubleshooting (diagnose dependencies)

  3. Install VPN in qube instead of template (in /home or using bind dirs)
    Pro: no template duplication
    Contra: advanced skills required (understanding which files and configs the VPN requires, where they are located and how to make them persist)

Your choice :slight_smile:

My recommendation: start with 1) and if you’d like work in parallel on 2) or 3) without pressure.

1 Like