I have finally customized fedora 44 xfce with kiwi-ng. It took me and google AI about 20 - 30 hours to successfully create a customized, up-to-date fedora 44 live iso. I started out asking google AI to give me a workable config.xml template. I added repositories (including rpm fusion), programs, etc. I ran kiwi-ng many times and got many errors but with the help of google AI I finally got a config.xml that worked.
The first iso booted but asked for a user name and a password. I told google my problem and It told me to add “user” in the config file. I re-ran the kiwi-ng (after deleting all of the kiwi output and the iso booted fine. I supplied the password which I had added to the config file and I was able to log on.
I am uploading my working config.xml file. (I can upload the config.sh in text form if there is any interest)
```<image schemaversion="8.4" name="fedora44-xfce-custom">
<description type="system">
<author>donatom</author>
<contact>gmail</contact>
<specification>Fedora 44 XFCE Custom Live ISO</specification>
</description>
<!-- 1. Preferences Block (Strictly sequenced to match the KIWI RNG schema definition) -->
<!-- 1. Preferences Block -->
<preferences>
<version>44.0.0</version>
<packagemanager>dnf5</packagemanager>
<rpm-check-signatures>false</rpm-check-signatures>
<type image="iso" flags="dmsquash" firmware="uefi" kernelcmdline="root=live:CDLABEL=fedora44-xfce-custom.x86_64 rd.live.image rootdelay=5 nomodeset console=ttyS0 hostname=fedora44-xfce locales=en_US.UTF-8 keyboard=us timezone=America/Los_Angeles" primary="true" filesystem="ext4">
<bootloader name="grub2" timeout="10"/>
</type>
</preferences>
<!-- 2. Profiles Block -->
<profiles>
<profile name="xfce-live" description="Main XFCE Live Environment"/>
<profile name="debug" description="Debug Tools Environment"/>
</profiles>
<!-- Add this section to define your credentials -->
<users>
<user name="root" password="password" pwdformat="plain"/>
<user name="fedora" password="password" pwdformat="plain" home="/home/fedora" groups="wheel"/>
</users>
<!-- 4. Packages Block -->
<packages type="bootstrap">
<package name="filesystem"/>
<package name="bash"/>
<package name="coreutils"/>
<package name="rpm"/>
<package name="dnf"/>
<package name="glibc"/>
</packages>
<packages type="image">
<!-- Core Live ISO Essentials -->
<package name="kernel"/>
<package name="dracut-live"/>
<package name="grub2-efi-x64"/>
<package name="shim-x64"/>
<package name="grub2-pc-modules"/>
<package name="dracut-config-generic"/>
<package name="linux-firmware"/>
<package name="kernel-modules"/>
<package name="kernel-modules-extra"/>
<package name="dracut-kiwi-live"/>
<package name="dracut"/>
</packages>
<packages type="image">
<!-- Your XFCE Profile Target -->
<package name="@xfce-desktop-environment"/>
</packages>
<packages type="image" profiles="xfce-live">
<package name="xfce4-session"/>
<package name="xfce4-panel"/>
<package name="xfdesktop"/>
<package name="xfwm4"/>
<package name="thunar"/>
<package name="xfce4-settings"/>
<package name="xfce4-terminal"/>
<package name="lightdm"/>
<package name="lightdm-gtk"/>
<package name="NetworkManager"/>
<package name="NetworkManager-wifi"/>
<package name="pipewire"/>
<package name="wireplumber"/>
<package name="thunar-archive-plugin"/>
<package name="file-roller"/>
<package name="firefox"/>
<package name="google-noto-sans-fonts"/>
<package name="google-noto-emoji-fonts"/>
<package name="dnf-plugins-core"/>
<package name="fedora-cisco-openh264"/>
<package name="linux-firmware"/>
<package name="vlc"/>
<package name="i3"/>
<package name="firejail"/>
<package name="nmap"/>
<package name="arp-scan"/>
<package name="blueman"/>
<package name="bluez-tools"/>
<package name="bluez"/>
<package name="pavucontrol"/>
<package name="git"/>
<package name="tar"/>
<package name="gedit"/>
<package name="ImageMagick"/>
<package name="google-chrome-stable"/>
<package name="gparted"/>
<package name="kernel-headers"/>
<package name="kernel-devel"/>
<package name="gcc"/>
<package name="anaconda"/>
<package name="anaconda-live"/>
<package name="gstreamer1-plugin-openh264"/>
<package name="mozilla-openh264"/>
<package name="grubby"/>
<package name="plymouth-theme-charge"/>
<package name="grub2-breeze-theme"/>
<package name="selinux-policy-targeted"/>
<package name="dhclient"/>
<package name="pattern:virtualization"/>
<package name="pattern:libreoffice"/>
<package name="pattern:xfce-apps"/>
<package name="pattern:xfce-extra-plugins"/>
</packages>
<packages type="image">
<package name="nano"/>
<package name="vim"/>
<package name="htop"/>
<package name="wget"/>
<package name="curl"/>
</packages>
<packages type="image" profiles="debug">
<package name="strace"/>
<package name="lsof"/>
<package name="tcpdump"/>
</packages>
<!-- 3. Repositories Block -->
<repository type="rpm-md" alias="fedora" sourcetype="metalink">
<source path="https://mirrors.fedoraproject.org/metalink?repo=fedora-44&arch=x86_64"/>
</repository>
<repository type="rpm-md" alias="fedora-updates" sourcetype="metalink">
<source path="https://mirrors.fedoraproject.org/metalink?repo=updates-released-f44&arch=x86_64"/>
</repository>
<repository type="rpm-md" alias="rpmfusion-free" sourcetype="mirrorlist">
<source path="http://mirrors.rpmfusion.org/mirrorlist?repo=free-fedora-44&arch=x86_64"/>
</repository>
<repository type="rpm-md" alias="rpmfusion-free-updates" sourcetype="mirrorlist">
<source path="http://mirrors.rpmfusion.org/mirrorlist?repo=free-fedora-updates-released-44&arch=x86_64"/>
</repository>
<repository type="rpm-md" alias="rpmfusion-nonfree" sourcetype="mirrorlist">
<source path="http://mirrors.rpmfusion.org/mirrorlist?repo=nonfree-fedora-44&arch=x86_64"/>
</repository>
<repository type="rpm-md" alias="rpmfusion-nonfree-updates" sourcetype="mirrorlist">
<source path="http://mirrors.rpmfusion.org/mirrorlist?repo=nonfree-fedora-updates-released-44&arch=x86_64"/>
</repository>
</image>
```