You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: developer/building/qubes-builder-v2.rst
+19-4Lines changed: 19 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,7 +14,7 @@ In the second generation of Qubes OS builder, container or disposable qube isola
14
14
Setup
15
15
-----
16
16
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.
18
18
19
19
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.
20
20
@@ -27,7 +27,7 @@ This is a simple setup using a docker executor. This is a good default choice; i
27
27
28
28
3. Installing dependencies
29
29
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:
31
31
32
32
- for Fedora, use:
33
33
@@ -45,7 +45,7 @@ This is a simple setup using a docker executor. This is a good default choice; i
45
45
46
46
If you have installed dependencies in the template, close it, and (re)start the development qube.
47
47
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:
49
49
50
50
.. code:: console
51
51
@@ -55,16 +55,24 @@ This is a simple setup using a docker executor. This is a good default choice; i
55
55
56
56
5. Finally, you need to generate a docker image:
57
57
58
+
Depending on your choice of a container runtime, run one of:
59
+
58
60
.. code:: console
59
61
60
62
$ tools/generate-container-image.sh docker
61
63
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:
63
69
64
70
.. code:: bash
65
71
66
72
binds+=( '/var/lib/docker' )
67
73
74
+
If you are using ``podman`` this is not necessary, as the container images are stored in ``~/.local/share/containers/``.
75
+
68
76
Configuration
69
77
-------------
70
78
@@ -98,6 +106,13 @@ To use Qubes OS Builder v2, you need to have a ``builder.yml`` configuration fil
98
106
options:
99
107
image: "qubes-builder-fedora:latest"
100
108
109
+
If you want use the ``podman`` executor, you have to enable socket activation, with:
0 commit comments