Skip to content

Commit 5a29505

Browse files
committed
builder: document how to generate the image for podman
Signed-off-by: Yann Dirson <yann.dirson@vates.tech>
1 parent 842eff6 commit 5a29505

File tree

1 file changed

+19
-4
lines changed

1 file changed

+19
-4
lines changed

developer/building/qubes-builder-v2.rst

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ In the second generation of Qubes OS builder, container or disposable qube isola
1414
Setup
1515
-----
1616

17-
This is a simple setup using a docker executor. This is a good default choice; if you don’t know which executor to use, use docker.
17+
This is a simple setup using a docker or podman executor. This is a good default choice; if you don’t know which executor to use, use docker.
1818

1919
1. First, decide what qube you are going to use when working with Qubes Builder v2. It can be an AppVM or a Standalone qube, with some steps different between the two.
2020

@@ -27,7 +27,7 @@ This is a simple setup using a docker executor. This is a good default choice; i
2727
2828
3. Installing dependencies
2929

30-
If you want to use an app qube for developing, install dependencies in the template. If you are using a standalone, install them in the qube itself. Dependencies are specified in ``dependencies-*. txt`` files in the main builder directory, and you can install them easily in the following ways:
30+
If you want to use an app qube for developing, install dependencies in the template. If you are using a standalone, install them in the qube itself. Dependencies are specified in ``dependencies-*. txt`` files in the main builder directory (you will also find dependency lists for ``podman`` and ``qubes`` executors if you choose to use thsose), and you can install them easily in the following ways:
3131

3232
- for Fedora, use:
3333

@@ -45,7 +45,7 @@ This is a simple setup using a docker executor. This is a good default choice; i
4545
4646
If you have installed dependencies in the template, close it, and (re)start the development qube.
4747

48-
4. If you haven’t previously used docker in the current qube, you need to set up some permissions. In particular, the user has to be added to the ``docker`` group:
48+
4. If you haven’t previously used docker in the current qube, you need to set up some permissions (nothing needs to be done here if you're using `podman`). In particular, the user has to be added to the ``docker`` group:
4949

5050
.. code:: console
5151
@@ -55,16 +55,24 @@ This is a simple setup using a docker executor. This is a good default choice; i
5555

5656
5. Finally, you need to generate a docker image:
5757

58+
Depending on your choice of a container runtime, run one of:
59+
5860
.. code:: console
5961
6062
$ tools/generate-container-image.sh docker
6163
62-
In an app qube, as ``/var/lib/docker`` is not persistent by default, you also need to use :doc:`bind-dirs </user/advanced-topics/bind-dirs>` to avoid repeating this step after reboot, adding the following to the ``/rw/config/qubes-bind-dirs.d/docker.conf`` file in this qube:
64+
.. code:: console
65+
66+
$ tools/generate-container-image.sh podman
67+
68+
If you are using ``docker`` and an app qube, as ``/var/lib/docker`` is not persistent by default, you also need to use :doc:`bind-dirs </user/advanced-topics/bind-dirs>` to avoid repeating this step after reboot, adding the following to the ``/rw/config/qubes-bind-dirs.d/docker.conf`` file in this qube:
6369

6470
.. code:: bash
6571
6672
binds+=( '/var/lib/docker' )
6773
74+
If you are using ``podman`` this is not necessary, as the container images are stored in ``~/.local/share/containers/``.
75+
6876
Configuration
6977
-------------
7078

@@ -98,6 +106,13 @@ To use Qubes OS Builder v2, you need to have a ``builder.yml`` configuration fil
98106
options:
99107
image: "qubes-builder-fedora:latest"
100108
109+
If you want use the ``podman`` executor, you have to enable socket activation, with:
110+
111+
112+
.. code:: console
113+
114+
# systemctl --user enable --now podman.socket
115+
101116
Using Builder v2
102117
----------------
103118

0 commit comments

Comments
 (0)