Here is the error message I am getting:
-> Building installer-qubes-os iso for fc32
Traceback (most recent call last):
File "/usr/lib/python3.8/site-packages/pykickstart/load.py", line 93, in _load_file
with open(filename, 'rb') as fh:
FileNotFoundError: [Errno 2] No such file or directory: '/home/user/qubes-builder/qubes-src/installer-qubes-os/conf/iso-full-online.ks'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.8/site-packages/pykickstart/parser.py", line 825, in readKickstart
s = load_to_str(f)
File "/usr/lib/python3.8/site-packages/pykickstart/load.py", line 45, in load_to_str
return _load_file(location)
File "/usr/lib/python3.8/site-packages/pykickstart/load.py", line 99, in _load_file
raise KickstartError(_('Error opening file: %s') % str(e))
pykickstart.errors.KickstartError: Error opening file: [Errno 2] No such file or directory: '/home/user/qubes-builder/qubes-src/installer-qubes-os/conf/iso-full-online.ks'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/user/qubes-src/installer-qubes-os/scripts/ksparser", line 96, in <module>
sys.exit(main())
File "/home/user/qubes-src/installer-qubes-os/scripts/ksparser", line 57, in main
ksparser.readKickstart(args.ks)
File "/usr/lib/python3.8/site-packages/pykickstart/parser.py", line 827, in readKickstart
raise KickstartError(_("Unable to open input kickstart file: %s") % str(e), lineno=0)
pykickstart.errors.KickstartError: The following problem occurred on line 0 of the kickstart file:
Unable to open input kickstart file: Error opening file: [Errno 2] No such file or directory: '/home/user/qubes-builder/qubes-src/installer-qubes-os/conf/iso-full-online.ks'
make[1]: *** [Makefile:116: iso-prepare] Error 1
--> build failed!
make: *** [Makefile:575: iso] Error 1
[user@builder qubes-builder]$
For clarity, I will paste the contents of the following files: builder.conf
, comps-dom0.xml
and qubes-kickstart.cfg
.
builder.conf:
# 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
INSTALLER_KICKSTART=/home/user/qubes-builder/qubes-src/installer-qubes-os/conf/iso-full-online.ks
comps-dom0.xml
PrivateBin Paste
qubes-kickstart.cfg
# Kickstart file for composing the "Qubes" spin of Fedora
# Package manifest for the compose. Uses repo group metadata to translate groups.
# (@base is added by default unless you add --nobase to %packages)
# (default groups for the configured repos are added by --default)
repo --name=fedora --gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-32-primary --ignoregroups=true --metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-32&arch=x86_64
repo --name=fedora-updates --gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-32-primary --ignoregroups=true --metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f32&arch=x86_64
repo --name=installer --baseurl=file:///tmp/qubes-installer/yum/installer/
repo --name=qubes-dom0 --baseurl=file:///tmp/qubes-installer/yum/qubes-dom0/
repo --name=dom0-updates --baseurl=file:///tmp/qubes-installer/yum/dom0-updates/
%packages
@core
@base
@base-x --nodefaults
@sound-basic
@fonts
@hardware-support
@qubes
@qubes-ui
@anaconda-tools
@fedora
@debian
@whonix
@i3
# weaks dependencies
-adobe-source-code-pro-fonts
-compat-f32-dejavu-sans-fonts
-compat-f32-dejavu-sans-mono-fonts
-compat-f32-dejavu-serif-fonts
-crypto-policies-scripts
-deltarpm
-dnfdaemon-selinux
-fips-mode-setup
-flac
-fwupd-plugin-flashrom
-fwupd-plugin-modem-manager
-gcc-gdb-plugin
-geolite2-city
-geolite2-country
-gnupg2-smime
-gstreamer1-plugins-good-qt
-lame
-libsss_autofs
-libsss_sudo
-libxcrypt-compat
-libyui-gtk
-libyui-mga-gtk
-libyui-mga-qt
-libyui-qt
-libyui-qt-graph
-mkpasswd
-ntfs-3g-system-compression
-oddjob-mkhomedir
-openssl-pkcs11
-openbox
-opus-tools
-perl-IO-Compress
-perl-IO-Socket-SSL
-perl-Math-BigInt
-perl-Mozilla-CA
-pigz
-pinentry
-python-systemd-doc
-python-unversioned-command
-python3-unbound
-rpm-plugin-systemd-inhibit
-sssd-nfs-idmap
-trousers
# selected dependencies
-blueberry
%end
Any ideas for the “FileNotFoundError” ? I mean, the file on the path that it complains do exists. Which makes this error really cryptic.
A bit closer look also reveals another cryptic situation: on the error message I pasted above, the upmost Traceback reads,
File "/usr/lib/python3.8/site-packages/pykickstart/load.py"
However, this file does NOT exist on the fedora-36 /usr/lib/
folder!
There is only /usr/lib/python3.10/
folder there. So, I am really baffled as to how would the script make the call to a python3.8 folder under /usr/lib.
A day after EDIT:
I figured that the solution to this error is having the
INSTALLER_KICKSTART=/home/user/qubes-builder/qubes-src/installer-qubes-os/conf/iso-full-online.ks
line in the builder.conf
file WITHOUT the /qubes-builder/
part. So, @51lieal your original builder.conf
file is correct with that line.
Now I, too, am using the INSTALLER_KICKSTART as you are:
INSTALLER_KICKSTART=/home/user/qubes-src/installer-qubes-os/conf/iso-full-online.ks
The reason for this is, as far as I understand the documentation is that the building process uses chroot
and creates a root file system environment within the /home/user/qubes-builder/
and goes deeper from that part.