This is for anyone who want to try building A full build of qubes os, this will include xfce, kde, i3 and gnome desktop environment which you can choose at installation. The gnome DE is actually a minimal gnome functionality, and there’s known bug (cosmetics). The packages is downloaded from fedora, I’ve only add dash to dock package.
-
Prerequisite :
- Fedora 35/36 VM with 30GB storage, 4 vcpu, 6 gb ram.
-
Get the qubes master key
-
gpg2 --import /usr/share/qubes/qubes-master-key.asc
-
gpg2 --edit-key qubes
-
trust
-
5
-
y
-
q
-
-
Get the qubes developer key
-
wget https://keys.qubes-os.org/keys/qubes-developers-keys.asc
-
gpg2 --import qubes-developers-keys.asc
-
-
Qubes Builder
-
-
cd qubes-builder
Verify its integrity
-
git tag -v `git describe`
Write builder.conf
-
cat >>builder.conf<< EOF
-
# vim: ft=make
VERBOSE ?= 2
BACKEND_VMM ?= xen
GIT_BASEURL ?= https://github.com
GIT_PREFIX ?= QubesOS/qubes-
RELEASE ?= 4.1
DIST_DOM0 ?= fc32
DISTS_VM ?=
COMPONENTS = \
installer-qubes-os \
linux-yum \
builder-rpm \
linux-template-builder
BUILDER_PLUGINS ?= builder-rpm
USE_QUBES_REPO_VERSION = 4.1
USE_QUBES_REPO_TESTING = 1
ISO_USE_KERNEL_LATEST = 1
ISO_VERSION = 5111341
INSTALLER_KICKSTART=/home/user/qubes-src/installer-qubes-os/conf/travis-iso-full.ks
EOF
- Get sources and install deps
-
make get-sources
-
make install-deps
-
We use pre-built qubes packages, how long the build is depends on your internet connection, we would change qubes kickstart and qubes dom0 comp with my own.
-
Qubes kickstart
-
rm qubes-src/installer-qubes-os/conf/qubes-kickstart.cfg
-
wget -P qubes-src/installer-qubes-os/conf https://raw.githubusercontent.com/51lieal/qubes-installer-qubes-os/51lieal-patch-1/conf/qubes-kickstart.cfg
-
-
Qubes dom0 comps
-
rm qubes-src/installer-qubes-os/meta-packages/comps/comps-dom0.xml
-
wget -P qubes-src/installer-qubes-os/meta-packages/comps https://raw.githubusercontent.com/51lieal/qubes-meta-packages/51lieal-patch-1/comps/comps-dom0.xml
-
-
Build Qubes
-
make remount
-
make iso
-
After finish, you could find your iso in ~/qubes-builder/iso
Here’s the video of this guide:
Btw, you couldn’t use gnome built-in screencast since I’ve only provided the minimal gnome functionality, but it’s already good enough if you want to customize it. It need take some time for me to research about what package need to remove in dom0.