From 4ed24fa16973cd051c8241685efac3a1f1fa9f4d714e9090852d18dfa3b5118b Mon Sep 17 00:00:00 2001
From: Fabian Vogt <fvogt@suse.com>
Date: Wed, 6 Mar 2019 14:30:09 +0000
Subject: [PATCH] Accepting request 682168 from
 home:mauriziogalli:branches:Virtualization:Appliances:Images:openSUSE-Tumbleweed

- Prevent creation of livecd-leap-xfce.kiwi in pre-checkin.sh
- Removed white spaces in pre-checkin.sh
- Fixed indendation in config.sh
- Temporarily removed live-leap-xfce.kiwi
- Added Xfce System Role to installer as option via xfce-changecontrolxml.xsl
- Added config and files for the installer to use Xfce System Role
- Added Xfce TW Live Image kiwi file and related configs

OBS-URL: https://build.opensuse.org/request/show/682168
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Images:openSUSE-Tumbleweed/livecd-openSUSE?expand=0&rev=19
---
 config.sh                    |  16 ++
 list-xfce.sh                 |  49 +++++
 livecd-openSUSE.changes      |  23 +++
 livecd-tumbleweed-xfce.kiwi  | 388 +++++++++++++++++++++++++++++++++++
 pre-checkin.sh               |   7 +-
 xfce-changecontrolxml.tar.xz |   3 +
 6 files changed, 483 insertions(+), 3 deletions(-)
 create mode 100644 list-xfce.sh
 create mode 100644 livecd-tumbleweed-xfce.kiwi
 create mode 100644 xfce-changecontrolxml.tar.xz

diff --git a/config.sh b/config.sh
index c348c82..b36e54b 100644
--- a/config.sh
+++ b/config.sh
@@ -81,6 +81,13 @@ zypper --non-interactive rm -u skelcd-openSUSE || :
 # Remove the zypper locks needed for a slimmer system
 zypper rl $(seq 1 $(zypper ll | wc -l))
 
+if [ "$desktop" = "xfce" ]; then
+   # Change /control.xml to use xfce as system role
+   xsltproc /xfce-changecontrolxml.xsl /etc/YaST2/control.xml > /control.xml
+   # Not needed anymore
+   rm /xfce-changecontrolxml.xsl
+fi
+
 #======================================
 # /etc/sudoers hack to fix #297695 
 # (Installation Live CD: no need to ask for password of root)
@@ -106,6 +113,14 @@ if [ "$desktop" = "kde" ]; then
     # Set the application as being "trusted"
     chmod a+x /usr/share/kio_desktop/DesktopLinks/installation.desktop
     chmod a+x /usr/share/kio_desktop/DesktopLinks/upgrade.desktop || :
+elif [ "$desktop" = "xfce" ]; then
+    # Add Installation icon to desktop folder
+    mkdir -p /home/linux/.config /home/linux/Desktop
+    echo 'XDG_DESKTOP_DIR="$HOME/Desktop"' > /home/linux/.config/user-dirs.dirs
+    cp /usr/share/applications/installation.desktop /home/linux/Desktop/
+    # Set the application as being "trusted"
+    chown -R linux /home/linux/Desktop/installation.desktop
+    chmod a+x /home/linux/Desktop/installation.desktop
 # else case disabled: 'x11' (rescue) does not contain the installer, GNOME Shell has no concept of 'desktop'
 #else
 #    # Add Installation icon to desktop folder
@@ -133,6 +148,7 @@ baseUpdateSysConfig /etc/sysconfig/console CONSOLE_ENCODING "UTF-8"
 
 [ "$desktop" = "gnome" ] && displaymanager=gdm
 [ "$desktop" = "kde" ] && displaymanager=sddm
+[ "$desktop" = "xfce" ] && displaymanager=lightdm
 [ "$desktop" = "x11" ] && displaymanager=lightdm
 baseUpdateSysConfig /etc/sysconfig/displaymanager DISPLAYMANAGER $displaymanager
 
diff --git a/list-xfce.sh b/list-xfce.sh
new file mode 100644
index 0000000..51aff20
--- /dev/null
+++ b/list-xfce.sh
@@ -0,0 +1,49 @@
+install branding-openSUSE
+buildignore samba-libs
+install yast2-trans-stats
+install patterns-media-rest_cd_x11
+installPattern rest_cd_x11
+install patterns-xfce-xfce
+installPattern xfce
+install openSUSE-release-livecd-xfce
+buildignore release-notes-openSUSE
+buildignore gnome-themes-accessibility
+buildignore xlockmore
+buildignore unzip-doc
+buildignore gtk2-immodule-inuktitut
+buildignore gtk2-immodule-thai
+buildignore gtk2-immodule-vietnamese
+buildignore gtk3-immodule-inuktitut
+buildignore gtk3-immodule-thai
+buildignore gtk3-immodule-vietnamese
+buildignore ImageMagick
+buildignore awesfx
+buildignore sbl
+buildignore open-vm-tools
+buildignore gnome-online-accounts
+buildignore snapper
+install live-net-installer
+install skelcd-openSUSE # Needed for README.BETA
+install setxkbmap # Needed by yast2-keyboard
+install yast2-qt-branding-openSUSE
+buildignore aspell-en
+buildignore avahi
+buildignore fprintd
+install libxslt-tools
+archive xfce-changecontrolxml.tar.xz
+
+# Remove xfce pattern bloat
+buildignore sound-juicer
+buildignore remmina
+buildignore gnome-games
+
+# Remove useless xfce panel plugins
+buildignore xfce4-panel-plugin-xkb
+buildignore xfce4-panel-plugin-notes
+
+# Remove Libreoffice as it's too big
+buildignore libreoffice
+
+# PackageKit is not needed
+buildignore PackageKit
+buildignore PackageKit-gstreamer-plugin
\ No newline at end of file
diff --git a/livecd-openSUSE.changes b/livecd-openSUSE.changes
index e656bbb..df1c7d8 100644
--- a/livecd-openSUSE.changes
+++ b/livecd-openSUSE.changes
@@ -1,3 +1,26 @@
+-------------------------------------------------------------------
+Wed Mar  6 13:24:11 UTC 2019 - Maurizio Galli <maurizio.galli@gmail.com>
+
+- Prevent creation of livecd-leap-xfce.kiwi in pre-checkin.sh
+- Removed white spaces in pre-checkin.sh
+
+-------------------------------------------------------------------
+Wed Mar  6 09:16:09 UTC 2019 - Maurizio Galli <maurizio.galli@gmail.com>
+
+- Fixed indendation in config.sh
+- Temporarily removed live-leap-xfce.kiwi
+- Added Xfce System Role to installer as option via xfce-changecontrolxml.xsl
+
+-------------------------------------------------------------------
+Sat Mar  2 18:07:22 UTC 2019 - Maurizio Galli <maurizio.galli@gmail.com>
+
+- Added config and files for the installer to use Xfce System Role
+
+-------------------------------------------------------------------
+Sat Mar  2 06:40:53 UTC 2019 - Maurizio Galli <maurizio.galli@gmail.com>
+
+- Added Xfce TW Live Image kiwi file and related configs
+
 -------------------------------------------------------------------
 Mon Feb 18 14:50:30 UTC 2019 - Fabian Vogt <fvogt@suse.com>
 
diff --git a/livecd-tumbleweed-xfce.kiwi b/livecd-tumbleweed-xfce.kiwi
new file mode 100644
index 0000000..82e8756
--- /dev/null
+++ b/livecd-tumbleweed-xfce.kiwi
@@ -0,0 +1,388 @@
+<?xml version="1.0"?>
+<image schemaversion="6.5" name="openSUSE-Tumbleweed-XFCE-Live" displayname="openSUSE Tumbleweed XFCE Live">
+  <description type="system">
+    <author>openSUSE Project</author>
+    <contact>opensuse@opensuse.org</contact>
+    <specification>openSUSE Live system</specification>
+  </description>
+  <profiles>
+    <profile name="noEFI" description="no EFI for x86" import="true" arch="i686"/>
+    <profile name="EFI" description="EFI for x86_64" import="true" arch="x86_64"/>
+  </profiles>
+  <preferences profiles="EFI">
+    <type primary="true" bootprofile="default" kernelcmdline="splash=silent quiet" flags="overlay" hybrid="true" hybridpersistent="true" hybridpersistent_filesystem="ext4" image="iso" firmware="uefi" volid="openSUSE_Tumbleweed_XFCE_Live" mediacheck="true"/>
+    <version>2.8.0</version>
+    <bootloader-theme>openSUSE</bootloader-theme>
+    <bootsplash-theme>openSUSE</bootsplash-theme>
+    <packagemanager>zypper</packagemanager>
+    <rpm-check-signatures>false</rpm-check-signatures>
+    <locale>en_US</locale>
+    <rpm-excludedocs>true</rpm-excludedocs>
+  </preferences>
+  <preferences profiles="noEFI">
+    <type primary="true" bootprofile="default" kernelcmdline="splash=silent quiet" flags="overlay" hybrid="true" hybridpersistent="true" hybridpersistent_filesystem="ext4" image="iso" firmware="bios" volid="openSUSE_Tumbleweed_XFCE_Live" mediacheck="true"/>
+    <version>2.8.0</version>
+    <bootloader-theme>openSUSE</bootloader-theme>
+    <bootsplash-theme>openSUSE</bootsplash-theme>
+    <packagemanager>zypper</packagemanager>
+    <rpm-check-signatures>false</rpm-check-signatures>
+    <locale>en_US</locale>
+    <rpm-excludedocs>true</rpm-excludedocs>
+  </preferences>
+  <users>
+    <user groups="root" name="root" password="" home="/root"/>
+  </users>
+  <packages type="image" patternType="plusRecommended">
+    <package name="kernel-default"/>
+    <package name="gfxboot-branding-openSUSE" bootinclude="true" bootdelete="true"/>
+    <package name="grub2-branding-openSUSE" bootinclude="true"/>
+    <package name="dracut-kiwi-live"/>
+    <!-- workaround for bnc#892087 -->
+    <package name="e2fsprogs" bootinclude="true"/>
+    <package name="pam"/>
+    <package name="pam-config"/>
+    <package name="udev"/>
+    <package name="aaa_base"/>
+    <package name="tar"/>
+    <package name="patch"/>
+    <package name="zypper"/>
+    <package name="grub2-x86_64-efi" arch="x86_64"/>
+    <package name="memtest86+"/>
+    <package name="live-langset-data"/>
+    <package name="live-add-yast-repos"/>
+    <archive name="livecd-udev.tar.xz"/>
+    <archive name="xfce-changecontrolxml.tar.xz"/>
+    
+    <!-- list-common.sh -->
+    <package name="aaa_base" replaces="gutenprint"/>
+    <ignore name="gutenprint"/>
+    <package name="aaa_base" replaces="poppler-data"/>
+    <ignore name="poppler-data"/>
+    <package name="aaa_base" replaces="tin"/>
+    <ignore name="tin"/>
+    <package name="aaa_base" replaces="desktop-translations"/>
+    <ignore name="desktop-translations"/>
+    <package name="aaa_base" replaces="ft2demos"/>
+    <ignore name="ft2demos"/>
+    <package name="aaa_base" replaces="hplip-hpijs"/>
+    <ignore name="hplip-hpijs"/>
+    <package name="aaa_base" replaces="libreoffice-base"/>
+    <ignore name="libreoffice-base"/>
+    <package name="aaa_base" replaces="libreoffice-mailmerge"/>
+    <ignore name="libreoffice-mailmerge"/>
+    <package name="aaa_base" replaces="libreoffice-math"/>
+    <ignore name="libreoffice-math"/>
+    <package name="aaa_base" replaces="libreoffice-filters-optional"/>
+    <ignore name="libreoffice-filters-optional"/>
+    <package name="aaa_base" replaces="libreoffice-pyuno"/>
+    <ignore name="libreoffice-pyuno"/>
+    <package name="aaa_base" replaces="readline-doc"/>
+    <ignore name="readline-doc"/>
+    <package name="aaa_base" replaces="graphviz"/>
+    <ignore name="graphviz"/>
+    <package name="aaa_base" replaces="linux-kernel-headers"/>
+    <ignore name="linux-kernel-headers"/>
+    <package name="aaa_base" replaces="bash-doc"/>
+    <ignore name="bash-doc"/>
+    <package name="aaa_base" replaces="hplip"/>
+    <ignore name="hplip"/>
+    <package name="aaa_base" replaces="gimp-plugins-python"/>
+    <ignore name="gimp-plugins-python"/>
+    <package name="aaa_base" replaces="patterns-openSUSE-gnome_basis_opt"/>
+    <ignore name="patterns-openSUSE-gnome_basis_opt"/>
+    <package name="aaa_base" replaces="patterns-openSUSE-gnome_admin"/>
+    <ignore name="patterns-openSUSE-gnome_admin"/>
+    <package name="aaa_base" replaces="patterns-openSUSE-gnome_multimedia_opt"/>
+    <ignore name="patterns-openSUSE-gnome_multimedia_opt"/>
+    <package name="aaa_base" replaces="patterns-openSUSE-gnome_imaging_opt"/>
+    <ignore name="patterns-openSUSE-gnome_imaging_opt"/>
+    <package name="aaa_base" replaces="patterns-openSUSE-gnome_office_opt"/>
+    <ignore name="patterns-openSUSE-gnome_office_opt"/>
+    <package name="aaa_base" replaces="patterns-openSUSE-apparmor_opt"/>
+    <ignore name="patterns-openSUSE-apparmor_opt"/>
+    <package name="aaa_base" replaces="patterns-openSUSE-enhanced_base_opt"/>
+    <ignore name="patterns-openSUSE-enhanced_base_opt"/>
+    <package name="aaa_base" replaces="patterns-openSUSE-fonts_opt"/>
+    <ignore name="patterns-openSUSE-fonts_opt"/>
+    <package name="aaa_base" replaces="patterns-openSUSE-imaging_opt"/>
+    <ignore name="patterns-openSUSE-imaging_opt"/>
+    <package name="aaa_base" replaces="patterns-openSUSE-kde_utilities_opt"/>
+    <ignore name="patterns-openSUSE-kde_utilities_opt"/>
+    <package name="aaa_base" replaces="patterns-openSUSE-multimedia_opt"/>
+    <ignore name="patterns-openSUSE-multimedia_opt"/>
+    <package name="aaa_base" replaces="patterns-openSUSE-non_oss_opt"/>
+    <ignore name="patterns-openSUSE-non_oss_opt"/>
+    <package name="aaa_base" replaces="patterns-openSUSE-office_opt"/>
+    <ignore name="patterns-openSUSE-office_opt"/>
+    <package name="aaa_base" replaces="patterns-openSUSE-x11_opt"/>
+    <ignore name="patterns-openSUSE-x11_opt"/>
+    <package name="aaa_base" replaces="patterns-gnome-gnome_basis_opt"/>
+    <ignore name="patterns-gnome-gnome_basis_opt"/>
+    <package name="aaa_base" replaces="patterns-gmome-gnome_admin"/>
+    <ignore name="patterns-gmome-gnome_admin"/>
+    <package name="aaa_base" replaces="patterns-gnome-gnome_multimedia_opt"/>
+    <ignore name="patterns-gnome-gnome_multimedia_opt"/>
+    <package name="aaa_base" replaces="patterns-gnome-gnome_imaging_opt"/>
+    <ignore name="patterns-gnome-gnome_imaging_opt"/>
+    <package name="aaa_base" replaces="patterns-gnome-gnome_office_opt"/>
+    <ignore name="patterns-gnome-gnome_office_opt"/>
+    <package name="aaa_base" replaces="patterns-base-apparmor_opt"/>
+    <ignore name="patterns-base-apparmor_opt"/>
+    <package name="aaa_base" replaces="patterns-base-enhanced_base_opt"/>
+    <ignore name="patterns-base-enhanced_base_opt"/>
+    <package name="aaa_base" replaces="patterns-base-update_test"/>
+    <ignore name="patterns-base-update_test"/>
+    <package name="aaa_base" replaces="patterns-fonts-fonts_opt"/>
+    <ignore name="patterns-fonts-fonts_opt"/>
+    <package name="aaa_base" replaces="patterns-desktop-imaging_opt"/>
+    <ignore name="patterns-desktop-imaging_opt"/>
+    <package name="aaa_base" replaces="patterns-kde-kde_utilities_opt"/>
+    <ignore name="patterns-kde-kde_utilities_opt"/>
+    <package name="aaa_base" replaces="patterns-desktop-multimedia_opt"/>
+    <ignore name="patterns-desktop-multimedia_opt"/>
+    <package name="aaa_base" replaces="patterns-openSUSE-non_oss_opt"/>
+    <ignore name="patterns-openSUSE-non_oss_opt"/>
+    <package name="aaa_base" replaces="patterns-office-office_opt"/>
+    <ignore name="patterns-office-office_opt"/>
+    <package name="aaa_base" replaces="patterns-base-x11_opt"/>
+    <ignore name="patterns-base-x11_opt"/>
+    <package name="aaa_base" replaces="make"/>
+    <ignore name="make"/>
+    <package name="aaa_base" replaces="netpbm"/>
+    <ignore name="netpbm"/>
+    <package name="aaa_base" replaces="p7zip"/>
+    <ignore name="p7zip"/>
+    <package name="aaa_base" replaces="busybox-static"/>
+    <ignore name="busybox-static"/>
+    <package name="aaa_base" replaces="inxi"/>
+    <ignore name="inxi"/>
+    <package name="gfxboot"/>
+    <package name="cracklib"/>
+    <package name="cracklib-dict-full"/>
+    <package name="aaa_base" replaces="glibc-32bit"/>
+    <ignore name="glibc-32bit"/>
+    <package name="aaa_base" replaces="libvdpau_r300"/>
+    <ignore name="libvdpau_r300"/>
+    <package name="aaa_base" replaces="libvdpau_radeonsi"/>
+    <ignore name="libvdpau_radeonsi"/>
+    <package name="aaa_base" replaces="libvdpau_r600"/>
+    <ignore name="libvdpau_r600"/>
+    <package name="aaa_base" replaces="pavucontrol"/>
+    <ignore name="pavucontrol"/>
+    <package name="aaa_base" replaces="libqmi-tools"/>
+    <ignore name="libqmi-tools"/>
+    <package name="aaa_base" replaces="python3-pip"/>
+    <ignore name="python3-pip"/>
+    <package name="aaa_base" replaces="multipath-tools-rbd"/>
+    <ignore name="multipath-tools-rbd"/>
+    <package name="aaa_base" replaces="xorg-x11-Xvnc"/>
+    <ignore name="xorg-x11-Xvnc"/>
+    <package name="aaa_base" replaces="cabextract"/>
+    <ignore name="cabextract"/>
+    <package name="aaa_base" replaces="sssd"/>
+    <ignore name="sssd"/>
+    <package name="aaa_base" replaces="db-utils"/>
+    <ignore name="db-utils"/>
+    <package name="aaa_base" replaces="deltarpm"/>
+    <ignore name="deltarpm"/>
+    <package name="aaa_base" replaces="dnsmasq"/>
+    <ignore name="dnsmasq"/>
+    <package name="aaa_base" replaces="fribidi"/>
+    <ignore name="fribidi"/>
+    <package name="aaa_base" replaces="ipmitool"/>
+    <ignore name="ipmitool"/>
+    <package name="aaa_base" replaces="irda"/>
+    <ignore name="irda"/>
+    <package name="aaa_base" replaces="lomoco"/>
+    <ignore name="lomoco"/>
+    <package name="aaa_base" replaces="mksh"/>
+    <ignore name="mksh"/>
+    <package name="aaa_base" replaces="system-config-printer-applet"/>
+    <ignore name="system-config-printer-applet"/>
+    <package name="aaa_base" replaces="udev-configure-printer"/>
+    <ignore name="udev-configure-printer"/>
+    <package name="aaa_base" replaces="xorg-x11"/>
+    <ignore name="xorg-x11"/>
+    <package name="aaa_base" replaces="xorg-x11-essentials"/>
+    <ignore name="xorg-x11-essentials"/>
+    <package name="aaa_base" replaces="xorg-x11-server-extra"/>
+    <ignore name="xorg-x11-server-extra"/>
+    <package name="xdm"/>
+    <package name="aaa_base" replaces="icewm"/>
+    <ignore name="icewm"/>
+    <package name="aaa_base" replaces="baekmuk-ttf-fonts"/>
+    <ignore name="baekmuk-ttf-fonts"/>
+    <package name="aaa_base" replaces="google-droid-fonts"/>
+    <ignore name="google-droid-fonts"/>
+    <package name="aaa_base" replaces="efont-unicode-bitmap-fonts"/>
+    <ignore name="efont-unicode-bitmap-fonts"/>
+    <package name="aaa_base" replaces="baekmuk-bitmap-fonts"/>
+    <ignore name="baekmuk-bitmap-fonts"/>
+    <package name="aaa_base" replaces="intlfonts-chinese-big-bitmap-fonts"/>
+    <ignore name="intlfonts-chinese-big-bitmap-fonts"/>
+    <package name="aaa_base" replaces="strace"/>
+    <ignore name="strace"/>
+    <package name="aaa_base" replaces="tcsh"/>
+    <ignore name="tcsh"/>
+    <package name="aaa_base" replaces="update-test-*"/>
+    <ignore name="update-test-*"/>
+    <package name="aaa_base" replaces="usbmuxd"/>
+    <ignore name="usbmuxd"/>
+    <package name="aaa_base" replaces="gnome-keyring-pam"/>
+    <ignore name="gnome-keyring-pam"/>
+    <package name="aaa_base" replaces="apparmor-docs"/>
+    <ignore name="apparmor-docs"/>
+    <package name="aaa_base" replaces="mutt-doc"/>
+    <ignore name="mutt-doc"/>
+    <package name="aaa_base" replaces="cyrus-sasl"/>
+    <ignore name="cyrus-sasl"/>
+    <package name="aaa_base" replaces="unar"/>
+    <ignore name="unar"/>
+    <package name="aaa_base" replaces="jing"/>
+    <ignore name="jing"/>
+    <package name="aaa_base" replaces="icedtea-web"/>
+    <ignore name="icedtea-web"/>
+    <package name="aaa_base" replaces="autofs"/>
+    <ignore name="autofs"/>
+    <package name="aaa_base" replaces="expect"/>
+    <ignore name="expect"/>
+    <package name="aaa_base" replaces="m4"/>
+    <ignore name="m4"/>
+    <package name="aaa_base" replaces="mutt"/>
+    <ignore name="mutt"/>
+    <package name="aaa_base" replaces="net-snmp"/>
+    <ignore name="net-snmp"/>
+    <package name="aaa_base" replaces="recode"/>
+    <ignore name="recode"/>
+    <package name="aaa_base" replaces="awesfx"/>
+    <ignore name="awesfx"/>
+    <package name="aaa_base" replaces="espeak"/>
+    <ignore name="espeak"/>
+    <package name="aaa_base" replaces="pam_mount"/>
+    <ignore name="pam_mount"/>
+    <package name="aaa_base" replaces="groff-full"/>
+    <ignore name="groff-full"/>
+    <package name="aaa_base" replaces="tuned"/>
+    <ignore name="tuned"/>
+    <package name="aaa_base" replaces="cups"/>
+    <ignore name="cups"/>
+    <package name="aaa_base" replaces="cups-client"/>
+    <ignore name="cups-client"/>
+    <package name="aaa_base" replaces="system-config-printer"/>
+    <ignore name="system-config-printer"/>
+    <package name="aaa_base" replaces="ghostscript"/>
+    <ignore name="ghostscript"/>
+    <package name="aaa_base" replaces="ghostscript-fonts-std"/>
+    <ignore name="ghostscript-fonts-std"/>
+    <package name="aaa_base" replaces="ghostscript-fonts-other"/>
+    <ignore name="ghostscript-fonts-other"/>
+    <package name="aaa_base" replaces="manufacturer-PPDs"/>
+    <ignore name="manufacturer-PPDs"/>
+    <package name="aaa_base" replaces="yast2-samba-client"/>
+    <ignore name="yast2-samba-client"/>
+    <package name="aaa_base" replaces="yast2-vpn"/>
+    <ignore name="yast2-vpn"/>
+    <package name="aaa_base" replaces="yast2-vm"/>
+    <ignore name="yast2-vm"/>
+    <package name="aaa_base" replaces="yast2-journal"/>
+    <ignore name="yast2-journal"/>
+    <package name="aaa_base" replaces="yast2-nfs-client"/>
+    <ignore name="yast2-nfs-client"/>
+    <package name="aaa_base" replaces="yast2-auth-client"/>
+    <ignore name="yast2-auth-client"/>
+    <package name="aaa_base" replaces="yast2-sudo"/>
+    <ignore name="yast2-sudo"/>
+    <package name="aaa_base" replaces="systemd-coredump"/>
+    <ignore name="systemd-coredump"/>
+    <package name="aaa_base" replaces="NetworkManager-vpnc-gnome"/>
+    <ignore name="NetworkManager-vpnc-gnome"/>
+    <package name="aaa_base" replaces="plasma-nm5-vpnc"/>
+    <ignore name="plasma-nm5-vpnc"/>
+    <package name="aaa_base" replaces="systemd-logger"/>
+    <ignore name="systemd-logger"/>
+    <package name="aaa_base" replaces="virtualbox-guest-kmp-default"/>
+    <ignore name="virtualbox-guest-kmp-default"/>
+    <package name="aaa_base" replaces="intel-gpu-tools"/>
+    <ignore name="intel-gpu-tools"/>
+    <package name="spice-vdagent"/>
+
+    <!-- list-xfce.sh -->
+    <package name="branding-openSUSE"/>
+    <package name="aaa_base" replaces="samba-libs"/>
+    <ignore name="samba-libs"/>
+    <package name="yast2-trans-stats"/>
+    <package name="patterns-media-rest_cd_x11"/>
+    <namedCollection name="rest_cd_x11"/>
+    <package name="patterns-xfce-xfce"/>
+    <namedCollection name="xfce"/>
+    <package name="openSUSE-release-livecd-xfce"/>
+    <package name="aaa_base" replaces="release-notes-openSUSE"/>
+    <ignore name="release-notes-openSUSE"/>
+    <package name="aaa_base" replaces="gnome-themes-accessibility"/>
+    <ignore name="gnome-themes-accessibility"/>
+    <package name="aaa_base" replaces="xlockmore"/>
+    <ignore name="xlockmore"/>
+    <package name="aaa_base" replaces="unzip-doc"/>
+    <ignore name="unzip-doc"/>
+    <package name="aaa_base" replaces="gtk2-immodule-inuktitut"/>
+    <ignore name="gtk2-immodule-inuktitut"/>
+    <package name="aaa_base" replaces="gtk2-immodule-thai"/>
+    <ignore name="gtk2-immodule-thai"/>
+    <package name="aaa_base" replaces="gtk2-immodule-vietnamese"/>
+    <ignore name="gtk2-immodule-vietnamese"/>
+    <package name="aaa_base" replaces="gtk3-immodule-inuktitut"/>
+    <ignore name="gtk3-immodule-inuktitut"/>
+    <package name="aaa_base" replaces="gtk3-immodule-thai"/>
+    <ignore name="gtk3-immodule-thai"/>
+    <package name="aaa_base" replaces="gtk3-immodule-vietnamese"/>
+    <ignore name="gtk3-immodule-vietnamese"/>
+    <package name="aaa_base" replaces="ImageMagick"/>
+    <ignore name="ImageMagick"/>
+    <package name="aaa_base" replaces="awesfx"/>
+    <ignore name="awesfx"/>
+    <package name="aaa_base" replaces="sbl"/>
+    <ignore name="sbl"/>
+    <package name="aaa_base" replaces="open-vm-tools"/>
+    <ignore name="open-vm-tools"/>
+    <package name="aaa_base" replaces="gnome-online-accounts"/>
+    <ignore name="gnome-online-accounts"/>
+    <package name="aaa_base" replaces="snapper"/>
+    <ignore name="snapper"/>
+    <package name="live-net-installer"/>
+    <package name="skelcd-openSUSE"/>
+    <package name="setxkbmap"/>
+    <package name="yast2-qt-branding-openSUSE"/>
+    <package name="aaa_base" replaces="aspell-en"/>
+    <ignore name="aspell-en"/>
+    <package name="aaa_base" replaces="avahi"/>
+    <ignore name="avahi"/>
+    <package name="aaa_base" replaces="fprintd"/>
+    <ignore name="fprintd"/>
+    <package name="libxslt-tools"/>
+    <package name="aaa_base" replaces="sound-juicer"/>
+    <ignore name="sound-juicer"/>
+    <package name="aaa_base" replaces="remmina"/>
+    <ignore name="remmina"/>
+    <package name="aaa_base" replaces="gnome-games"/>
+    <ignore name="gnome-games"/>
+    <package name="aaa_base" replaces="xfce4-panel-plugin-xkb"/>
+    <ignore name="xfce4-panel-plugin-xkb"/>
+    <package name="aaa_base" replaces="xfce4-panel-plugin-notes"/>
+    <ignore name="xfce4-panel-plugin-notes"/>
+    <package name="aaa_base" replaces="libreoffice"/>
+    <ignore name="libreoffice"/>
+    <package name="aaa_base" replaces="PackageKit"/>
+    <ignore name="PackageKit"/>
+    <package name="aaa_base" replaces="PackageKit-gstreamer-plugin"/>
+    <ignore name="PackageKit-gstreamer-plugin"/>
+  </packages>
+  <packages type="bootstrap">
+    <package name="filesystem"/>
+    <package name="openSUSE-release"/>
+    <package name="openSUSE-release-livecd-xfce"/>
+    <package name="branding-openSUSE"/>
+  </packages>
+  <repository type="rpm-md">
+    <source path="obsrepositories:/"/>
+  </repository>
+</image>
diff --git a/pre-checkin.sh b/pre-checkin.sh
index 8c4c7a5..3be8e0f 100644
--- a/pre-checkin.sh
+++ b/pre-checkin.sh
@@ -32,7 +32,7 @@ for distro in leap tumbleweed; do
 		distroname="openSUSE Leap 15.1"
 	fi
 
-	for flavor in gnome kde x11; do
+	for flavor in gnome kde xfce x11; do
 		uppercaseflavor="$(echo "${flavor}" | tr a-z A-Z)"
 	
 	        if [ "${flavor}" = "x11" ]; then
@@ -45,11 +45,12 @@ for distro in leap tumbleweed; do
 		. "$PWD/list-common.sh"
 	        PACKAGES="$PACKAGES\n\n    <!-- list-${flavor}.sh -->"
 		. "$PWD/list-${flavor}.sh"
-	
+
+	    [ "${flavor}" = "xfce" -a "${distro}" = "leap" ] && continue # Prevent creation of livecd-leap-xfce.kiwi
 		sed "s#@FLAVOR@#${flavor}#g;\
 	             s#@NAME@#${name// /-}#g;\
 	             s#@DISPLAYNAME@#${name}#g;\
 	             s#@VOLID@#${name// /_}#g;\
-	             s#@PACKAGES@#${PACKAGES}#g;" livecd.kiwi.in > livecd-${distro}-${flavor}.kiwi
+	             s#@PACKAGES@#${PACKAGES}#g;" livecd.kiwi.in > livecd-${distro}-${flavor}.kiwi      
 	done
 done
diff --git a/xfce-changecontrolxml.tar.xz b/xfce-changecontrolxml.tar.xz
new file mode 100644
index 0000000..8dcfc4d
--- /dev/null
+++ b/xfce-changecontrolxml.tar.xz
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ee33ef05e615eae12bf21c08667655863ae660c16f1e1219b01a1dd8a8b23276
+size 796