summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbiao716.wang <biao716.wang@samsung.com>2023-08-02 14:49:26 +0900
committerbiao716.wang <biao716.wang@samsung.com>2023-08-02 15:20:01 +0900
commit7196b65d86c0cf921f7830e7131df5fd3a6def20 (patch)
tree4c047eb4fa56ea3bbcf704301a5752ee290f7aae
parenta2321ff65bc65d8eddce880f2acd2a536443bf9a (diff)
downloadbuild-7196b65d86c0cf921f7830e7131df5fd3a6def20.tar.gz
build-7196b65d86c0cf921f7830e7131df5fd3a6def20.tar.bz2
build-7196b65d86c0cf921f7830e7131df5fd3a6def20.zip
support build with openSUSE15.x distro
Change-Id: I268a8e0b8c2ef20e08a8e357b5b2cd03616d61a2 Signed-off-by: biao716.wang <biao716.wang@samsung.com>
-rwxr-xr-xconfigs/sl15.0.conf857
-rwxr-xr-xconfigs/sl15.1.conf948
-rwxr-xr-xconfigs/sl15.2.conf988
-rwxr-xr-xconfigs/sl15.3.conf2118
-rwxr-xr-xconfigs/sl15.4.conf1785
-rwxr-xr-xconfigs/sl15.5.conf2384
-rwxr-xr-xconfigs/sle15.0.conf884
-rwxr-xr-xconfigs/sle15.1.conf884
-rwxr-xr-xconfigs/sle15.2.conf890
-rwxr-xr-xconfigs/sle15.3.conf890
-rwxr-xr-xconfigs/sle15.4.conf1633
-rwxr-xr-xconfigs/sle15.5.conf1811
12 files changed, 16072 insertions, 0 deletions
diff --git a/configs/sl15.0.conf b/configs/sl15.0.conf
new file mode 100755
index 0000000..9968c58
--- /dev/null
+++ b/configs/sl15.0.conf
@@ -0,0 +1,857 @@
+
+Release: lp150.<CI_CNT>.<B_CNT>
+%define gcc_version 7
+
+# Help with the switch to the gcc7 provided libs
+Prefer: -libstdc++6-gcc7 -libtsan0-gcc7 -libgomp1-gcc7 -libgcc_s1-gcc7 -libatomic1-gcc7 -libcilkrts5-gcc7 -libitm1-gcc7
+Prefer: -liblsan0-gcc7 -libmpx2-gcc7 -libubsan0-gcc7
+
+Substitute: kiwi-packagemanager:instsource product-builder-plugin-Tumbleweed
+Substitute: system-packages:kiwi-product product-builder
+Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper
+
+Prefer: installation-images-openSUSE installation-images-debuginfodeps-openSUSE
+
+# switch to kiwi v8
+Prefer: python3-kiwi
+Prefer: kiwi-boot-require
+
+FileProvides: /usr/sbin/groupadd shadow
+FileProvides: /usr/sbin/useradd shadow
+FileProvides: /usr/sbin/usermod shadow
+FileProvides: /sbin/netconfig sysconfig-netconfig
+FileProvides: /usr/bin/docbook2man docbook-utils
+FileProvides: /usr/bin/mkisofs cdrkit-cdrtools-compat
+#FileProvides: /usr/bin/mkisofs mkisofs
+FileProvides: /usr/sbin/lockdev lockdev
+FileProvides: /bin/logger util-linux-systemd
+FileProvides: /bin/csh tcsh
+FileProvides: /usr/bin/csh tcsh
+FileProvides: /usr/bin/mimencode metamail
+FileProvides: /usr/bin/pkg-config pkg-config
+FileProvides: /usr/bin/sg_inq sg3_utils
+FileProvides: /usr/bin/tput ncurses-utils
+FileProvides: /usr/bin/eu-nm elfutils
+FileProvides: /usr/bin/Xvfb xorg-x11-server
+FileProvides: /usr/bin/xmllint libxml2-tools
+FileProvides: /sbin/setcap libcap-progs
+FileProvides: /usr/bin/setfacl acl
+FileProvides: /usr/bin/fipscheck fipscheck
+FileProvides: /usr/bin/python python-base
+
+Preinstall: aaa_base attr bash coreutils diffutils
+Preinstall: filesystem fillup glibc grep liblua5_3-5
+Preinstall: libbz2-1 libgcc_s1 libncurses6 pam
+Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1
+Preinstall: liblzma5 libcap2 libacl1 libattr1
+Preinstall: libpopt0 libelf1
+Preinstall: libpcre1
+
+Runscripts: aaa_base
+
+Prefer: libdb-4_8-devel
+Prefer: cdrkit-cdrtools-compat genisoimage
+VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1
+VMinstall: kernel-obs-build
+VMInstall: net-tools-deprecated
+
+Required: rpm-build
+# Build all packages with -pie enabled
+Required: gcc-PIE
+
+# the basic stuff
+Support: perl build-mkbaselibs
+Support: brp-check-suse post-build-checks rpmlint-Factory
+
+%ifarch ia64
+Support: libunwind libunwind-devel
+Preinstall: libunwind
+%endif
+
+### Branding related preferences
+Prefer: awesome:awesome-branding-upstream
+Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE
+Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream
+Prefer: exo-data:exo-branding-upstream
+Prefer: fcitx:fcitx-branding-openSUSE
+Prefer: gdm:gdm-branding-upstream
+Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse
+Prefer: glib2:glib2-branding-upstream
+Prefer: gnome-panel:gnome-panel-branding-upstream
+Prefer: gnome-session:gconf2-branding-openSUSE
+Prefer: gnome-session:gnome-session-branding-openSUSE
+Prefer: icewm-theme-branding
+Prefer: kde4-kdm:kde4-kdm-branding-upstream
+Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream
+Prefer: kdelibs4-branding:kdelibs4-branding-upstream
+Prefer: kdelibs4:kdelibs4-branding-upstream
+Prefer: kdm:kdm-branding-upstream
+Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream
+Prefer: libexo-1-0:libexo-1-0-branding-upstream
+Prefer: libgarcon-1-0:libgarcon-branding-upstream
+Prefer: libgarcon-data:libgarcon-branding-upstream
+Prefer: libgio-2_0-0:gio-branding-upstream
+Prefer: libglib-2_0-0:glib2-branding-upstream
+Prefer: libpurple-branding-upstream
+Prefer: libreoffice:libreoffice-branding-upstream
+Prefer: libsocialweb:libsocialweb-branding-upstream
+Prefer: libxfce4ui:libxfce4ui-branding-upstream
+Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream
+Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream
+Prefer: NetworkManager:NetworkManager-branding-openSUSE
+Prefer: PackageKit:PackageKit-branding-upstream
+Prefer: plasma5-desktop:plasma5-desktop-branding-upstream
+Prefer: plasma5-workspace:plasma5-workspace-branding-upstream
+Prefer: sddm:sddm-branding-upstream
+Prefer: systemd-presets-branding-openSUSE
+Prefer: wallpaper-branding-openSUSE
+Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream
+Prefer: xfce4-settings:xfce4-settings-branding-upstream
+Prefer: xfdesktop:xfdesktop-branding-upstream
+Prefer: yast2-branding-openSUSE
+Prefer: yast2-qt:yast2-qt-branding-openSUSE
+
+# Build cycle handling - prefer -mini packages were possible, break deps as needed
+Conflict: krb5-devel:krb5-mini
+Conflict: krb5:krb5-mini-devel
+Prefer: gettext-tools-mini gettext-runtime-mini
+Prefer: ghostscript-mini
+Prefer: krb5-mini-devel:krb5-mini
+Prefer: krb5-mini krb5-mini-devel
+Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo
+Prefer: libunbound-devel-mini
+Prefer: log4j-mini
+Prefer: systemd-mini-devel:systemd-mini
+Prefer: systemd-mini systemd-mini-devel libsystemd0-mini
+Prefer: udev-mini libcom_err2-mini libext2fs2-mini
+Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel
+
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: erlang-rebar-obs:this-is-only-for-build-envs
+Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs
+Ignore: jdk-bootstrap:this-is-only-for-build-envs
+Ignore: libsystemd0-mini:this-is-only-for-build-envs
+Ignore: libudev-mini1:this-is-only-for-build-envs
+Ignore: libunbound-devel-mini:this-is-only-for-build-envs
+Ignore: systemd-mini:this-is-only-for-build-envs
+Ignore: udev-mini:this-is-only-for-build-envs
+
+# curl
+Ignore: libcurl-mini-devel:this-is-only-for-build-envs
+Ignore: libcurl4-mini:this-is-only-for-build-envs
+# curl: -full and -mini packages don't mingle well
+Prefer: -libcurl4-mini -libcurl-mini-devel
+Conflict: libcurl4-mini:curl
+Conflict: libcurl-mini-devel:libcurl4
+
+# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems
+Conflict: kiwi:libudev-mini1
+Conflict: kiwi:systemd-mini
+
+# udev: -full and -mini packages don't mingle well
+Prefer: libudev1:udev
+Conflict: libudev1:udev-mini
+Conflict: udev:libudev-mini1
+
+# systemd: -full and -mini packages don't mingle well
+Conflict: systemd:libsystemd0-mini
+Conflict: systemd-mini-devel:systemd
+
+Prefer: -suse-build-key
+# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs)
+Prefer: postfix
+# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal)
+
+# prefer the PHP5 variants over PHP7
+Prefer: php5-ctype
+Prefer: php5-devel
+Prefer: php5-dom
+Prefer: php5-ftp
+Prefer: php5-gd
+Prefer: php5-gettext
+Prefer: php5-mbstring
+Prefer: php5-pear
+Prefer: php5-pear-Archive_Tar
+Prefer: php5-pear-Horde
+Prefer: php5 php5-json
+Prefer: php5-tokenizer
+Prefer: php5-zip
+
+# Below list still needs to be reviewed
+
+Prefer: xorg-x11-Xvnc:icewm
+Prefer: cracklib-dict-small
+Prefer: apache2:apache2-prefork
+Prefer: libstdc++6 libgcc_s1 libquadmath0
+Prefer: libstdc++6-32bit libstdc++6-64bit
+Prefer: libstdc++6-x86
+Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit
+%ifarch s390x
+Prefer: -libstdc++41
+%endif
+# for symbol syslog (syslogd is best as it has the least dependencies)
+Prefer: syslog-service syslogd
+# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt
+Prefer: star-rmt
+Prefer: yast2-packagemanager-devel:yast2-packagemanager
+Prefer: poppler-tools
+Prefer: libjpeg8-devel libjpeg-turbo
+Prefer: microcode_ctl:kernel-default
+Prefer: notification-daemon
+Prefer: gnu-jaf yast2-control-center-qt
+Prefer: vim-normal myspell-american wine
+Prefer: yast2-theme-openSUSE enlightenment-theme-upstream
+Prefer: amarok:amarok-xine
+Prefer: kdenetwork3-vnc:tightvnc
+Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api
+Prefer: -dbus-1-nox11
+Prefer: -servletapi3 -servletapi4 -servletapi5
+Prefer: icewm-lite
+Prefer: yast2-ncurses-pkg
+Prefer: monodevelop: mono-addins
+Prefer: texlive-xmltex texlive-tools texlive-jadetex
+Prefer: libesd-devel:esound
+Prefer: libesd0:esound-daemon
+Prefer: package-lists-openSUSE-KDE-cd: esound-daemon
+Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail
+Prefer: rhino:xmlbeans-mini
+Prefer: rpcbind eclipse-source
+Prefer: mx4j:log4j-mini
+Prefer: libcdio_cdda0 libcdio_paranoia0
+Prefer: boo tog-pegasus
+Prefer: sysvinit(network) wicked-service
+Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd
+Prefer: kdebase4-openSUSE:kdebase4-workspace
+Prefer: ant:xerces-j2
+Prefer: dhcp-client:dhcp
+Prefer: dummy-release
+Prefer: libGLw1
+# Help GNOME:Factory over librest-0_7-0 vs librest0 choice
+Prefer: librest-0_7-0
+# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version
+Prefer: -nodejs4
+# provides typelib(St)
+Prefer: -cinnamon
+Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es
+Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el
+Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl
+Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da
+Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb
+Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar
+Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr
+Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el
+Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs
+Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu
+Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv
+Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar
+Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr
+Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el
+Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs
+Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu
+Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv
+Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar
+Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr
+Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el
+Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru
+Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da
+Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv
+Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar
+Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++
+Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g
+Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links
+Prefer: -python-setuptools
+Prefer: -kdenetwork3-InstantMessenger
+Prefer: -icc-profiles
+Prefer: vala
+# in doubt, take xerces
+Prefer: -crimson
+# in doubt, take higher versions
+Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4
+Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3
+Prefer: -rubygem-json_pure-1_5 -ruby2.2-rubygem-listen-3_0 -ruby2.2-rubygem-fast_gettext-1_1 -ruby2.2-rubygem-nokogiri-1_6 -ruby2.3-rubygem-nokogiri-1_6
+Prefer: geronimo-servlet-2_4-api
+Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi
+# prefer the small systemd for building
+Prefer: star
+Prefer: xmlgraphics-commons:apache-commons-io
+# the -32bit stuff provides things it shouldn't (hopefully temporary)
+Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit
+Prefer: postgresql postgresql-server postgresql-devel
+Prefer: -unzip-rcc
+Prefer: -primus -primus-32bit
+Prefer: -staging-build-key
+Prefer: -sssd-wbclient
+Prefer: -clutter-gst-devel
+Prefer: -opencv-qt5-devel
+# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg
+Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel
+Prefer: -ffmpeg2-devel
+# as long as kactivities4 exists and is provided
+Prefer: kactivities5
+# oxygen5-icon-theme osboletes oxygen-icon-theme
+Prefer: oxygen5-icon-theme
+Prefer: npm6
+
+# kernel bug (coolo)
+Prefer: kernel-default-devel
+
+Prefer: wxWidgets-3_0-devel
+Prefer: libopenssl-devel
+
+Prefer: -NX -xaw3dd -db43
+Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis
+Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit
+Prefer: libffi-devel
+Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0
+Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit
+Prefer: libgcc_s1-x86 libgcj_bc1
+Prefer: libgomp1 libgomp1-32bit libgomp1-64bit
+Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit
+Prefer: libobjc4 libgfortran3 libquadmath0
+Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini
+Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel
+Prefer: -seamonkey
+Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2
+Prefer: libopenal0-soft openal-soft -lsb-buildenv
+Prefer: -libevent
+Prefer: gnu-crypto libusb-compat-devel
+Prefer: libusb-0_1-4
+Prefer: libreoffice:xerces-j2
+Prefer: k3b:libdvdread4
+Prefer: glibc-devel
+Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4
+Prefer: NetworkManager:dhcp-client
+Prefer: kdebase3-SuSE:kdebase3
+Prefer: pcre-tools
+Prefer: libpopt0
+Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2
+Prefer: libgnome-keyring-devel
+Prefer: gnome-keyring-32bit
+Prefer: linux-glibc-devel
+Prefer: squid sysvinit
+Prefer: libpng16-compat-devel
+Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0
+Prefer: python3-docutils python2-pep8
+Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client
+#needed because new xml-commons package
+Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis
+Prefer: xmlgraphics-fop:xerces-j2
+Prefer: cogl-devel
+Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage
+Prefer: libpsm2-compat
+# choice p11-kit-nss-trust
+Prefer: mozilla-nss-certs
+# amarok dependency resolution
+Prefer: phonon-backend-gstreamer
+# replacing mkinitrd
+Prefer: dracut
+# replacing module-init-tools
+Prefer: kmod-compat
+# Temporary
+Prefer: oxygen5-cursors
+# Temporary
+Prefer: -perl-App-cpanminus
+# libmediaart is prepared for a larger update; for now favor mediaart-1.0
+Prefer: -typelib-1_0-MediaArt-2_0
+Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0
+Prefer: -python-atspi
+Prefer: gettext-its-gtk3 gtk3-schema
+
+Ignore: installation-images-openSUSE:cracklib-dict-full
+Ignore: systemd-sysvinit:systemd
+Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome
+Ignore: cracklib:cracklib-dict
+Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev
+Ignore: sysvinit:mingetty
+Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel
+Ignore: libgcj43,libstdc++43-devel
+Ignore: libgcj44,libstdc++44-devel
+Ignore: libgcj45,libstdc++45-devel
+Ignore: libgcj46,libstdc++46-devel
+Ignore: libgcj47,libstdc++47-devel
+Ignore: librtas:util-linux
+Ignore: pwdutils:openslp
+Ignore: pam-modules:resmgr
+Ignore: rpm:suse-build-key,build-key
+Ignore: cloud-init:cloud-init-config
+# python-pyudev requires libudev1 in normal situations
+Ignore: python-pyudev:libudev1
+Ignore: python-SPARQLWrapper:python-rdflib
+Ignore: python3-SPARQLWrapper:python3-rdflib
+Ignore: bind-utils:bind-libs
+Ignore: alsa:dialog,pciutils
+Ignore: portmap:syslogd
+Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng
+Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video
+Ignore: apache2:logrotate
+Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis
+Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper
+Ignore: kdelibs3-devel:libvorbis-devel
+Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb
+Ignore: kdebase3-SuSE:release-notes
+Ignore: jack:alsa,libsndfile
+Ignore: libxml2-devel:readline-devel
+Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration
+Ignore: libgda:file_alteration
+Ignore: gnutls:lzo,libopencdk
+Ignore: gnutls-devel:lzo-devel,libopencdk-devel
+Ignore: pango:cairo,glitz,libpixman,libpng
+Ignore: pango-devel:cairo-devel
+Ignore: cairo-devel:libpixman-devel
+Ignore: libgnomeprint:libgnomecups
+Ignore: libgnomeprintui:libgnomecups
+Ignore: orbit2-devel:indent
+Ignore: qt3:libmng
+Ignore: qt-sql:qt_database_plugin
+Ignore: gtk2:libpng,libtiff
+Ignore: libgnomecanvas-devel:glib-devel
+Ignore: libgnomeui:gnome-icon-theme,shared-mime-info
+Ignore: scrollkeeper:docbook_4
+Ignore: gnome-desktop:libgnomesu,startup-notification
+Ignore: python-devel:python-tk
+Ignore: gnome-pilot:gnome-panel
+Ignore: gnome-panel:control-center2
+Ignore: gnome-menus:kdebase3
+Ignore: gnome-main-menu:rug
+Ignore: libgtk-3-0:adwaita-icon-theme
+Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg
+Ignore: samba-libs:krb5
+Ignore: libbonoboui:gnome-desktop
+Ignore: libxfce4ui-1-0:exo-tools
+Ignore: docbook_4:iso_ent,xmlcharent
+Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification
+Ignore: docbook-xsl-stylesheets:xmlcharent
+Ignore: liby2util-devel:libstdc++-devel,openssl-devel
+Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2
+Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils
+Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel
+Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel
+Ignore: yast2-devtools:libxslt
+Ignore: yast2-iscsi-lio-server:lio-utils
+Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation
+Ignore: yast2-bootloader:bootloader-theme
+Ignore: yast2-packager:yast2-x11,libyui_pkg
+Ignore: autoyast2:yast2-schema
+# not during build
+Ignore: yui_backend
+Ignore: yast2-x11:sax2-libsax-perl
+Ignore: yast2-network:yast2-inetd
+Ignore: openslp-devel:openssl-devel
+Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed
+Ignore: texlive-bin:ghostscript-x11
+Ignore: texlive-bin-omega:ghostscript-x11
+Ignore: yast2-country:yast2-trans-stats
+Ignore: tpb:tpctl-kmp
+Ignore: tpctl:tpctl-kmp
+Ignore: zaptel:zaptel-kmp
+Ignore: mkinitrd:pciutils
+Ignore: pciutils:pciutils-ids
+Ignore: postfix:iproute2
+Ignore: aaa_base:systemd
+Ignore: gpm:systemd
+Ignore: openssh:systemd
+Ignore: cronie:systemd
+Ignore: systemd:kbd
+Ignore: systemd:kmod
+Ignore: systemd:systemd-presets-branding
+Ignore: systemd:dbus-1
+Ignore: systemd:pam-config
+Ignore: systemd:udev
+Ignore: pesign:systemd
+Ignore: polkit:ConsoleKit
+Ignore: logrotate:cron
+Ignore: texlive-filesystem:cron
+Ignore: xinit:xterm
+Ignore: xdm:xterm
+Ignore: gnome-control-center:gnome-themes-accessibility
+Ignore: coreutils:info
+Ignore: cpio:info
+Ignore: diffutils:info
+Ignore: findutils:info
+Ignore: gawk:info
+Ignore: grep:info
+Ignore: groff:info
+Ignore: m4:info
+Ignore: sed:info
+Ignore: tar:info
+Ignore: util-linux:info
+Ignore: gettext-tools:info
+Ignore: gettext-runtime:info
+Ignore: libgcrypt-devel:info
+Ignore: binutils:info
+Ignore: gzip:info
+Ignore: make:info
+Ignore: bison:info
+Ignore: flex:info
+Ignore: help2man:info
+Ignore: man:groff-full
+Ignore: git-core:rsync
+Ignore: apache2:systemd
+Ignore: icewm-lite:icewm
+Ignore: cluster-glue:sudo
+
+Ignore: libgcc:glibc-32bit
+Ignore: libgcc41:glibc-32bit
+Ignore: libgcc42:glibc-32bit
+Ignore: libgcc43:glibc-32bit
+Ignore: libgcc44:glibc-32bit
+Ignore: libgcc45:glibc-32bit
+Ignore: libgcc46:glibc-32bit
+Ignore: libgcc47:glibc-32bit
+Ignore: libstdc++:glibc-32bit
+Ignore: libstdc41++:glibc-32bit
+Ignore: libstdc42++:glibc-32bit
+Ignore: libstdc43++:glibc-32bit
+Ignore: libstdc44++:glibc-32bit
+Ignore: libstdc45++:glibc-32bit
+Ignore: libstdc46++:glibc-32bit
+Ignore: libstdc47++:glibc-32bit
+Ignore: ncurses-32bit
+
+Ignore: susehelp:susehelp_lang,suse_help_viewer
+Ignore: mailx:smtp_daemon
+Ignore: cron:smtp_daemon
+Ignore: hotplug:syslog
+Ignore: pcmcia:syslog
+Ignore: openct:syslog
+Ignore: postfix:sysvinit(syslog)
+Ignore: cups:sysvinit(syslog)
+Ignore: jython:servlet
+Ignore: ispell:ispell_dictionary,ispell_english_dictionary
+Ignore: aspell:aspel_dictionary,aspell_dictionary
+Ignore: smartlink-softmodem:kernel,kernel-nongpl
+Ignore: libreoffice-de:myspell-german-dictionary
+Ignore: libreoffice:libreoffice-i18n
+Ignore: libreoffice:libreoffice-icon-themes
+Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any
+Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl
+Ignore: perl-Log-Log4perl:rrdtool
+
+Ignore: simias:mono(log4net)
+Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php
+
+Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver
+Ignore: xdg-menu:desktop-data
+Ignore: nessus-libraries:nessus-core
+Ignore: evolution:yelp
+Ignore: e17:e17-branding e17:e17-theme
+
+Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp)
+Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp)
+
+Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4)
+Ignore: libcdio:libcddb.so.2
+
+Ignore: gnome-libs:libgnomeui
+Ignore: nautilus:gnome-themes
+Ignore: gnome-panel:gnome-themes
+Ignore: gnome-panel:tomboy
+Ignore: NetworkManager:NetworkManager-client
+Ignore: libbeagle:beagle
+Ignore: coreutils:coreutils-lang
+Ignore: cpio:cpio-lang
+Ignore: glib2:glib2-lang
+Ignore: gtk2:gtk2-lang
+Ignore: gtk:gtk-lang
+Ignore: atk:atk-lang
+Ignore: hal:pm-utils
+Ignore: MozillaThunderbird:pinentry-dialog
+Ignore: seamonkey:pinentry-dialog
+Ignore: pinentry:pinentry-dialog
+Ignore: gpg2:gpg2-lang
+Ignore: util-linux:util-linux-lang
+Ignore: suseRegister:distribution-release
+Ignore: compiz:compiz-decorator
+Ignore: icecream:gcc-c++
+Ignore: no
+Ignore: package
+Ignore: provides
+Ignore: j9vm/libjvm.so()(64bit)
+Ignore: kdepim3:suse_help_viewer
+Ignore: kdebase3-SuSE:kdebase3-SuSE-branding
+Ignore: kio_sysinfo:kdebase3-SuSE-branding
+Ignore: gnome-menus:gnome-menus-branding
+Ignore: epiphany:epiphany-branding
+Ignore: gnome-control-center:gnome-control-center-branding
+Ignore: phonon:phonon-backend
+Ignore: openwbem-devel
+Ignore: MozillaFirefox:MozillaFirefox-branding
+Ignore: yast2:yast2-branding
+Ignore: plymouth:plymouth-branding
+Ignore: plymouth:suspend
+Ignore: yast2-qt:yast2-branding
+Ignore: yast2-theme-SLE:yast2-branding
+Ignore: yast2-registration:yast2-registration-branding
+Ignore: compiz:compiz-branding
+Ignore: texlive:perl-Tk texlive-bin:perl-Tk
+Ignore: xfce4-desktop:xfce4-desktop-branding
+Ignore: xfce4-panel:xfce4-panel-branding
+Ignore: xfce4-session:xfce4-session-branding
+Ignore: kdebase4-runtime:kdebase4-runtime-branding
+Ignore: kwin:kdebase4-workspace-branding
+Ignore: pulseaudio:kernel
+Ignore: transmission-common:transmission-ui
+Ignore: mutter-moblin:moblin-branding
+Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd
+Ignore: mkinitrd:sbin_init
+Ignore: opensc:pinentry
+Ignore: gpg2:pinentry
+Ignore: NetworkManager:dhcp
+Ignore: NetworkManager:iproute2
+# sysconfig requires it at runtime, not buildtime
+Ignore: sysconfig:dbus-1
+Ignore: sysconfig:procps
+Ignore: sysconfig:iproute2
+Ignore: sysconfig-network:iproute2
+Ignore: sysconfig:tunctl
+Ignore: sysconfig:sysvinit(network)
+# no build dependencies
+Ignore: libksuseinstall1:yast2-packager
+Ignore: libksuseinstall1:zypper
+Ignore: syslog-service:logrotate
+Ignore: libglue-devel:cluster-glue
+Ignore: libqca2:gpg2
+Ignore: NetworkManager:wpa_supplicant
+Ignore: NetworkManager:dhcp-client
+Ignore: libgio-2_0-0:dbus-1-x11
+Ignore: weather-wallpaper:inkscape
+Ignore: libgamin-1-0:gamin-server
+Ignore: libfam0-gamin:gamin-server
+Ignore: python3:python3-pip
+Ignore: avahi:sysvinit(network)
+Ignore: cluster-glue:sysvinit(network)
+Ignore: dracut:systemd-sysvinit
+
+%ifarch ppc64le
+#Constraint: hostlabel PPC64LE_HOST
+Constraint: hardware:cpu:flag power8
+%endif
+
+Macros:
+# RUBY - UNVERSIONED STUFF
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in the
+# prjconf aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}}
+%rubygemsSTOP() %nil
+%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*}
+%rubygemsxxSTOP(a:) %{-a*}) %*
+
+%rubySTOP() %nil
+%rubyxSTOP() %*
+
+%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}}
+
+%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}}
+
+%rubydevelSTOP() %nil
+%rubydevelxSTOP() %*
+#
+
+# RUBY STUFF
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in
+# ruby2.2 aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygemsruby22() rubygem(ruby:2.2.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}}
+%rubygemsxruby22() %{expand:%%{rubygemsx%*}}
+
+%rubyruby22() ruby2.2 %{expand:%%rubyx%*} %{expand:%%{ruby%*}}
+%rubyxruby22() %{expand:%%{rubyx%*}}
+
+%rubydevelruby22() ruby2.2-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}}
+%rubydevelxruby22() %{expand:%%{rubydevelx%*}}
+
+%_with_ruby22 1
+
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in
+# ruby2.3 aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygemsruby23() rubygem(ruby:2.3.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}}
+%rubygemsxruby23() %{expand:%%{rubygemsx%*}}
+
+%rubyruby23() ruby2.3 %{expand:%%rubyx%*} %{expand:%%{ruby%*}}
+%rubyxruby23() %{expand:%%{rubyx%*}}
+
+%rubydevelruby23() ruby2.3-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}}
+%rubydevelxruby23() %{expand:%%{rubydevelx%*}}
+
+%_with_ruby23 1
+
+:Macros
+
+%define _with_ruby22 1
+%define _with_ruby23 1
+
+%define rb_default_ruby ruby22
+%define rb_default_ruby_suffix ruby2.2
+%define rb_default_ruby_abi ruby:2.2.0
+
+%define rb_build_ruby_abis ruby:2.2.0 ruby:2.3.0
+%define rb_build_versions ruby22 ruby23
+Macros:
+%rb_default_ruby ruby22
+%rb_default_ruby_suffix ruby2.2
+%rb_default_ruby_abi ruby:2.2.0
+
+%rb_build_ruby_abis ruby:2.2.0 ruby:2.3.0
+%rb_build_versions ruby22 ruby23
+:Macros
+
+Prefer: -ruby-stdlib
+Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm
+Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus
+Prefer: %{rb_default_ruby_suffix}-rubygem-yard
+Prefer: %{rb_default_ruby_suffix}-rubygem-rspec
+Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake
+Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah
+Prefer: %{rb_default_ruby_suffix}-rubygem-inifile
+Prefer: %{rb_default_ruby_suffix}-rubygem-bundler
+Prefer: %{rb_default_ruby_suffix}-rubygem-sass
+Prefer: %{rb_default_ruby_suffix}-rubygem-cfa
+
+# END RUBY STUFF
+
+# PYTHON STUFF
+# defined in tpython-rpm-macros
+
+Macros:
+%have_python2 1
+%have_python3 1
+%python_module() %{expand: %{?have_python2:python2-%{**}} %{?have_python3:python3-%{**}} %{?have_pypy3:pypy3-%{**}}}
+:Macros
+
+# END PYTHON STUFF
+
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+Substitute: java2-devel-packages java-devel
+
+%ifarch x86_64 ppc64 s390x sparc64
+Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit
+%else
+ %ifarch ppc sparc sparcv9
+Substitute: glibc-devel-32bit glibc-devel-64bit
+ %else
+Substitute: glibc-devel-32bit
+ %endif
+%endif
+
+%ifarch %ix86
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen
+%endif
+%ifarch ia64
+Substitute: kernel-binary-packages kernel-default kernel-debug
+%endif
+%ifarch x86_64
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen
+%endif
+%ifarch ppc
+Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3
+%endif
+%ifarch ppc64
+Substitute: kernel-binary-packages kernel-default kernel-ppc64
+%endif
+%ifarch s390
+Substitute: kernel-binary-packages kernel-s390
+%endif
+%ifarch s390x
+Substitute: kernel-binary-packages kernel-default
+%endif
+
+# until the builds of the packages are fixed...
+Substitute: yast2-theme-SLED
+Substitute: yast2-theme-SLE
+
+Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches
+Optflags: i686 -march=i686 -mtune=generic -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches
+Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390x -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches
+# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops)
+Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+%ifarch sparcv9
+Target: sparcv9
+%endif
+%ifarch armv6l armv6hl
+Target: armv6hl-suse-linux
+%endif
+%ifarch armv7l armv7hl
+Target: armv7hl-suse-linux
+%endif
+
+Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables
+
+%define suse_version 1500
+%define is_opensuse 1
+
+RepoURL: https://download.opensuse.org/distribution/leap/15.0/repo/oss
+RegistryURL: https://registry.opensuse.org
+
+Macros:
+%suse_version 1500
+%is_opensuse 1
+
+%insserv_prereq insserv sed
+%fillup_prereq fillup coreutils grep diffutils
+%suseconfig_fonts_prereq perl aaa_base
+%install_info_prereq info
+%kernel_module_package_buildreq kmod-compat kernel-syms
+%kernel_module_package_buildreqs kmod-compat kernel-syms
+
+%sles_version 0
+%do_profiling 1
+%_vendor suse
+
+# Reproducible builds
+%source_date_epoch_from_changelog Y
+
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 7
+# The following shlibs have latest versions built from GCC 6 sources
+%product_libs_gcc_ver_libasan3 6
+%product_libs_gcc_ver_libgo9 6
+%product_libs_gcc_ver_libgfortran3 6
+# reminded by richi 2017 4/3
+%product_libs_gcc_ver_libgcj_bc1 6
+# The following shlibs have been introduced with GCC 7
+%product_libs_gcc_ver_libmpxwrappers2 7
+%product_libs_gcc_ver_libmpx2 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libgfortran4 7
+%gcc_version 7
+
+%ext_info .gz
+%ext_man .gz
+
+%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+
+%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+:Macros
+
diff --git a/configs/sl15.1.conf b/configs/sl15.1.conf
new file mode 100755
index 0000000..9919403
--- /dev/null
+++ b/configs/sl15.1.conf
@@ -0,0 +1,948 @@
+
+Release: lp151.<CI_CNT>.<B_CNT>
+%define gcc_version 7
+
+# Help with the switch to the gcc7 provided libs
+Prefer: -libstdc++6-gcc7 -libtsan0-gcc7 -libgomp1-gcc7 -libgcc_s1-gcc7 -libatomic1-gcc7 -libcilkrts5-gcc7 -libitm1-gcc7
+Prefer: -liblsan0-gcc7 -libmpx2-gcc7 -libubsan0-gcc7
+
+Prefer: kiwi-filesystem-requires
+Prefer: kiwi-image-docker-requires
+Prefer: kiwi-image-iso-requires
+Prefer: kiwi-image-vmx-requires
+
+# Migration to product builder
+Substitute: kiwi-packagemanager:instsource product-builder-plugin-Tumbleweed
+Substitute: system-packages:kiwi-product product-builder
+
+Prefer: installation-images-openSUSE installation-images-debuginfodeps-openSUSE
+
+# switch to kiwi v8
+Prefer: python3-kiwi
+
+# LUA namespace migration - slowly moving to the new names (keep ports in mind!)
+# lua, lua51, lua52 and lua53 all provide 'lua'; version 5.3 is the 'target'; lua will be deleted in the future
+Prefer: lua53 lua51 lua52 lua
+Prefer: liblua5_3-5 liblua5_1-5 liblua5_2-5
+Prefer: lua53-devel lua51-devel lua52-devel
+Prefer: libtolua++-5_3-devel libtolua++-5_1-devel libtolua++-5_2-devel
+Prefer: -liblua5_3 -liblua5_1 -liblua5_2
+
+Preinstall: liblua5_3-5
+
+FileProvides: /bin/csh tcsh
+FileProvides: /bin/logger util-linux-systemd
+FileProvides: /sbin/netconfig sysconfig-netconfig
+FileProvides: /sbin/setcap libcap-progs
+FileProvides: /usr/bin/csh tcsh
+FileProvides: /usr/bin/docbook2man docbook-utils
+FileProvides: /usr/bin/eu-nm elfutils
+FileProvides: /usr/bin/fipscheck fipscheck
+FileProvides: /usr/bin/killall psmisc
+FileProvides: /usr/bin/mimencode metamail
+FileProvides: /usr/bin/mkisofs mkisofs
+FileProvides: /usr/bin/pkg-config pkg-config
+FileProvides: /usr/bin/python python-base
+FileProvides: /usr/bin/python2 python2-base
+FileProvides: /usr/bin/python3 python3-base
+FileProvides: /usr/bin/setfacl acl
+FileProvides: /usr/bin/sg_inq sg3_utils
+FileProvides: /usr/bin/tput ncurses-utils
+FileProvides: /usr/bin/xmllint libxml2-tools
+FileProvides: /usr/bin/Xvfb xorg-x11-server
+FileProvides: /usr/sbin/groupadd shadow
+FileProvides: /usr/sbin/lockdev lockdev
+FileProvides: /usr/sbin/useradd shadow
+FileProvides: /usr/sbin/usermod shadow
+
+Preinstall: aaa_base attr bash coreutils diffutils
+Preinstall: filesystem fillup glibc grep
+Preinstall: libbz2-1 libgcc_s1 libncurses6 pam
+Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1
+Preinstall: liblzma5 libcap2 libacl1 libattr1
+Preinstall: libpopt0 libelf1
+Preinstall: libpcre1
+
+Runscripts: aaa_base
+
+Prefer: libdb-4_8-devel
+VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1
+VMinstall: kernel-obs-build
+VMInstall: net-tools-deprecated
+
+# we only have a 64bit kernel
+ExportFilter: ^kernel-obs-build.*\.x86_64\.rpm$ . i586
+
+ExportFilter: \.x86_64\.rpm$ x86_64
+ExportFilter: \.ia64\.rpm$ ia64
+ExportFilter: \.s390x\.rpm$ s390x
+ExportFilter: \.ppc64\.rpm$ ppc64
+ExportFilter: \.ppc64le\.rpm$ ppc64le
+ExportFilter: \.ppc\.rpm$ ppc
+ExportFilter: -ia32-.*\.rpm$
+ExportFilter: -32bit-.*\.sparc64\.rpm$
+ExportFilter: -64bit-.*\.sparcv9\.rpm$
+ExportFilter: -64bit-.*\.aarch64_ilp32\.rpm$
+ExportFilter: \.armv7l\.rpm$ armv7l
+ExportFilter: \.armv7hl\.rpm$ armv7l
+ExportFilter: ^glibc(?:-devel)?-32bit-.*\.sparc64\.rpm$ sparc64
+ExportFilter: ^glibc(?:-devel)?-64bit-.*\.sparcv9\.rpm$ sparcv9
+ExportFilter: ^acroread.*\.i586.rpm$ . x86_64
+ExportFilter: ^avmailgate.*\.i586.rpm$ . x86_64
+ExportFilter: ^avmailgate.*\.ppc.rpm$ . ppc64
+ExportFilter: ^avmailgate.*\.s390.rpm$ . s390x
+ExportFilter: ^flash-player.*\.i586.rpm$ . x86_64
+ExportFilter: ^novell-messenger-client.*\.i586.rpm$ . x86_64
+ExportFilter: ^openCryptoki-32bit.*\.s390.rpm$ . s390x
+
+Required: rpm-build
+# Build all packages with -pie enabled
+Required: gcc-PIE
+
+# the basic stuff
+Support: perl build-mkbaselibs
+Prefer: build-mkbaselibs
+Support: brp-check-suse
+Support: post-build-checks rpmlint-Factory
+# Add hostname so that OBS/build will have a chance to identify the hostname (instead of localhost)
+Support: hostname
+
+Support: build-compare
+
+%ifarch ia64
+Support: libunwind libunwind-devel
+Preinstall: libunwind
+%endif
+
+### Branding related preferences
+Prefer: awesome:awesome-branding-upstream
+Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE
+Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream
+Prefer: enlightenment-theme-upstream
+Prefer: exo-data:exo-branding-upstream
+Prefer: fcitx:fcitx-branding-openSUSE
+Prefer: gdm:gdm-branding-upstream
+Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse
+Prefer: glib2:glib2-branding-upstream
+Prefer: gnome-panel:gnome-panel-branding-upstream
+Prefer: gnome-session:gconf2-branding-openSUSE
+Prefer: gnome-session:gnome-session-branding-openSUSE
+Prefer: icewm-theme-branding
+Prefer: kde4-kdm:kde4-kdm-branding-upstream
+Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream
+Prefer: kdelibs4-branding:kdelibs4-branding-upstream
+Prefer: kdelibs4:kdelibs4-branding-upstream
+Prefer: kdm:kdm-branding-upstream
+Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream
+Prefer: libexo-1-0:libexo-1-0-branding-upstream
+Prefer: libgarcon-1-0:libgarcon-branding-upstream
+Prefer: libgarcon-data:libgarcon-branding-upstream
+Prefer: libgio-2_0-0:gio-branding-upstream
+Prefer: libglib-2_0-0:glib2-branding-upstream
+Prefer: libpurple-branding-upstream
+Prefer: libreoffice:libreoffice-branding-upstream
+Prefer: libsocialweb:libsocialweb-branding-upstream
+Prefer: libxfce4ui:libxfce4ui-branding-upstream
+Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream
+Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream
+Prefer: NetworkManager:NetworkManager-branding-openSUSE
+Prefer: PackageKit:PackageKit-branding-upstream
+Prefer: plasma5-desktop:plasma5-desktop-branding-upstream
+Prefer: plasma5-workspace:plasma5-workspace-branding-upstream
+Prefer: sddm:sddm-branding-upstream
+Prefer: systemd-presets-branding-openSUSE
+Prefer: wallpaper-branding-openSUSE
+Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream
+Prefer: xfce4-settings:xfce4-settings-branding-upstream
+Prefer: xfdesktop:xfdesktop-branding-upstream
+Prefer: yast2-branding-openSUSE
+Prefer: yast2-qt:yast2-qt-branding-openSUSE
+Prefer: yast2-theme-openSUSE
+
+# Build cycle handling - prefer -mini packages were possible, break deps as needed
+Conflict: krb5-devel:krb5-mini
+Conflict: krb5:krb5-mini-devel
+Prefer: gettext-tools-mini gettext-runtime-mini
+Prefer: ghostscript-mini
+Prefer: krb5-mini-devel:krb5-mini
+Prefer: krb5-mini krb5-mini-devel
+Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo
+Prefer: libunbound-devel-mini
+Prefer: log4j-mini
+Prefer: systemd-mini-devel:systemd-mini
+Prefer: systemd-mini systemd-mini-devel libsystemd0-mini
+Prefer: udev-mini libcom_err2-mini libext2fs2-mini
+Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel
+
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: erlang-rebar-obs:this-is-only-for-build-envs
+Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs
+Ignore: jdk-bootstrap:this-is-only-for-build-envs
+Ignore: libsystemd0-mini:this-is-only-for-build-envs
+Ignore: libudev-mini1:this-is-only-for-build-envs
+Ignore: libunbound-devel-mini:this-is-only-for-build-envs
+Ignore: systemd-mini:this-is-only-for-build-envs
+Ignore: udev-mini:this-is-only-for-build-envs
+Ignore: curl-mini:this-is-only-for-build-envs
+Ignore: libcurl-mini-devel:this-is-only-for-build-envs
+Ignore: libcurl4-mini:this-is-only-for-build-envs
+
+# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system
+Ignore: Mesa:Mesa-dri
+Ignore: Mesa:Mesa-gallium
+
+# man uses cron to update the DB normally, but we don't care for that in the build system
+Ignore: man:cron
+
+# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems
+Conflict: kiwi:curl-mini
+Conflict: kiwi:libudev-mini1
+Conflict: kiwi:systemd-mini
+# And also for python3-kiwi
+Conflict: python3-kiwi:curl-mini
+Conflict: python3-kiwi:libudev-mini1
+Conflict: python3-kiwi:systemd-mini
+
+# udev: -full and -mini packages don't mingle well
+Prefer: libudev1:udev
+Conflict: libudev1:udev-mini
+Conflict: udev:libudev-mini1
+
+# systemd: -full and -mini packages don't mingle well
+Conflict: systemd:libsystemd0-mini
+Conflict: systemd-mini-devel:systemd
+
+# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl
+Prefer: cmake:libcurl4-mini
+Prefer: curl libcurl-devel libcurl4
+
+Prefer: -suse-build-key
+# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs)
+Prefer: postfix
+
+# go exists in mutliple versions by now - we prefer the 'unversioned package' - current default is 1.9
+Prefer: go go1.9
+
+# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one'
+Prefer: python2-pep8 python3-pep8
+
+# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl
+Prefer: perl
+
+# Assist migration to python-pycups (python3-cups is going to be removed)
+Prefer: python3-pycups python-pycups
+
+# Apache requires a MPM - we pick prefork
+Prefer: apache2:apache2-prefork
+
+# for symbol syslog (syslogd is best as it has the least dependencies)
+Prefer: syslogd
+
+# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt
+Prefer: star-rmt
+
+# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon;
+Prefer: notification-daemon
+
+# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW)
+Prefer: dummy-release
+
+# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version
+Prefer: -nodejs4 -nodejs6
+
+# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original'
+Prefer: libpulse0-32bit
+
+# Have choice for vtk-java/vtk-tcl needed by vtk-devel
+Prefer: vtk-java vtk-tcl
+
+# wine comes in various flavors by now, we pick the unflavored ones
+Prefer: wine-32bit wine-devel-32bit wine-devel
+
+# Ruby stuff - quite a few packages exist in multiple versions in the distro; in each case, the Preference is on the 'unversioned' package
+Prefer: ruby2.5-rubygem-tilt
+Prefer: ruby2.5-rubygem-mail
+Prefer: ruby2.5-rubygem-addressable
+Prefer: ruby2.5-rubygem-thor
+
+# python-msgpack-python was renamed to python-msgpack with 0.5 as a single-spec package (provides/obsoletes in place)
+Prefer: python2-msgpack python3-msgpack
+
+# Below list still needs to be reviewed
+
+Prefer: xorg-x11-Xvnc:icewm
+Prefer: cracklib-dict-small
+Prefer: libstdc++6 libgcc_s1 libquadmath0
+Prefer: libstdc++6-32bit libstdc++6-64bit
+Prefer: libstdc++6-x86
+Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit
+%ifarch s390x
+Prefer: -libstdc++41
+%endif
+Prefer: syslog-service
+Prefer: poppler-tools
+Prefer: libjpeg8-devel libjpeg-turbo
+Prefer: microcode_ctl:kernel-default
+Prefer: gnu-jaf yast2-control-center-qt
+Prefer: vim-normal myspell-american wine
+Prefer: amarok:amarok-xine
+Prefer: kdenetwork3-vnc:tightvnc
+Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api
+Prefer: -dbus-1-nox11
+Prefer: -servletapi3 -servletapi4 -servletapi5
+Prefer: icewm-lite
+Prefer: yast2-ncurses-pkg
+Prefer: monodevelop: mono-addins
+Prefer: texlive-xmltex texlive-tools texlive-jadetex
+Prefer: libesd-devel:esound
+Prefer: libesd0:esound-daemon
+Prefer: package-lists-openSUSE-KDE-cd: esound-daemon
+Prefer: librest-0_7-0
+
+
+Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail
+Prefer: rhino:xmlbeans-mini
+Prefer: mx4j:log4j-mini
+
+
+Prefer: rpcbind eclipse-source
+Prefer: libcdio_cdda0 libcdio_paranoia0
+Prefer: boo tog-pegasus
+Prefer: sysvinit(network) wicked-service
+Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd
+Prefer: kdebase4-openSUSE:kdebase4-workspace
+Prefer: ant:xerces-j2
+Prefer: dhcp-client:dhcp
+Prefer: libGLw1
+# provides typelib(St)
+Prefer: -cinnamon
+Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es
+Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el
+Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl
+Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da
+Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb
+Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar
+Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr
+Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el
+Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs
+Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu
+Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv
+Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar
+Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr
+Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el
+Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs
+Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu
+Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv
+Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar
+Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr
+Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el
+Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru
+Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da
+Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv
+Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar
+Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++
+Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g
+Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links
+Prefer: -python-setuptools
+Prefer: -kdenetwork3-InstantMessenger
+Prefer: -icc-profiles
+Prefer: vala
+# in doubt, take xerces
+Prefer: -crimson
+# in doubt, take higher versions
+Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4
+Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3
+Prefer: -rubygem-json_pure-1_5
+Prefer: -ruby2.4-rubygem-fast_gettext-1_1 -ruby2.4-rubygem-listen-3_0 -ruby2.4-rubygem-nokogiri-1_6 -ruby2.4-rubygem-i18n-0_6 -ruby2.4-rubygem-ruby_dep-1_3 -ruby2.4-rubygem-childprocess-0_6
+Prefer: -ruby2.4-rubygem-mime-types-1
+Prefer: -ruby2.5-rubygem-rspec-2_14
+Prefer: -ruby2.5-rubygem-mime-types-1
+Prefer: geronimo-servlet-2_4-api
+Prefer: openmpi-config
+Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi -libhdf5_hl100-mvapich2 -libhdf5-101-mvapich2 -libhdf5-101-openmpi
+Prefer: -hdf5-1_8-devel
+Prefer: fftw3-devel
+# prefer the small systemd for building
+Prefer: star
+Prefer: xmlgraphics-commons:apache-commons-io
+# the -32bit stuff provides things it shouldn't (hopefully temporary)
+Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit
+Prefer: postgresql postgresql-server postgresql-devel
+Prefer: -unzip-rcc
+Prefer: -primus -primus-32bit
+Prefer: -staging-build-key
+Prefer: -sssd-wbclient
+Prefer: -clutter-gst-devel
+Prefer: -opencv-qt5-devel
+Prefer: -python-configparser2
+
+# ffmpeg-3 and ffmpeg-4 handling
+Prefer: libvpx-devel
+Prefer: ffmpeg-3-libavcodec-devel ffmpeg-3-libavdevice-devel ffmpeg-3-libavfilter-devel ffmpeg-3-libavformat-devel ffmpeg-3-libavresample-devel ffmpeg-3-libavutil-devel ffmpeg-3-libpostproc-devel ffmpeg-3-libswresample-devel ffmpeg-3-libswscale-devel ffmpeg-3-private-devel
+Prefer: -ffmpeg2-devel
+Substitute: ffmpeg2-devel ffmpeg-2-libavcodec-devel
+Prefer: -ffmpeg3-devel
+Substitute: ffmpeg3-devel ffmpeg-3-libavcodec-devel
+Prefer: -libavcodec-devel -libavdevice-devel -libavfilter-devel -libavformat-devel -libavresample-devel -libavutil-devel -libpostproc-devel -libswresample-devel -libswscale-devel -ffmpeg-private-devel
+# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg
+Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel
+
+# as long as kactivities4 exists and is provided
+Prefer: kactivities5
+# oxygen5-icon-theme osboletes oxygen-icon-theme
+Prefer: oxygen5-icon-theme
+
+# kernel bug (coolo)
+Prefer: kernel-default-devel
+
+# explicitly prefer openssl version openssl package is used, for openssl(cli)
+Prefer: openssl-1_1
+
+Prefer: wxWidgets-3_0-devel
+Prefer: libopenssl-devel
+
+Prefer: -NX -xaw3dd -db43
+Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis
+Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit
+Prefer: libffi-devel
+Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0
+Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit
+Prefer: libgcc_s1-x86 libgcj_bc1
+Prefer: libgomp1 libgomp1-32bit libgomp1-64bit
+Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit
+Prefer: libobjc4 libgfortran3 libquadmath0
+Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini
+Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel
+Prefer: -seamonkey
+Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2
+Prefer: libopenal0-soft openal-soft -lsb-buildenv
+Prefer: -libevent
+Prefer: gnu-crypto libusb-compat-devel
+Prefer: libusb-0_1-4
+Prefer: libreoffice:xerces-j2
+Prefer: k3b:libdvdread4
+Prefer: glibc-devel
+Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 -libnetcdf13-openmpi libnetcdf11 netcdf-devel netcdf-devel-data
+Prefer: NetworkManager:dhcp-client
+Prefer: kdebase3-SuSE:kdebase3
+Prefer: pcre-tools
+Prefer: libpopt0 makeinfo
+Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2
+Prefer: libgnome-keyring-devel
+Prefer: gnome-keyring-32bit
+Prefer: linux-glibc-devel
+Prefer: squid sysvinit
+Prefer: libpng16-compat-devel
+Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0
+Prefer: python3-docutils
+Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs
+#needed because new xml-commons package
+Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis
+Prefer: xmlgraphics-fop:xerces-j2
+Prefer: cogl-devel
+Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage
+Prefer: libpsm2-compat
+# choice p11-kit-nss-trust
+Prefer: mozilla-nss-certs
+# amarok dependency resolution
+Prefer: phonon-backend-gstreamer
+# replacing mkinitrd
+Prefer: dracut
+# replacing module-init-tools
+Prefer: kmod-compat
+# Temporary
+Prefer: oxygen5-cursors
+# Temporary
+Prefer: -perl-App-cpanminus
+# libmediaart is prepared for a larger update; for now favor mediaart-1.0
+Prefer: -typelib-1_0-MediaArt-2_0
+Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0
+Prefer: -python-atspi
+Prefer: gettext-its-gtk3 gtk3-schema
+# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory
+Prefer: ghostscript-devel
+# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it
+Prefer: libotf-devel
+
+# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel
+Prefer: libmysqlclient-devel
+
+# have choice for perl(Math::BigInt) >= 1.999808: amanda perl-Math-BigInt
+Prefer: perl-Math-BigInt
+
+Ignore: installation-images-openSUSE:cracklib-dict-full
+Ignore: systemd-sysvinit:systemd
+Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome
+Ignore: cracklib:cracklib-dict
+Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev
+Ignore: sysvinit:mingetty
+Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel
+Ignore: libgcj43,libstdc++43-devel
+Ignore: libgcj44,libstdc++44-devel
+Ignore: libgcj45,libstdc++45-devel
+Ignore: libgcj46,libstdc++46-devel
+Ignore: libgcj47,libstdc++47-devel
+Ignore: librtas:util-linux
+Ignore: pwdutils:openslp
+Ignore: rpm:suse-build-key,build-key
+Ignore: cloud-init:cloud-init-config
+# python-pyudev requires libudev1 in normal situations
+Ignore: python-pyudev:libudev1
+Ignore: python-SPARQLWrapper:python-rdflib
+Ignore: python3-SPARQLWrapper:python3-rdflib
+Ignore: bind-utils:bind-libs
+Ignore: portmap:syslogd
+Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng
+Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video
+Ignore: apache2:logrotate
+Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis
+Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper
+Ignore: kdelibs3-devel:libvorbis-devel
+Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb
+Ignore: kdebase3-SuSE:release-notes
+Ignore: jack:alsa,libsndfile
+Ignore: libxml2-devel:readline-devel
+Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration
+Ignore: libgda:file_alteration
+Ignore: gnutls:lzo,libopencdk
+Ignore: gnutls-devel:lzo-devel,libopencdk-devel
+Ignore: pango:cairo,glitz,libpixman,libpng
+Ignore: pango-devel:cairo-devel
+Ignore: cairo-devel:libpixman-devel
+Ignore: libgnomeprint:libgnomecups
+Ignore: libgnomeprintui:libgnomecups
+Ignore: orbit2-devel:indent
+Ignore: qt3:libmng
+Ignore: qt-sql:qt_database_plugin
+Ignore: libgnomecanvas-devel:glib-devel
+Ignore: libgnomeui:gnome-icon-theme,shared-mime-info
+Ignore: scrollkeeper:docbook_4
+Ignore: gnome-desktop:libgnomesu,startup-notification
+Ignore: python-devel:python-tk
+Ignore: libgtk-3-0:adwaita-icon-theme
+Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg
+Ignore: samba-libs:krb5
+Ignore: libbonoboui:gnome-desktop
+Ignore: libxfce4ui-1-0:exo-tools
+Ignore: docbook_4:iso_ent,xmlcharent
+Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification
+Ignore: docbook-xsl-stylesheets:xmlcharent
+Ignore: liby2util-devel:libstdc++-devel,openssl-devel
+Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2
+Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils
+Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel
+Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel
+Ignore: yast2-devtools:libxslt
+Ignore: yast2-iscsi-lio-server:lio-utils
+Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation
+Ignore: yast2-bootloader:bootloader-theme
+Ignore: yast2-packager:yast2-x11,libyui_pkg
+Ignore: autoyast2:yast2-schema
+# not during build
+Ignore: yui_backend
+Ignore: yast2-x11:sax2-libsax-perl
+Ignore: yast2-network:yast2-inetd
+Ignore: openslp-devel:openssl-devel
+Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed
+Ignore: texlive-bin:ghostscript-x11
+Ignore: texlive-bin-omega:ghostscript-x11
+Ignore: yast2-country:yast2-trans-stats
+Ignore: tpb:tpctl-kmp
+Ignore: tpctl:tpctl-kmp
+Ignore: zaptel:zaptel-kmp
+Ignore: mkinitrd:pciutils
+Ignore: pciutils:pciutils-ids
+Ignore: postfix:iproute2
+Ignore: aaa_base:systemd
+Ignore: gpm:systemd
+Ignore: openssh:systemd
+Ignore: cronie:systemd
+Ignore: systemd:kbd
+Ignore: systemd:kmod
+Ignore: systemd:systemd-presets-branding
+Ignore: systemd:dbus-1
+Ignore: systemd:pam-config
+Ignore: systemd:udev
+Ignore: pesign:systemd
+Ignore: logrotate:cron
+Ignore: texlive-filesystem:cron
+Ignore: xinit:xterm
+Ignore: xdm:xterm
+Ignore: gnome-control-center:gnome-themes-accessibility
+
+
+Ignore: man:groff-full
+Ignore: git-core:rsync
+Ignore: apache2:systemd
+Ignore: icewm-lite:icewm
+Ignore: cluster-glue:sudo
+Ignore: libgcc:glibc-32bit
+Ignore: libgcc41:glibc-32bit
+Ignore: libgcc42:glibc-32bit
+Ignore: libgcc43:glibc-32bit
+Ignore: libgcc44:glibc-32bit
+Ignore: libgcc45:glibc-32bit
+Ignore: libgcc46:glibc-32bit
+Ignore: libgcc47:glibc-32bit
+Ignore: libstdc++:glibc-32bit
+Ignore: libstdc41++:glibc-32bit
+Ignore: libstdc42++:glibc-32bit
+Ignore: libstdc43++:glibc-32bit
+Ignore: libstdc44++:glibc-32bit
+Ignore: libstdc45++:glibc-32bit
+Ignore: libstdc46++:glibc-32bit
+Ignore: libstdc47++:glibc-32bit
+Ignore: ncurses-32bit
+
+Ignore: susehelp:susehelp_lang,suse_help_viewer
+Ignore: mailx:smtp_daemon
+Ignore: cron:smtp_daemon
+Ignore: hotplug:syslog
+Ignore: pcmcia:syslog
+Ignore: openct:syslog
+Ignore: postfix:sysvinit(syslog)
+Ignore: cups:sysvinit(syslog)
+Ignore: jython:servlet
+Ignore: ispell:ispell_dictionary,ispell_english_dictionary
+Ignore: aspell:aspel_dictionary,aspell_dictionary
+Ignore: smartlink-softmodem:kernel,kernel-nongpl
+Ignore: libreoffice-de:myspell-german-dictionary
+Ignore: libreoffice:libreoffice-i18n
+Ignore: libreoffice:libreoffice-icon-themes
+Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any
+Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl
+Ignore: perl-Log-Log4perl:rrdtool
+
+Ignore: simias:mono(log4net)
+Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php
+
+Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver
+Ignore: xdg-menu:desktop-data
+Ignore: nessus-libraries:nessus-core
+Ignore: evolution:yelp
+Ignore: e17:e17-branding e17:e17-theme
+
+Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp)
+Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp)
+
+Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4)
+Ignore: libcdio:libcddb.so.2
+
+Ignore: coreutils:coreutils-lang
+Ignore: cpio:cpio-lang
+Ignore: glib2:glib2-lang
+Ignore: gtk2:gtk2-lang
+Ignore: gtk:gtk-lang
+Ignore: atk:atk-lang
+Ignore: MozillaThunderbird:pinentry-dialog
+Ignore: seamonkey:pinentry-dialog
+Ignore: pinentry:pinentry-dialog
+Ignore: gpg2:gpg2-lang
+Ignore: util-linux:util-linux-lang
+Ignore: suseRegister:distribution-release
+Ignore: compiz:compiz-decorator
+Ignore: icecream:gcc-c++
+Ignore: no
+Ignore: package
+Ignore: provides
+Ignore: j9vm/libjvm.so()(64bit)
+Ignore: kdepim3:suse_help_viewer
+Ignore: kdebase3-SuSE:kdebase3-SuSE-branding
+Ignore: kio_sysinfo:kdebase3-SuSE-branding
+Ignore: gnome-menus:gnome-menus-branding
+Ignore: epiphany:epiphany-branding
+Ignore: gnome-control-center:gnome-control-center-branding
+Ignore: phonon:phonon-backend
+Ignore: openwbem-devel
+Ignore: MozillaFirefox:MozillaFirefox-branding
+Ignore: yast2:yast2-branding
+Ignore: plymouth:plymouth-branding
+Ignore: plymouth:suspend
+Ignore: yast2-qt:yast2-branding
+Ignore: yast2-theme-SLE:yast2-branding
+Ignore: yast2-registration:yast2-registration-branding
+Ignore: compiz:compiz-branding
+Ignore: texlive:perl-Tk texlive-bin:perl-Tk
+Ignore: xfce4-desktop:xfce4-desktop-branding
+Ignore: xfce4-panel:xfce4-panel-branding
+Ignore: xfce4-session:xfce4-session-branding
+Ignore: kdebase4-runtime:kdebase4-runtime-branding
+Ignore: kwin:kdebase4-workspace-branding
+Ignore: transmission-common:transmission-ui
+Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd
+Ignore: mkinitrd:sbin_init
+Ignore: opensc:pinentry
+Ignore: gpg2:pinentry
+Ignore: NetworkManager:dhcp
+Ignore: NetworkManager:iproute2
+# sysconfig requires it at runtime, not buildtime
+Ignore: sysconfig:dbus-1
+Ignore: sysconfig:procps
+Ignore: sysconfig:iproute2
+Ignore: sysconfig-network:iproute2
+Ignore: sysconfig:tunctl
+Ignore: sysconfig:sysvinit(network)
+# no build dependencies
+Ignore: libksuseinstall1:yast2-packager
+Ignore: libksuseinstall1:zypper
+Ignore: syslog-service:logrotate
+Ignore: libglue-devel:cluster-glue
+Ignore: libqca2:gpg2
+Ignore: NetworkManager:wpa_supplicant
+Ignore: NetworkManager:dhcp-client
+Ignore: libgio-2_0-0:dbus-1-x11
+Ignore: weather-wallpaper:inkscape
+Ignore: libgamin-1-0:gamin-server
+Ignore: libfam0-gamin:gamin-server
+Ignore: python3:python3-pip
+Ignore: avahi:sysvinit(network)
+Ignore: cluster-glue:sysvinit(network)
+Ignore: dracut:systemd-sysvinit
+
+%ifarch ppc64le
+#Constraint: hostlabel PPC64LE_HOST
+Constraint: hardware:cpu:flag power8
+%endif
+
+Macros:
+# RUBY - UNVERSIONED STUFF
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in the
+# prjconf aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}}
+%rubygemsSTOP() %nil
+%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*}
+%rubygemsxxSTOP(a:) %{-a*}) %*
+
+%rubySTOP() %nil
+%rubyxSTOP() %*
+
+%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}}
+
+%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}}
+
+%rubydevelSTOP() %nil
+%rubydevelxSTOP() %*
+#
+
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in
+# ruby2.5 aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+
+
+%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}}
+%rubygemsxruby25() %{expand:%%{rubygemsx%*}}
+
+%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}}
+%rubyxruby25() %{expand:%%{rubyx%*}}
+
+%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}}
+%rubydevelxruby25() %{expand:%%{rubydevelx%*}}
+
+%_with_ruby25 1
+
+### Things to define default ruby stuff for the distro
+
+%rb_default_ruby ruby25
+%rb_default_ruby_suffix ruby2.5
+%rb_default_ruby_abi ruby:2.5.0
+
+%rb_build_ruby_abis ruby:2.5.0
+%rb_build_versions ruby25
+:Macros
+
+%define _with_ruby25 1
+
+%define rb_default_ruby ruby25
+%define rb_default_ruby_suffix ruby2.5
+%define rb_default_ruby_abi ruby:2.5.0
+
+%define rb_build_ruby_abis ruby:2.5.0
+%define rb_build_versions ruby25
+
+Prefer: -ruby-stdlib
+Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm
+Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus
+Prefer: %{rb_default_ruby_suffix}-rubygem-yard
+Prefer: %{rb_default_ruby_suffix}-rubygem-rspec
+Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake
+Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah
+Prefer: %{rb_default_ruby_suffix}-rubygem-inifile
+Prefer: %{rb_default_ruby_suffix}-rubygem-bundler
+Prefer: %{rb_default_ruby_suffix}-rubygem-sass
+Prefer: %{rb_default_ruby_suffix}-rubygem-cfa
+Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types
+
+# END RUBY STUFF
+
+# PYTHON STUFF
+
+Macros:
+%pythons %{?!skip_python2:python2} %{?!skip_python3:python3}
+
+# This method for generating python_modules gets too deep to expand at about 5 python flavors.
+# It is replaced by a Lua macro in macros.lua
+# However, OBS has a much higher expansion depth, so this works fine.
+%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}}
+%python_module_iter_STOP stop
+%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}}
+
+%add_python() %{expand:%%define pythons %pythons %1}
+:Macros
+
+# END PYTHON STUFF
+
+# BEGIN RUST STUFF
+
+# Define the architectures in which Rust (and Rust crates) are available
+# NOTE: Keep this in sync with rust-srpm-macros!
+%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x
+
+Macros:
+%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x
+:Macros
+
+# END RUST STUFF
+
+# Default to Java 11
+Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless
+# Fall back to Java 10, if there was no java 11 option
+Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless
+# Fall back to Java 9, if there was no java 10 option
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+# Prefer java 8 if java 9 was no option
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+# And then fall back to java 7 if needed
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+# And then fall back to java 7 bootstrap if needed
+Prefer: java-1_7_0-bootstrap java-1_7_0-bootstrap-devel java-1_7_0-bootstrap-javadoc java-1_7_0-bootstrap-headless
+Substitute: java2-devel-packages java-devel
+
+%ifarch x86_64 ppc64 s390x sparc64
+Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit
+%else
+ %ifarch ppc sparc sparcv9
+Substitute: glibc-devel-32bit glibc-devel-64bit
+ %else
+Substitute: glibc-devel-32bit
+ %endif
+%endif
+
+%ifarch %ix86
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen
+%endif
+%ifarch ia64
+Substitute: kernel-binary-packages kernel-default kernel-debug
+%endif
+%ifarch x86_64
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen
+%endif
+%ifarch ppc
+Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3
+%endif
+%ifarch ppc64
+Substitute: kernel-binary-packages kernel-default kernel-ppc64
+%endif
+%ifarch s390
+Substitute: kernel-binary-packages kernel-s390
+%endif
+%ifarch s390x
+Substitute: kernel-binary-packages kernel-default
+%endif
+
+Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches
+Optflags: i686 -march=i686 -mtune=generic -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches
+Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390x -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches
+# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops)
+Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+%ifarch sparcv9
+Target: sparcv9
+%endif
+%ifarch armv6l armv6hl
+Target: armv6hl-suse-linux
+%endif
+%ifarch armv7l armv7hl
+Target: armv7hl-suse-linux
+%endif
+
+
+#Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables
+Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection
+
+# 13.3 does not exist !
+%define suse_version 1500
+%define is_opensuse 1
+%define sle_version 150100
+
+RepoURL: https://download.opensuse.org/distribution/leap/15.1/repo/oss
+RegistryURL: https://registry.opensuse.org
+
+Macros:
+%suse_version 1500
+%is_opensuse 1
+%sle_version 150100
+
+%insserv_prereq insserv sed
+%fillup_prereq fillup coreutils grep diffutils
+%suseconfig_fonts_prereq perl aaa_base
+%install_info_prereq info
+%kernel_module_package_buildreq kmod-compat kernel-syms
+%kernel_module_package_buildreqs kmod-compat kernel-syms
+
+%sles_version 0
+%ul_version 0
+%do_profiling 1
+%opensuse_bs 1
+%_vendor suse
+
+# Reproducible builds
+%source_date_epoch_from_changelog Y
+
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 7
+# The following shlibs have latest versions built from GCC 6 sources
+%product_libs_gcc_ver_libasan3 6
+%product_libs_gcc_ver_libgo9 6
+%product_libs_gcc_ver_libgfortran3 6
+# reminded by richi 2017 4/3
+%product_libs_gcc_ver_libgcj_bc1 6
+# The following shlibs have been introduced with GCC 7
+%product_libs_gcc_ver_libmpxwrappers2 7
+%product_libs_gcc_ver_libmpx2 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libgfortran4 7
+%gcc_version 7
+
+%ext_info .gz
+%ext_man .gz
+
+%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+
+%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+:Macros
+
diff --git a/configs/sl15.2.conf b/configs/sl15.2.conf
new file mode 100755
index 0000000..35bccd3
--- /dev/null
+++ b/configs/sl15.2.conf
@@ -0,0 +1,988 @@
+
+Release: <CI_CNT>.<B_CNT> spec:lp152.<CI_CNT>.<B_CNT>
+%define gcc_version 7
+
+# Help with the switch to the gcc7 provided libs
+Prefer: -libstdc++6-gcc7 -libtsan0-gcc7 -libgomp1-gcc7 -libgcc_s1-gcc7 -libatomic1-gcc7 -libcilkrts5-gcc7 -libitm1-gcc7
+Prefer: -liblsan0-gcc7 -libmpx2-gcc7 -libubsan0-gcc7
+
+# Help with the switch to the gcc9 provided libs:
+Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5
+
+Substitute: kiwi-setup:image python3-kiwi createrepo_c
+Substitute: kiwi-image:tbz python3-kiwi
+Substitute: kiwi-image:docker python3-kiwi kiwi-image-docker-requires
+
+Prefer: kiwi-filesystem-requires
+Prefer: kiwi-image-docker-requires
+Prefer: kiwi-image-iso-requires
+Prefer: kiwi-image-vmx-requires
+
+# Migration to product builder
+Substitute: kiwi-packagemanager:instsource product-builder-plugin-Tumbleweed
+Substitute: system-packages:kiwi-product product-builder
+
+# allow builds using docker tool
+Substitute: build-packages:docker !systemd-mini !libsystemd0-mini !libudev-mini1 !udev-mini openSUSE-release-ftp containment-rpm-docker
+Substitute: build-packages:kiwi !systemd-mini !libsystemd0-mini !libudev-mini1 !udev-mini openSUSE-release-ftp
+
+# To build ISO images
+Substitute: build-packages:iso !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini
+
+# create conflicts for packages installed into the target image
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini
+Substitute: kiwi python3-kiwi
+
+Prefer: installation-images-openSUSE installation-images-debuginfodeps-openSUSE
+
+# switch to kiwi v8
+Prefer: python3-kiwi
+
+# LUA namespace migration - slowly moving to the new names (keep ports in mind!)
+# lua, lua51, lua52 and lua53 all provide 'lua'; version 5.3 is the 'target'; lua will be deleted in the future
+Prefer: lua53 lua51 lua52 lua
+Prefer: liblua5_3-5 liblua5_1-5 liblua5_2-5
+Prefer: lua53-devel lua51-devel lua52-devel
+Prefer: libtolua++-5_3-devel libtolua++-5_1-devel libtolua++-5_2-devel
+Prefer: -liblua5_3 -liblua5_1 -liblua5_2
+
+# ghc-bootstrap should not provide it to start with - but it does. so let's kick it
+Prefer: libffi7
+
+Preinstall: liblua5_3-5
+
+# Needed with latest rpm (Use libgcrypt as crypto library for SP2 and Leap 15.2 [jsc#SLE-9552])
+Preinstall: libgcrypt20 libgpg-error0
+
+# Needed with latest rpm (Added zstd support in SLE-15-SP2 [bsc#1162668])
+Preinstall: libzstd1
+
+FileProvides: /bin/csh tcsh
+FileProvides: /bin/logger util-linux-systemd
+FileProvides: /sbin/netconfig sysconfig-netconfig
+FileProvides: /sbin/setcap libcap-progs
+FileProvides: /usr/bin/csh tcsh
+FileProvides: /usr/bin/docbook2man docbook-utils
+FileProvides: /usr/bin/eu-nm elfutils
+FileProvides: /usr/bin/fipscheck fipscheck
+FileProvides: /usr/bin/killall psmisc
+FileProvides: /usr/bin/mimencode metamail
+FileProvides: /usr/bin/mkisofs mkisofs
+FileProvides: /usr/bin/pkg-config pkg-config
+FileProvides: /usr/bin/python python-base
+FileProvides: /usr/bin/python2 python2-base
+FileProvides: /usr/bin/python3 python3-base
+FileProvides: /usr/bin/setfacl acl
+FileProvides: /usr/bin/sg_inq sg3_utils
+FileProvides: /usr/bin/tput ncurses-utils
+FileProvides: /usr/bin/xmllint libxml2-tools
+FileProvides: /usr/bin/Xvfb xorg-x11-server
+FileProvides: /usr/sbin/groupadd shadow
+FileProvides: /usr/sbin/lockdev lockdev
+FileProvides: /usr/sbin/useradd shadow
+FileProvides: /usr/sbin/usermod shadow
+FileProvides: /usr/bin/host bind-utils
+
+Preinstall: aaa_base attr bash coreutils diffutils
+Preinstall: filesystem fillup glibc grep
+Preinstall: libbz2-1 libncurses6 pam
+Preinstall: libgcc_s1
+Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1
+Preinstall: liblzma5 libcap2 libacl1 libattr1
+Preinstall: libpopt0 libelf1
+Preinstall: libpcre1
+
+Runscripts: aaa_base
+
+Prefer: libdb-4_8-devel
+VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1
+VMinstall: kernel-obs-build
+VMInstall: net-tools-deprecated
+
+Required: rpm-build
+# Build all packages with -pie enabled
+Required: gcc-PIE
+
+# the basic stuff
+Support: perl build-mkbaselibs
+Prefer: build-mkbaselibs
+Support: brp-check-suse
+Support: post-build-checks rpmlint-Factory
+# Add hostname so that OBS/build will have a chance to identify the hostname (instead of localhost)
+Support: hostname
+
+### Branding related preferences
+Prefer: awesome:awesome-branding-upstream
+Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE
+Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream
+Prefer: enlightenment-theme-upstream
+Prefer: exo-data:exo-branding-upstream
+Prefer: fcitx:fcitx-branding-openSUSE
+Prefer: gdm:gdm-branding-upstream
+Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse
+Prefer: glib2:glib2-branding-upstream
+Prefer: gnome-panel:gnome-panel-branding-upstream
+Prefer: gnome-session:gconf2-branding-openSUSE
+Prefer: gnome-session:gnome-session-branding-openSUSE
+Prefer: icewm-theme-branding
+Prefer: kde4-kdm:kde4-kdm-branding-upstream
+Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream
+Prefer: kdelibs4-branding:kdelibs4-branding-upstream
+Prefer: kdelibs4:kdelibs4-branding-upstream
+Prefer: kdm:kdm-branding-upstream
+Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream
+Prefer: libexo-1-0:libexo-1-0-branding-upstream
+Prefer: libgarcon-1-0:libgarcon-branding-upstream
+Prefer: libgarcon-data:libgarcon-branding-upstream
+Prefer: libgio-2_0-0:gio-branding-upstream
+Prefer: libglib-2_0-0:glib2-branding-upstream
+Prefer: libpurple-branding-upstream
+Prefer: libreoffice:libreoffice-branding-upstream
+Prefer: libsocialweb:libsocialweb-branding-upstream
+Prefer: libxfce4ui:libxfce4ui-branding-upstream
+Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream
+Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream
+Prefer: NetworkManager:NetworkManager-branding-openSUSE
+Prefer: PackageKit:PackageKit-branding-upstream
+Prefer: plasma5-desktop:plasma5-desktop-branding-upstream
+Prefer: plasma5-workspace:plasma5-workspace-branding-upstream
+Prefer: sddm:sddm-branding-upstream
+Prefer: systemd-presets-branding-openSUSE
+Prefer: wallpaper-branding-openSUSE
+Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream
+Prefer: xfce4-settings:xfce4-settings-branding-upstream
+Prefer: xfdesktop:xfdesktop-branding-upstream
+Prefer: yast2-branding-openSUSE
+Prefer: yast2-qt:yast2-qt-branding-openSUSE
+Prefer: yast2-theme-openSUSE
+
+# Build cycle handling - prefer -mini packages were possible, break deps as needed
+Conflict: krb5-devel:krb5-mini
+Conflict: krb5:krb5-mini-devel
+Prefer: gettext-tools-mini gettext-runtime-mini
+Prefer: ghostscript-mini
+Prefer: krb5-mini-devel:krb5-mini
+Prefer: krb5-mini krb5-mini-devel
+Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo
+Prefer: libunbound-devel-mini
+Prefer: log4j-mini
+Prefer: systemd-mini-devel:systemd-mini
+Prefer: systemd-mini systemd-mini-devel libsystemd0-mini
+Prefer: udev-mini libcom_err2-mini libext2fs2-mini
+Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel
+
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: erlang-rebar-obs:this-is-only-for-build-envs
+Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs
+Ignore: jdk-bootstrap:this-is-only-for-build-envs
+Ignore: libsystemd0-mini:this-is-only-for-build-envs
+Ignore: libudev-mini1:this-is-only-for-build-envs
+Ignore: libunbound-devel-mini:this-is-only-for-build-envs
+Ignore: systemd-mini:this-is-only-for-build-envs
+Ignore: udev-mini:this-is-only-for-build-envs
+Ignore: curl-mini:this-is-only-for-build-envs
+Ignore: libcurl-mini-devel:this-is-only-for-build-envs
+Ignore: libcurl4-mini:this-is-only-for-build-envs
+Ignore: ghc-bootstrap:this-is-only-for-build-envs
+Ignore: ghc-bootstrap-helpers:this-is-only-for-build-envs
+Ignore: cmake-mini:this-is-only-for-build-envs
+
+# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system
+Ignore: Mesa:Mesa-dri
+Ignore: Mesa:Mesa-gallium
+
+# man uses cron to update the DB normally, but we don't care for that in the build system
+Ignore: man:cron
+
+# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems
+Conflict: kiwi:curl-mini
+Conflict: kiwi:libudev-mini1
+Conflict: kiwi:systemd-mini
+# And also for python3-kiwi
+Conflict: python3-kiwi:curl-mini
+Conflict: python3-kiwi:libudev-mini1
+Conflict: python3-kiwi:systemd-mini
+
+# udev: -full and -mini packages don't mingle well
+Prefer: libudev1:udev
+Conflict: libudev1:udev-mini
+Conflict: udev:libudev-mini1
+
+# systemd: -full and -mini packages don't mingle well
+Conflict: systemd:libsystemd0-mini
+Conflict: systemd-mini-devel:systemd
+
+# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl
+Prefer: cmake:libcurl4-mini
+Prefer: curl libcurl-devel libcurl4
+# Prefer: -curl-mini -libcurl-mini-devel -libcurl4-mini
+
+Prefer: -suse-build-key
+# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs)
+Prefer: postfix
+# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal)
+
+# prefer the PHP5 variants over PHP7
+Prefer: php5-ctype
+Prefer: php5-devel
+Prefer: php5-dom
+Prefer: php5-ftp
+Prefer: php5-gd
+Prefer: php5-gettext
+Prefer: php5-mbstring
+Prefer: php5-pear
+Prefer: php5-pear-Archive_Tar
+Prefer: php5-pear-Horde
+Prefer: php5 php5-json
+Prefer: php5-tokenizer
+Prefer: php5-zip
+
+# go exists in mutliple versions by now - we prefer the 'unversioned package' - not true anymore
+# SP1 is prefer go1.12
+Prefer: go go1.12
+
+# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one'
+Prefer: python2-pep8 python3-pep8
+
+# There is python3-prompt_toolkit and also python3-prompt_toolkit1 for compat. Use the unversioned one by default
+Prefer: python3-prompt_toolkit
+
+# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl
+Prefer: perl
+
+# Assist migration to python-pycups (python3-cups is going to be removed)
+Prefer: python3-pycups python-pycups
+
+# Apache requires a MPM - we pick prefork
+Prefer: apache2:apache2-prefork
+
+# for symbol syslog (syslogd is best as it has the least dependencies)
+Prefer: syslogd
+
+# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt
+Prefer: star-rmt
+
+# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon;
+Prefer: notification-daemon
+
+# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW)
+Prefer: dummy-release
+
+# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version
+# SLE has no nodejs preference, let's use nodejs10
+Prefer: -nodejs4 -nodejs6 -nodejs9 nodejs10
+Prefer: npm10
+
+# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original'
+Prefer: libpulse0-32bit
+
+# Have choice for vtk-java/vtk-tcl/python3-vtk needed by vtk-devel
+Prefer: vtk-java vtk-tcl python3-vtk
+
+# wine comes in various flavors by now, we pick the unflavored ones
+Prefer: wine-32bit wine-devel-32bit wine-devel
+
+# Ruby stuff - quite a few packages exist in multiple versions in the distro; in each case, the Preference is on the 'unversioned' package
+Prefer: ruby2.5-rubygem-tilt
+Prefer: ruby2.5-rubygem-mail
+Prefer: ruby2.5-rubygem-addressable
+Prefer: ruby2.5-rubygem-thor
+
+# python-msgpack-python was renamed to python-msgpack with 0.5 as a single-spec package (provides/obsoletes in place)
+Prefer: python2-msgpack python3-msgpack
+
+# There is python3-Django and python3-Django1 - as usual, we favor the unversioned one
+Prefer: python3-Django
+
+# Below list still needs to be reviewed
+
+Prefer: xorg-x11-Xvnc:icewm
+Prefer: cracklib-dict-small
+Prefer: libstdc++6 libgcc_s1 libquadmath0
+Prefer: libstdc++6-32bit libstdc++6-64bit
+Prefer: libstdc++6-x86
+Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit
+%ifarch s390x
+Prefer: -libstdc++41
+%endif
+Prefer: syslog-service
+Prefer: poppler-tools
+Prefer: libjpeg8-devel libjpeg-turbo
+Prefer: microcode_ctl:kernel-default
+Prefer: gnu-jaf yast2-control-center-qt
+Prefer: vim-normal myspell-american wine
+Prefer: amarok:amarok-xine
+Prefer: kdenetwork3-vnc:tightvnc
+Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api
+Prefer: -dbus-1-nox11
+Prefer: -servletapi3 -servletapi4 -servletapi5
+Prefer: icewm-lite
+Prefer: yast2-ncurses-pkg
+Prefer: monodevelop: mono-addins
+Prefer: texlive-xmltex texlive-tools texlive-jadetex
+Prefer: libesd-devel:esound
+Prefer: libesd0:esound-daemon
+Prefer: package-lists-openSUSE-KDE-cd: esound-daemon
+Prefer: librest-0_7-0
+
+
+Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail
+Prefer: rhino:xmlbeans-mini
+Prefer: mx4j:log4j-mini
+
+
+Prefer: rpcbind eclipse-source
+Prefer: libcdio_cdda0 libcdio_paranoia0
+Prefer: boo tog-pegasus
+Prefer: sysvinit(network) wicked-service
+Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd
+Prefer: kdebase4-openSUSE:kdebase4-workspace
+Prefer: ant:xerces-j2
+Prefer: dhcp-client:dhcp
+Prefer: libGLw1
+# provides typelib(St)
+Prefer: -cinnamon
+Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es
+Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el
+Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl
+Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da
+Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb
+Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar
+Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr
+Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el
+Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs
+Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu
+Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv
+Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar
+Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr
+Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el
+Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs
+Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu
+Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv
+Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar
+Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr
+Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el
+Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru
+Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da
+Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv
+Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar
+Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++
+Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g
+Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links
+Prefer: -python-setuptools
+Prefer: -kdenetwork3-InstantMessenger
+Prefer: -icc-profiles
+Prefer: vala
+# in doubt, take xerces
+Prefer: -crimson
+# in doubt, take higher versions
+Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4
+Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3
+Prefer: -rubygem-json_pure-1_5
+Prefer: -ruby2.4-rubygem-fast_gettext-1_1 -ruby2.4-rubygem-listen-3_0 -ruby2.4-rubygem-nokogiri-1_6 -ruby2.4-rubygem-i18n-0_6 -ruby2.4-rubygem-ruby_dep-1_3 -ruby2.4-rubygem-childprocess-0_6
+Prefer: -ruby2.4-rubygem-mime-types-1
+Prefer: -ruby2.5-rubygem-rspec-2_14
+Prefer: -ruby2.5-rubygem-mime-types-1
+Prefer: geronimo-servlet-2_4-api
+Prefer: openmpi-config
+Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-101-openmpi -libhdf5-101-mvapich2 -libhdf5_hl101-openmpi libhdf5_hl100 -libhdf5-103-openmpi -libhdf5-103-mvapich2 -libhdf5_hl103-openmpi -libhdf5_cpp103-openmpi -libhdf5_cpp103-mvapich2 -libhdf5-103-openmpi2 -libhdf5-103-openmpi3 -libhdf5_cpp103-openmpi2 -libhdf5_cpp103-openmpi3
+Prefer: -hdf5-1_8-devel
+Prefer: -libvtk1-openmpi libvtk1-openmpi2
+Prefer: fftw3-devel ImageMagick-config-7-SUSE
+# prefer the small systemd for building
+Prefer: star
+Prefer: xmlgraphics-commons:apache-commons-io
+# the -32bit stuff provides things it shouldn't (hopefully temporary)
+Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit
+Prefer: postgresql postgresql-server postgresql-devel
+Prefer: -unzip-rcc
+Prefer: -primus -primus-32bit
+Prefer: -staging-build-key
+Prefer: -sssd-wbclient
+Prefer: -clutter-gst-devel
+Prefer: -opencv-qt5-devel
+Prefer: -python-configparser2
+
+# ffmpeg-3 and ffmpeg-4 handling
+Prefer: libvpx-devel
+Prefer: ffmpeg-3-libavcodec-devel ffmpeg-3-libavdevice-devel ffmpeg-3-libavfilter-devel ffmpeg-3-libavformat-devel ffmpeg-3-libavresample-devel ffmpeg-3-libavutil-devel ffmpeg-3-libpostproc-devel ffmpeg-3-libswresample-devel ffmpeg-3-libswscale-devel ffmpeg-3-private-devel
+Prefer: -ffmpeg2-devel
+Substitute: ffmpeg2-devel ffmpeg-2-libavcodec-devel
+Prefer: -ffmpeg3-devel
+Substitute: ffmpeg3-devel ffmpeg-3-libavcodec-devel
+Prefer: -libavcodec-devel -libavdevice-devel -libavfilter-devel -libavformat-devel -libavresample-devel -libavutil-devel -libpostproc-devel -libswresample-devel -libswscale-devel -ffmpeg-private-devel
+# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg
+Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel
+
+# as long as kactivities4 exists and is provided
+Prefer: kactivities5
+# oxygen5-icon-theme osboletes oxygen-icon-theme
+Prefer: oxygen5-icon-theme
+
+# kernel bug (coolo)
+Prefer: kernel-default-devel
+
+# explicitly prefer openssl version openssl package is used, for openssl(cli)
+Prefer: openssl-1_1
+
+Prefer: wxWidgets-3_0-devel
+Prefer: libopenssl-devel
+
+Prefer: -NX -xaw3dd -db43
+Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis
+Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit
+Prefer: libffi-devel
+Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0
+Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit
+Prefer: libgcc_s1-x86 libgcj_bc1
+Prefer: libgomp1 libgomp1-32bit libgomp1-64bit
+Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit
+Prefer: libobjc4 libgfortran3 libquadmath0
+Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini
+Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel
+Prefer: -seamonkey
+Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2
+Prefer: libopenal0-soft openal-soft -lsb-buildenv
+Prefer: -libevent
+Prefer: gnu-crypto libusb-compat-devel
+Prefer: libusb-0_1-4
+Prefer: libreoffice:xerces-j2
+Prefer: k3b:libdvdread4
+Prefer: glibc-devel
+Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 -libnetcdf13-openmpi -libnetcdf13-openmpi2 libnetcdf11 netcdf-devel netcdf-devel-data
+Prefer: NetworkManager:dhcp-client
+Prefer: kdebase3-SuSE:kdebase3
+Prefer: pcre-tools
+Prefer: libpopt0 makeinfo
+Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2
+Prefer: libgnome-keyring-devel
+Prefer: gnome-keyring-32bit
+Prefer: linux-glibc-devel
+Prefer: squid sysvinit
+Prefer: libpng16-compat-devel
+Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0
+Prefer: python3-docutils
+Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs
+#needed because new xml-commons package
+Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis
+Prefer: xmlgraphics-fop:xerces-j2
+Prefer: cogl-devel
+Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage
+Prefer: libpsm2-compat
+# choice p11-kit-nss-trust
+Prefer: mozilla-nss-certs
+# amarok dependency resolution
+Prefer: phonon-backend-gstreamer
+# replacing mkinitrd
+Prefer: dracut
+# replacing module-init-tools
+Prefer: kmod-compat
+# Temporary
+Prefer: oxygen5-cursors
+# Temporary
+Prefer: -perl-App-cpanminus
+# libmediaart is prepared for a larger update; for now favor mediaart-1.0
+Prefer: -typelib-1_0-MediaArt-2_0
+Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0
+Prefer: -python-atspi
+Prefer: gettext-its-gtk3 gtk3-schema
+# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory
+Prefer: ghostscript-devel
+# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it
+Prefer: libotf-devel
+
+# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel
+Prefer: libmysqlclient-devel
+
+# have choice for perl(Math::BigInt) >= 1.999808: amanda perl-Math-BigInt
+Prefer: perl-Math-BigInt
+
+Ignore: installation-images-openSUSE:cracklib-dict-full
+Ignore: systemd-sysvinit:systemd
+Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome
+Ignore: cracklib:cracklib-dict
+Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev
+Ignore: sysvinit:mingetty
+Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel
+Ignore: libgcj43,libstdc++43-devel
+Ignore: libgcj44,libstdc++44-devel
+Ignore: libgcj45,libstdc++45-devel
+Ignore: libgcj46,libstdc++46-devel
+Ignore: libgcj47,libstdc++47-devel
+Ignore: librtas:util-linux
+Ignore: pwdutils:openslp
+Ignore: rpm:suse-build-key,build-key
+Ignore: cloud-init:cloud-init-config
+# python-pyudev requires libudev1 in normal situations
+Ignore: python-pyudev:libudev1
+Ignore: python-SPARQLWrapper:python-rdflib
+Ignore: python3-SPARQLWrapper:python3-rdflib
+Ignore: bind-utils:bind-libs
+Ignore: portmap:syslogd
+Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng
+Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video
+Ignore: apache2:logrotate
+Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis
+Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper
+Ignore: kdelibs3-devel:libvorbis-devel
+Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb
+Ignore: kdebase3-SuSE:release-notes
+Ignore: jack:alsa,libsndfile
+Ignore: libxml2-devel:readline-devel
+Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration
+Ignore: libgda:file_alteration
+Ignore: gnutls:lzo,libopencdk
+Ignore: gnutls-devel:lzo-devel,libopencdk-devel
+Ignore: pango:cairo,glitz,libpixman,libpng
+Ignore: pango-devel:cairo-devel
+Ignore: cairo-devel:libpixman-devel
+Ignore: libgnomeprint:libgnomecups
+Ignore: libgnomeprintui:libgnomecups
+Ignore: orbit2-devel:indent
+Ignore: qt3:libmng
+Ignore: qt-sql:qt_database_plugin
+Ignore: libgnomecanvas-devel:glib-devel
+Ignore: libgnomeui:gnome-icon-theme,shared-mime-info
+Ignore: scrollkeeper:docbook_4
+Ignore: gnome-desktop:libgnomesu,startup-notification
+Ignore: python-devel:python-tk
+Ignore: libgtk-3-0:adwaita-icon-theme
+Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg
+Ignore: samba-libs:krb5
+Ignore: libbonoboui:gnome-desktop
+Ignore: libxfce4ui-1-0:exo-tools
+Ignore: docbook_4:iso_ent,xmlcharent
+Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification
+Ignore: docbook-xsl-stylesheets:xmlcharent
+Ignore: liby2util-devel:libstdc++-devel,openssl-devel
+Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2
+Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils
+Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel
+Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel
+Ignore: yast2-devtools:libxslt
+Ignore: yast2-iscsi-lio-server:lio-utils
+Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation
+Ignore: yast2-bootloader:bootloader-theme
+Ignore: yast2-packager:yast2-x11,libyui_pkg
+Ignore: autoyast2:yast2-schema
+# not during build
+Ignore: yui_backend
+Ignore: yast2-x11:sax2-libsax-perl
+Ignore: yast2-network:yast2-inetd
+Ignore: openslp-devel:openssl-devel
+Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed
+Ignore: texlive-bin:ghostscript-x11
+Ignore: texlive-bin-omega:ghostscript-x11
+Ignore: yast2-country:yast2-trans-stats
+Ignore: tpb:tpctl-kmp
+Ignore: tpctl:tpctl-kmp
+Ignore: zaptel:zaptel-kmp
+Ignore: mkinitrd:pciutils
+# Not true anymore peri-i
+#Ignore: pciutils:pciutils-ids
+Ignore: postfix:iproute2
+Ignore: aaa_base:systemd
+Ignore: gpm:systemd
+Ignore: openssh:systemd
+Ignore: cronie:systemd
+Ignore: systemd:kbd
+Ignore: systemd:kmod
+Ignore: systemd:systemd-presets-branding
+Ignore: systemd:dbus-1
+Ignore: systemd:pam-config
+Ignore: systemd:udev
+Ignore: pesign:systemd
+Ignore: logrotate:cron
+Ignore: texlive-filesystem:cron
+Ignore: xinit:xterm
+Ignore: xdm:xterm
+Ignore: gnome-control-center:gnome-themes-accessibility
+
+
+Ignore: man:groff-full
+Ignore: git-core:rsync
+Ignore: apache2:systemd
+Ignore: icewm-lite:icewm
+Ignore: cluster-glue:sudo
+Ignore: libgcc:glibc-32bit
+Ignore: libgcc41:glibc-32bit
+Ignore: libgcc42:glibc-32bit
+Ignore: libgcc43:glibc-32bit
+Ignore: libgcc44:glibc-32bit
+Ignore: libgcc45:glibc-32bit
+Ignore: libgcc46:glibc-32bit
+Ignore: libgcc47:glibc-32bit
+Ignore: libstdc++:glibc-32bit
+Ignore: libstdc41++:glibc-32bit
+Ignore: libstdc42++:glibc-32bit
+Ignore: libstdc43++:glibc-32bit
+Ignore: libstdc44++:glibc-32bit
+Ignore: libstdc45++:glibc-32bit
+Ignore: libstdc46++:glibc-32bit
+Ignore: libstdc47++:glibc-32bit
+Ignore: ncurses-32bit
+
+Ignore: susehelp:susehelp_lang,suse_help_viewer
+Ignore: mailx:smtp_daemon
+Ignore: cron:smtp_daemon
+Ignore: hotplug:syslog
+Ignore: pcmcia:syslog
+Ignore: openct:syslog
+Ignore: postfix:sysvinit(syslog)
+Ignore: cups:sysvinit(syslog)
+Ignore: jython:servlet
+Ignore: ispell:ispell_dictionary,ispell_english_dictionary
+Ignore: aspell:aspel_dictionary,aspell_dictionary
+Ignore: smartlink-softmodem:kernel,kernel-nongpl
+Ignore: libreoffice-de:myspell-german-dictionary
+Ignore: libreoffice:libreoffice-i18n
+Ignore: libreoffice:libreoffice-icon-themes
+Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any
+Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl
+Ignore: perl-Log-Log4perl:rrdtool
+
+Ignore: simias:mono(log4net)
+Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php
+
+Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver
+Ignore: xdg-menu:desktop-data
+Ignore: nessus-libraries:nessus-core
+Ignore: evolution:yelp
+Ignore: e17:e17-branding e17:e17-theme
+
+Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp)
+Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp)
+
+Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4)
+Ignore: libcdio:libcddb.so.2
+
+Ignore: coreutils:coreutils-lang
+Ignore: cpio:cpio-lang
+Ignore: glib2:glib2-lang
+Ignore: gtk2:gtk2-lang
+Ignore: gtk:gtk-lang
+Ignore: atk:atk-lang
+Ignore: MozillaThunderbird:pinentry-dialog
+Ignore: seamonkey:pinentry-dialog
+Ignore: pinentry:pinentry-dialog
+Ignore: gpg2:gpg2-lang
+Ignore: util-linux:util-linux-lang
+Ignore: suseRegister:distribution-release
+Ignore: compiz:compiz-decorator
+Ignore: icecream:gcc-c++
+Ignore: no
+Ignore: package
+Ignore: provides
+Ignore: j9vm/libjvm.so()(64bit)
+Ignore: kdepim3:suse_help_viewer
+Ignore: kdebase3-SuSE:kdebase3-SuSE-branding
+Ignore: kio_sysinfo:kdebase3-SuSE-branding
+Ignore: gnome-menus:gnome-menus-branding
+Ignore: epiphany:epiphany-branding
+Ignore: gnome-control-center:gnome-control-center-branding
+Ignore: phonon:phonon-backend
+Ignore: openwbem-devel
+Ignore: MozillaFirefox:MozillaFirefox-branding
+Ignore: yast2:yast2-branding
+Ignore: plymouth:plymouth-branding
+Ignore: plymouth:suspend
+Ignore: yast2-qt:yast2-branding
+Ignore: yast2-theme-SLE:yast2-branding
+Ignore: yast2-registration:yast2-registration-branding
+Ignore: compiz:compiz-branding
+Ignore: texlive:perl-Tk texlive-bin:perl-Tk
+Ignore: xfce4-desktop:xfce4-desktop-branding
+Ignore: xfce4-panel:xfce4-panel-branding
+Ignore: xfce4-session:xfce4-session-branding
+Ignore: kdebase4-runtime:kdebase4-runtime-branding
+Ignore: kwin:kdebase4-workspace-branding
+Ignore: transmission-common:transmission-ui
+Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd
+Ignore: mkinitrd:sbin_init
+Ignore: opensc:pinentry
+Ignore: gpg2:pinentry
+Ignore: NetworkManager:dhcp
+Ignore: NetworkManager:iproute2
+# sysconfig requires it at runtime, not buildtime
+Ignore: sysconfig:dbus-1
+Ignore: sysconfig:procps
+Ignore: sysconfig:iproute2
+Ignore: sysconfig-network:iproute2
+Ignore: sysconfig:tunctl
+Ignore: sysconfig:sysvinit(network)
+# no build dependencies
+Ignore: libksuseinstall1:yast2-packager
+Ignore: libksuseinstall1:zypper
+Ignore: syslog-service:logrotate
+Ignore: libglue-devel:cluster-glue
+Ignore: libqca2:gpg2
+Ignore: NetworkManager:wpa_supplicant
+Ignore: NetworkManager:dhcp-client
+Ignore: libgio-2_0-0:dbus-1-x11
+Ignore: weather-wallpaper:inkscape
+Ignore: libgamin-1-0:gamin-server
+Ignore: libfam0-gamin:gamin-server
+Ignore: python3:python3-pip
+Ignore: avahi:sysvinit(network)
+Ignore: cluster-glue:sysvinit(network)
+Ignore: dracut:systemd-sysvinit
+
+Macros:
+# RUBY - UNVERSIONED STUFF
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in the
+# prjconf aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}}
+%rubygemsSTOP() %nil
+%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*}
+%rubygemsxxSTOP(a:) %{-a*}) %*
+
+%rubySTOP() %nil
+%rubyxSTOP() %*
+
+%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}}
+
+%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}}
+
+%rubydevelSTOP() %nil
+%rubydevelxSTOP() %*
+#
+
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in
+# ruby2.5 aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+
+
+%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}}
+%rubygemsxruby25() %{expand:%%{rubygemsx%*}}
+
+%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}}
+%rubyxruby25() %{expand:%%{rubyx%*}}
+
+%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}}
+%rubydevelxruby25() %{expand:%%{rubydevelx%*}}
+
+%_with_ruby25 1
+
+### Things to define default ruby stuff for the distro
+
+%rb_default_ruby ruby25
+%rb_default_ruby_suffix ruby2.5
+%rb_default_ruby_abi ruby:2.5.0
+
+%rb_build_ruby_abis ruby:2.5.0
+%rb_build_versions ruby25
+:Macros
+
+%define _with_ruby25 1
+
+%define rb_default_ruby ruby25
+%define rb_default_ruby_suffix ruby2.5
+%define rb_default_ruby_abi ruby:2.5.0
+
+%define rb_build_ruby_abis ruby:2.5.0
+%define rb_build_versions ruby25
+
+Prefer: -ruby-stdlib
+Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm
+Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus
+Prefer: %{rb_default_ruby_suffix}-rubygem-yard
+Prefer: %{rb_default_ruby_suffix}-rubygem-rspec
+Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake
+Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah
+Prefer: %{rb_default_ruby_suffix}-rubygem-inifile
+Prefer: %{rb_default_ruby_suffix}-rubygem-bundler
+Prefer: %{rb_default_ruby_suffix}-rubygem-sass
+Prefer: %{rb_default_ruby_suffix}-rubygem-cfa
+Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types
+
+# END RUBY STUFF
+
+# PYTHON STUFF
+
+Macros:
+%pythons %{?!skip_python2:python2} %{?!skip_python3:python3}
+
+# This method for generating python_modules gets too deep to expand at about 5 python flavors.
+# It is replaced by a Lua macro in macros.lua
+# However, OBS has a much higher expansion depth, so this works fine.
+%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}}
+%python_module_iter_STOP stop
+%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}}
+
+%add_python() %{expand:%%define pythons %pythons %1}
+:Macros
+
+# END PYTHON STUFF
+
+# BEGIN RUST STUFF
+
+# Define the architectures in which Rust (and Rust crates) are available
+# NOTE: Keep this in sync with rust-srpm-macros!
+%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x
+
+Macros:
+%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x
+:Macros
+
+# END RUST STUFF
+
+# samba-libs requires samba-libs-python
+Prefer: samba-libs-python3
+
+# Default to Java 11
+Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless
+# Fall back to Java 10, if there was no java 11 option
+Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless
+# Fall back to Java 9, if there was no java 10 option
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+# Prefer java 8 if java 9 was no option
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+# And then fall back to java 7 if needed
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+# And then fall back to java 7 bootstrap if needed
+Prefer: java-1_7_0-bootstrap java-1_7_0-bootstrap-devel java-1_7_0-bootstrap-javadoc java-1_7_0-bootstrap-headless
+Substitute: java2-devel-packages java-devel
+
+%ifarch x86_64 ppc64 s390x sparc64
+Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit
+%else
+ %ifarch ppc sparc sparcv9
+Substitute: glibc-devel-32bit glibc-devel-64bit
+ %else
+Substitute: glibc-devel-32bit
+ %endif
+%endif
+
+%ifarch %ix86
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen
+%endif
+%ifarch ia64
+Substitute: kernel-binary-packages kernel-default kernel-debug
+%endif
+%ifarch x86_64
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen
+%endif
+%ifarch ppc
+Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3
+%endif
+%ifarch ppc64
+Substitute: kernel-binary-packages kernel-default kernel-ppc64
+%endif
+%ifarch s390
+Substitute: kernel-binary-packages kernel-s390
+%endif
+%ifarch s390x
+Substitute: kernel-binary-packages kernel-default
+%endif
+
+# until the builds of the packages are fixed...
+Substitute: yast2-theme-SLED
+Substitute: yast2-theme-SLE
+
+Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches
+Optflags: i686 -march=i686 -mtune=generic -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches
+Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390x -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches
+# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops)
+Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+%ifarch sparcv9
+Target: sparcv9
+%endif
+%ifarch armv6l armv6hl
+Target: armv6hl-suse-linux
+%endif
+%ifarch armv7l armv7hl
+Target: armv7hl-suse-linux
+%endif
+
+Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection
+
+# 13.3 does not exist !
+%define suse_version 1500
+%define is_opensuse 1
+%define sle_version 150200
+
+RepoURL: https://download.opensuse.org/distribution/leap/15.2/repo/oss
+RegistryURL: https://registry.opensuse.org
+
+Macros:
+%suse_version 1500
+%is_opensuse 1
+%sle_version 150200
+
+%insserv_prereq insserv sed
+%fillup_prereq fillup coreutils grep diffutils
+%suseconfig_fonts_prereq perl aaa_base
+%install_info_prereq info
+%kernel_module_package_buildreq kmod-compat kernel-syms
+%kernel_module_package_buildreqs kmod-compat kernel-syms
+
+%sles_version 0
+%ul_version 0
+%do_profiling 1
+%opensuse_bs 1
+%_vendor suse
+
+# Reproducible builds
+%source_date_epoch_from_changelog Y
+
+
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 9
+
+# The following shlibs have latest versions built from GCC 6 sources
+%product_libs_gcc_ver_libasan3 6
+%product_libs_gcc_ver_libgo9 6
+%product_libs_gcc_ver_libgfortran3 6
+# reminded by richi 2017 4/3
+%product_libs_gcc_ver_libgcj_bc1 6
+# The following shlibs have latest versions built from GCC 7 sources
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libgfortran4 7
+%product_libs_gcc_ver_libubsan0 7
+%product_libs_gcc_ver_libcilkrts5 7
+%product_libs_gcc_ver_libobjc4 7
+# The following shlibs have latest versions built from GCC 8 sources
+%product_libs_gcc_ver_libgo13 8
+%product_libs_gcc_ver_libmpx2 8
+%product_libs_gcc_ver_libmpxwrappers2 8
+
+%product_libs_gcc_ver_libgfortran5 9
+%product_libs_gcc_ver_libasan5 9
+%product_libs_gcc_ver_libubsan1 9
+
+%gcc_version 7
+
+%ext_info .gz
+%ext_man .gz
+
+%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+
+%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+:Macros
+
diff --git a/configs/sl15.3.conf b/configs/sl15.3.conf
new file mode 100755
index 0000000..dad7bb8
--- /dev/null
+++ b/configs/sl15.3.conf
@@ -0,0 +1,2118 @@
+%define gcc_version 7
+
+# new cycle handling
+BuildFlags: genmetaalgo:1
+
+Constraint: linux:version:min 3.0.0
+%ifarch ppc ppc64 ppc64le
+Constraint: hardware:cpu:flag power8
+%endif
+
+# create conflicts for packages installed into the target image
+Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini
+Substitute: build-packages:docker python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini
+Substitute: system-packages:docker docker kmod-compat sysvinit-tools kernel-default createrepo_c
+Substitute: kiwi python3-kiwi
+Substitute: system-packages:mock mock createrepo_c
+Substitute: system-packages:kiwi-image python3-kiwi createrepo_c tar
+
+Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15
+Substitute: system-packages:kiwi-product product-builder
+Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper
+Prefer: -python2-kiwi
+
+%ifarch s390
+Substitute: valgrind
+Substitute: valgrind-devel
+Substitute: pkgconfig(valgrind)
+%endif
+%ifarch s390 s390x
+Substitute: libunwind-devel
+Substitute: pkgconfig(libunwind)
+%endif
+
+%ifarch s390 s390x
+Ignore: libsensors4-devel
+%endif
+
+%define _without_mono 1
+Macros:
+%_without_mono 1
+:Macros
+
+Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel
+Prefer: -liblua5_3 -liblua5_1 -liblua5_2
+
+FileProvides: /bin/csh tcsh
+FileProvides: /bin/logger util-linux-systemd
+FileProvides: /sbin/netconfig sysconfig-netconfig
+FileProvides: /sbin/setcap libcap-progs
+FileProvides: /usr/bin/csh tcsh
+FileProvides: /usr/bin/docbook2man docbook-utils
+FileProvides: /usr/bin/eu-nm elfutils
+FileProvides: /usr/bin/fipscheck fipscheck
+FileProvides: /usr/bin/killall psmisc
+FileProvides: /usr/bin/mimencode metamail
+FileProvides: /usr/bin/mkisofs mkisofs
+FileProvides: /usr/bin/pkg-config pkg-config
+FileProvides: /usr/bin/python python-base
+FileProvides: /usr/bin/setfacl acl
+FileProvides: /usr/bin/sg_inq sg3_utils
+FileProvides: /usr/bin/tput ncurses-utils
+FileProvides: /usr/bin/xmllint libxml2-tools
+FileProvides: /usr/bin/Xvfb xorg-x11-server
+FileProvides: /usr/sbin/groupadd shadow
+FileProvides: /usr/sbin/lockdev lockdev
+FileProvides: /usr/sbin/useradd shadow
+FileProvides: /usr/sbin/usermod shadow
+FileProvides: /usr/bin/msgfmt gettext-runtime
+FileProvides: /usr/bin/python3 python3-base
+# Recommended by Adrian Schroeter:
+# causes a cycle :(
+# FileProvides: /sbin/mkinitrd dracut
+
+
+Preinstall: aaa_base attr bash coreutils diffutils
+Preinstall: filesystem fillup glibc grep
+Preinstall: libbz2-1 libgcc_s1 libncurses6 pam
+Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1
+Preinstall: liblzma5 libcap2 libacl1 libattr1
+Preinstall: libpopt0 libelf1 liblua5_3-5
+Preinstall: libpcre1
+
+Runscripts: aaa_base
+
+Prefer: libdb-4_8-devel
+VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1
+VMinstall: kernel-obs-build
+VMinstall: iproute2 libmnl0
+
+ExportFilter: \.x86_64\.rpm$ x86_64
+ExportFilter: \.ia64\.rpm$ ia64
+ExportFilter: \.s390x\.rpm$ s390x
+ExportFilter: \.ppc64\.rpm$ ppc64
+ExportFilter: \.ppc64le\.rpm$ ppc64le
+ExportFilter: \.ppc\.rpm$ ppc
+ExportFilter: -ia32-.*\.rpm$
+ExportFilter: -32bit-.*\.sparc64\.rpm$
+ExportFilter: -64bit-.*\.sparcv9\.rpm$
+ExportFilter: \.armv7l\.rpm$ armv7l
+ExportFilter: \.armv7hl\.rpm$ armv7l
+ExportFilter: \.aarch64_ilp32\.rpm$ aarch64_ilp32
+ExportFilter: ^glibc(?:-devel)?-32bit-.*\.sparc64\.rpm$ sparc64
+ExportFilter: ^glibc(?:-devel)?-64bit-.*\.sparcv9\.rpm$ sparcv9
+ExportFilter: ^acroread.*\.i586.rpm$ . x86_64
+ExportFilter: ^avmailgate.*\.i586.rpm$ . x86_64
+ExportFilter: ^avmailgate.*\.ppc.rpm$ . ppc64
+ExportFilter: ^avmailgate.*\.s390.rpm$ . s390x
+ExportFilter: ^flash-player.*\.i586.rpm$ . x86_64
+ExportFilter: ^novell-messenger-client.*\.i586.rpm$ . x86_64
+ExportFilter: ^openCryptoki-32bit.*\.s390.rpm$ . s390x
+ExportFilter: ^kernel-obs-build.*\.s390.rpm$
+ExportFilter: ^kernel-obs-build.*\.ppc.rpm$
+ExportFilter: ^kernel-obs-build.*\.i586.rpm$
+ExportFilter: ^kernel-obs-build.*\.x86_64.rpm$ . i586
+ExportFilter: ^kernel-obs-build.*\.s390x.rpm$ . s390
+ExportFilter: ^kernel-obs-build.*\.ppc64.rpm$ . ppc
+%ifarch x86_64
+ExportFilter: ^qemu-seabios.*\.noarch\.rpm$ . aarch64 ppc ppc64 ppc64le s390 s390x
+ExportFilter: ^qemu-vgabios.*\.noarch\.rpm$ . aarch64 ppc ppc64 ppc64le s390 s390x
+ExportFilter: ^qemu-sgabios.*\.noarch\.rpm$ . aarch64 ppc ppc64 ppc64le s390 s390x
+ExportFilter: ^qemu-ipxe.*\.noarch\.rpm$ . aarch64 ppc ppc64 ppc64le s390 s390x
+%endif
+
+Required: rpm-build
+Required: gcc-PIE
+
+# needed for su's default config - perhaps we should use a simplified form?
+Support: pam-modules
+
+# the basic stuff
+Support: perl build-mkbaselibs
+Prefer: build-mkbaselibs
+Support: brp-check-suse post-build-checks rpmlint-Factory
+Support: hostname
+Support: brp-extract-appdata
+Support: brp-extract-translations
+Support: rpmlint-Factory-strict
+
+%ifarch ia64
+Support: libunwind libunwind-devel
+Preinstall: libunwind
+%endif
+Prefer: -openSUSE-build-key
+
+Prefer: -installation-images-CAASP -installation-images-SLED -installation-images-SLES_SAP
+
+### Branding related preferences
+Prefer: awesome:awesome-branding-upstream
+Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE
+Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream
+Prefer: enlightenment-theme-upstream
+Prefer: exo-data:exo-branding-upstream
+Prefer: fcitx:fcitx-branding-openSUSE
+Prefer: gdm:gdm-branding-upstream
+Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse
+Prefer: glib2:glib2-branding-upstream
+Prefer: gnome-panel:gnome-panel-branding-upstream
+Prefer: gnome-session:gconf2-branding-openSUSE
+Prefer: gnome-session:gnome-session-branding-openSUSE
+Prefer: icewm-theme-branding
+Prefer: kde4-kdm:kde4-kdm-branding-upstream
+Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream
+Prefer: kdelibs4-branding:kdelibs4-branding-upstream
+Prefer: kdelibs4:kdelibs4-branding-upstream
+Prefer: kdm:kdm-branding-upstream
+Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream
+Prefer: libexo-1-0:libexo-1-0-branding-upstream
+Prefer: libgarcon-1-0:libgarcon-branding-upstream
+Prefer: libgarcon-data:libgarcon-branding-upstream
+Prefer: libgio-2_0-0:gio-branding-upstream
+Prefer: libglib-2_0-0:glib2-branding-upstream
+Prefer: libpurple-branding-upstream
+Prefer: libreoffice:libreoffice-branding-upstream
+Prefer: libsocialweb:libsocialweb-branding-upstream
+Prefer: libxfce4ui:libxfce4ui-branding-upstream
+Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream
+Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream
+Prefer: NetworkManager-branding-upstream
+Prefer: PackageKit:PackageKit-branding-upstream
+Prefer: plasma5-desktop:plasma5-desktop-branding-upstream
+Prefer: plasma5-workspace:plasma5-workspace-branding-upstream
+Prefer: sddm:sddm-branding-upstream
+Prefer: systemd-presets-branding-SLE
+Prefer: wallpaper-branding-openSUSE
+Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream
+Prefer: xfce4-settings:xfce4-settings-branding-upstream
+Prefer: xfdesktop:xfdesktop-branding-upstream
+Prefer: yast2-branding-openSUSE
+Prefer: yast2-qt:yast2-qt-branding-openSUSE
+Prefer: yast2-theme-openSUSE
+
+Conflict: krb5-devel:krb5-mini
+Conflict: krb5:krb5-mini-devel
+
+Prefer: gettext-tools-mini gettext-runtime-mini
+Prefer: ghostscript-mini
+Prefer: krb5-mini-devel:krb5-mini
+Prefer: krb5-mini krb5-mini-devel
+Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo
+Prefer: libunbound-devel-mini
+Prefer: log4j-mini
+Prefer: systemd-mini-devel:systemd-mini
+Prefer: systemd-mini systemd-mini-devel libsystemd0-mini
+Prefer: udev-mini libcom_err2-mini libext2fs2-mini
+Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: erlang-rebar-obs:this-is-only-for-build-envs
+Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs
+Ignore: jdk-bootstrap:this-is-only-for-build-envs
+Ignore: libsystemd0-mini:this-is-only-for-build-envs
+Ignore: libudev-mini1:this-is-only-for-build-envs
+Ignore: libunbound-devel-mini:this-is-only-for-build-envs
+Ignore: systemd-mini:this-is-only-for-build-envs
+Ignore: udev-mini:this-is-only-for-build-envs
+Ignore: curl-mini:this-is-only-for-build-envs
+Ignore: libcurl-mini-devel:this-is-only-for-build-envs
+Ignore: libcurl4-mini:this-is-only-for-build-envs
+
+# Ring0 packages should not pull in 'info' - making the base VM smaller
+Ignore: binutils:info
+Ignore: bison:info
+Ignore: coreutils:info
+Ignore: cpio:info
+Ignore: diffutils:info
+Ignore: findutils:info
+Ignore: flex:info
+Ignore: gawk:info
+Ignore: gettext-runtime:info
+Ignore: gettext-tools:info
+Ignore: grep:info
+Ignore: groff:info
+Ignore: gzip:info
+Ignore: help2man:info
+Ignore: libgcrypt-devel:info
+Ignore: m4:info
+Ignore: make:info
+Ignore: sed:info
+Ignore: tar:info
+Ignore: util-linux:info
+Ignore: which:info
+
+Ignore: Mesa:Mesa-dri
+Ignore: Mesa:Mesa-gallium
+
+Conflict: python3-kiwi:curl-mini
+Conflict: python3-kiwi:libudev-mini1
+Conflict: python3-kiwi:systemd-mini
+Conflict: python3-kiwi:krb5-mini
+Conflict: python3-kiwi:gettext-tools-mini
+
+Prefer: libudev1:udev
+Conflict: libudev1:udev-mini
+Conflict: udev:libudev-mini1
+
+Conflict: systemd:libsystemd0-mini
+Conflict: systemd-mini-devel:systemd
+
+Prefer: cmake:libcurl4-mini
+Prefer: curl libcurl-devel libcurl4
+
+Prefer: -openSUSE-build-key
+Prefer: postfix
+
+Prefer: php5-ctype
+Prefer: php5-devel
+Prefer: php5-dom
+Prefer: php5-ftp
+Prefer: php5-gd
+Prefer: php5-gettext
+Prefer: php5-mbstring
+Prefer: php5-pear
+Prefer: php5-pear-Archive_Tar
+Prefer: php5-pear-Horde
+Prefer: php5 php5-json
+Prefer: php5-tokenizer
+Prefer: php5-zip
+
+Prefer: go
+Prefer: python2-pep8 python3-pep8
+Prefer: perl
+Prefer: python3-pycups python-pycups
+Prefer: apache2:apache2-prefork
+Prefer: syslogd
+Prefer: star-rmt
+Prefer: notification-daemon
+Prefer: dummy-release
+Prefer: -nodejs4
+Prefer: libpulse0-32bit
+Prefer: netcdf-devel
+Prefer: xorg-x11-Xvnc:icewm
+Prefer: cracklib-dict-small
+Prefer: libstdc++6 libgcc_s1 libquadmath0
+Prefer: libstdc++6-32bit libstdc++6-64bit
+Prefer: libstdc++6-x86
+Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit
+%ifarch s390x
+Prefer: -libstdc++41
+%endif
+Prefer: syslog-service
+Prefer: poppler-tools
+Prefer: libjpeg8-devel libjpeg-turbo
+Prefer: microcode_ctl:kernel-default
+Prefer: gnu-jaf yast2-control-center-qt
+Prefer: vim-normal myspell-american wine
+Prefer: amarok:amarok-xine
+Prefer: kdenetwork3-vnc:tightvnc
+Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api
+Prefer: -dbus-1-nox11
+Prefer: -servletapi3 -servletapi4 -servletapi5
+Prefer: icewm-lite
+Prefer: yast2-ncurses-pkg
+Prefer: monodevelop: mono-addins
+Prefer: texlive-xmltex texlive-tools texlive-jadetex
+Prefer: libesd-devel:esound
+Prefer: libesd0:esound-daemon
+Prefer: package-lists-openSUSE-KDE-cd: esound-daemon
+Prefer: librest-0_7-0
+
+Prefer: rhino:xmlbeans-mini
+Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail
+Prefer: mx4j:log4j-mini
+
+Prefer: rpcbind eclipse-source
+Prefer: libcdio_cdda0 libcdio_paranoia0
+Prefer: boo tog-pegasus
+Prefer: sysvinit(network) wicked-service
+Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd
+Prefer: kdebase4-openSUSE:kdebase4-workspace
+Prefer: ant:xerces-j2
+Prefer: dhcp-client:dhcp
+Prefer: libGLw1
+# provides typelib(St)
+Prefer: -cinnamon
+Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es
+Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el
+Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl
+Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da
+Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb
+Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar
+Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr
+Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el
+Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs
+Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu
+Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv
+Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar
+Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr
+Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el
+Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs
+Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu
+Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv
+Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar
+Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr
+Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el
+Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru
+Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da
+Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv
+Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar
+Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++
+Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g
+Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links
+Prefer: -python-setuptools
+Prefer: -kdenetwork3-InstantMessenger
+Prefer: -icc-profiles
+Prefer: vala
+# in doubt, take xerces
+Prefer: -crimson
+# in doubt, take higher versions
+Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4
+Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3
+Prefer: -rubygem-json_pure-1_5
+Prefer: geronimo-servlet-2_4-api
+Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi
+Prefer: fftw3-devel
+Prefer: star
+Prefer: xmlgraphics-commons:apache-commons-io
+Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit
+Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit
+Prefer: postgresql postgresql-server postgresql-devel
+Prefer: -unzip-rcc
+Prefer: -primus -primus-32bit
+Prefer: -staging-build-key
+Prefer: -sssd-wbclient
+Prefer: -clutter-gst-devel
+Prefer: -opencv-qt5-devel
+Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel
+Prefer: -ffmpeg2-devel -python-configparser2
+Prefer: kactivities5
+Prefer: oxygen5-icon-theme
+Prefer: npm6
+Prefer: kernel-default-devel
+Prefer: libmysqlclient-devel
+
+Prefer: wxWidgets-3_0-devel
+Prefer: libopenssl-devel
+
+Prefer: -NX -xaw3dd -db43
+Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis
+Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit
+Prefer: libffi-devel
+Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0
+Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit
+Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit
+Prefer: libgcc_s1-x86 libgcj_bc1
+Prefer: libgomp1 libgomp1-32bit libgomp1-64bit
+Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit
+Prefer: libobjc4 libgfortran3 libquadmath0
+Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini
+Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel
+Prefer: -seamonkey
+Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2
+Prefer: libopenal0-soft openal-soft -lsb-buildenv
+Prefer: -libevent
+Prefer: gnu-crypto libusb-compat-devel
+Prefer: libusb-0_1-4
+Prefer: libreoffice:xerces-j2
+Prefer: k3b:libdvdread4
+Prefer: glibc-devel
+Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4
+Prefer: NetworkManager:dhcp-client
+Prefer: kdebase3-SuSE:kdebase3
+Prefer: pcre-tools
+Prefer: libpopt0 makeinfo
+Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2
+Prefer: libgnome-keyring-devel
+Prefer: gnome-keyring-32bit
+Prefer: linux-glibc-devel
+Prefer: squid sysvinit
+Prefer: libpng16-compat-devel
+Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0
+Prefer: python3-docutils
+Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client
+Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis
+Prefer: xmlgraphics-fop:xerces-j2
+Prefer: cogl-devel
+Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage
+Prefer: libpsm2-compat
+Prefer: mozilla-nss-certs
+Prefer: phonon-backend-gstreamer
+Prefer: dracut
+Prefer: kmod-compat
+Prefer: oxygen5-cursors
+Prefer: -perl-App-cpanminus
+Prefer: -typelib-1_0-MediaArt-2_0
+Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0
+Prefer: -python-atspi
+Prefer: gettext-its-gtk3 gtk3-schema
+Prefer: ghostscript-devel
+Prefer: libotf-devel
+
+Ignore: installation-images-openSUSE:cracklib-dict-full
+Ignore: systemd-sysvinit:systemd
+Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome
+Ignore: cracklib:cracklib-dict
+Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev
+Ignore: sysvinit:mingetty
+Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel
+Ignore: libgcj43,libstdc++43-devel
+Ignore: libgcj44,libstdc++44-devel
+Ignore: libgcj45,libstdc++45-devel
+Ignore: libgcj46,libstdc++46-devel
+Ignore: libgcj47,libstdc++47-devel
+Ignore: librtas:util-linux
+Ignore: pwdutils:openslp
+Ignore: rpm:suse-build-key,build-key
+Ignore: cloud-init:cloud-init-config
+Ignore: python-pyudev:libudev1
+Ignore: python-SPARQLWrapper:python-rdflib
+Ignore: python3-SPARQLWrapper:python3-rdflib
+Ignore: bind-utils:bind-libs
+Ignore: portmap:syslogd
+Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng
+Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video
+Ignore: apache2:logrotate
+Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis
+Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper
+Ignore: kdelibs3-devel:libvorbis-devel
+Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb
+Ignore: kdebase3-SuSE:release-notes
+Ignore: jack:alsa,libsndfile
+Ignore: libxml2-devel:readline-devel
+Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration
+Ignore: libgda:file_alteration
+Ignore: gnutls:lzo,libopencdk
+Ignore: gnutls-devel:lzo-devel,libopencdk-devel
+Ignore: pango:cairo,glitz,libpixman,libpng
+Ignore: pango-devel:cairo-devel
+Ignore: cairo-devel:libpixman-devel
+Ignore: libgnomeprint:libgnomecups
+Ignore: libgnomeprintui:libgnomecups
+Ignore: orbit2-devel:indent
+Ignore: qt3:libmng
+Ignore: qt-sql:qt_database_plugin
+Ignore: libgnomecanvas-devel:glib-devel
+Ignore: libgnomeui:gnome-icon-theme,shared-mime-info
+Ignore: scrollkeeper:docbook_4
+Ignore: gnome-desktop:libgnomesu,startup-notification
+Ignore: python-devel:python-tk
+Ignore: libgtk-3-0:adwaita-icon-theme
+Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg
+Ignore: samba-libs:krb5
+Ignore: libbonoboui:gnome-desktop
+Ignore: libxfce4ui-1-0:exo-tools
+Ignore: docbook_4:iso_ent,xmlcharent
+Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification
+Ignore: docbook-xsl-stylesheets:xmlcharent
+Ignore: liby2util-devel:libstdc++-devel,openssl-devel
+Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2
+Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils
+Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel
+Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel
+Ignore: yast2-devtools:libxslt
+Ignore: yast2-iscsi-lio-server:lio-utils
+Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation
+Ignore: yast2-bootloader:bootloader-theme
+Ignore: yast2-packager:yast2-x11,libyui_pkg
+Ignore: autoyast2:yast2-schema
+Ignore: yui_backend
+Ignore: yast2-x11:sax2-libsax-perl
+Ignore: yast2-network:yast2-inetd
+Ignore: openslp-devel:openssl-devel
+Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed
+Ignore: texlive-bin:ghostscript-x11
+Ignore: texlive-bin-omega:ghostscript-x11
+Ignore: yast2-country:yast2-trans-stats
+Ignore: tpb:tpctl-kmp
+Ignore: tpctl:tpctl-kmp
+Ignore: zaptel:zaptel-kmp
+Ignore: mkinitrd:pciutils
+Ignore: pciutils:pciutils-ids
+Ignore: postfix:iproute2
+Ignore: aaa_base:systemd
+Ignore: gpm:systemd
+Ignore: openssh:systemd
+Ignore: cronie:systemd
+Ignore: systemd:kbd
+Ignore: systemd:kmod
+Ignore: systemd:systemd-presets-branding
+Ignore: systemd:dbus-1
+Ignore: systemd:pam-config
+Ignore: systemd:udev
+Ignore: pesign:systemd
+Ignore: logrotate:cron
+Ignore: texlive-filesystem:cron
+Ignore: xinit:xterm
+Ignore: xdm:xterm
+Ignore: gnome-control-center:gnome-themes-accessibility
+
+
+Ignore: man:groff-full
+Ignore: git-core:rsync
+Ignore: apache2:systemd
+Ignore: icewm-lite:icewm
+Ignore: cluster-glue:sudo
+Ignore: libgcc:glibc-32bit
+Ignore: libgcc41:glibc-32bit
+Ignore: libgcc42:glibc-32bit
+Ignore: libgcc43:glibc-32bit
+Ignore: libgcc44:glibc-32bit
+Ignore: libgcc45:glibc-32bit
+Ignore: libgcc46:glibc-32bit
+Ignore: libgcc47:glibc-32bit
+Ignore: libstdc++:glibc-32bit
+Ignore: libstdc41++:glibc-32bit
+Ignore: libstdc42++:glibc-32bit
+Ignore: libstdc43++:glibc-32bit
+Ignore: libstdc44++:glibc-32bit
+Ignore: libstdc45++:glibc-32bit
+Ignore: libstdc46++:glibc-32bit
+Ignore: libstdc47++:glibc-32bit
+Ignore: ncurses-32bit
+
+Ignore: susehelp:susehelp_lang,suse_help_viewer
+Ignore: mailx:smtp_daemon
+Ignore: cron:smtp_daemon
+Ignore: hotplug:syslog
+Ignore: pcmcia:syslog
+Ignore: openct:syslog
+Ignore: postfix:sysvinit(syslog)
+Ignore: cups:sysvinit(syslog)
+Ignore: jython:servlet
+Ignore: ispell:ispell_dictionary,ispell_english_dictionary
+Ignore: aspell:aspel_dictionary,aspell_dictionary
+Ignore: smartlink-softmodem:kernel,kernel-nongpl
+Ignore: libreoffice-de:myspell-german-dictionary
+Ignore: libreoffice:libreoffice-i18n
+Ignore: libreoffice:libreoffice-icon-themes
+Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any
+Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl
+Ignore: perl-Log-Log4perl:rrdtool
+
+Ignore: simias:mono(log4net)
+Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php
+
+Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver
+Ignore: xdg-menu:desktop-data
+Ignore: nessus-libraries:nessus-core
+Ignore: evolution:yelp
+Ignore: e17:e17-branding e17:e17-theme
+
+Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp)
+Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp)
+
+Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4)
+Ignore: libcdio:libcddb.so.2
+
+Ignore: coreutils:coreutils-lang
+Ignore: cpio:cpio-lang
+Ignore: glib2:glib2-lang
+Ignore: gtk2:gtk2-lang
+Ignore: gtk:gtk-lang
+Ignore: atk:atk-lang
+Ignore: MozillaThunderbird:pinentry-dialog
+Ignore: seamonkey:pinentry-dialog
+Ignore: pinentry:pinentry-dialog
+Ignore: gpg2:gpg2-lang
+Ignore: util-linux:util-linux-lang
+Ignore: suseRegister:distribution-release
+Ignore: compiz:compiz-decorator
+Ignore: icecream:gcc-c++
+Ignore: no
+Ignore: package
+Ignore: provides
+Ignore: j9vm/libjvm.so()(64bit)
+Ignore: kdepim3:suse_help_viewer
+Ignore: kdebase3-SuSE:kdebase3-SuSE-branding
+Ignore: kio_sysinfo:kdebase3-SuSE-branding
+Ignore: gnome-menus:gnome-menus-branding
+Ignore: epiphany:epiphany-branding
+Ignore: gnome-control-center:gnome-control-center-branding
+Ignore: phonon:phonon-backend
+Ignore: openwbem-devel
+Ignore: MozillaFirefox:MozillaFirefox-branding
+Ignore: yast2:yast2-branding
+Ignore: plymouth:plymouth-branding
+Ignore: plymouth:suspend
+Ignore: yast2-qt:yast2-branding
+Ignore: yast2-theme-SLE:yast2-branding
+Ignore: yast2-registration:yast2-registration-branding
+Ignore: compiz:compiz-branding
+Ignore: texlive:perl-Tk texlive-bin:perl-Tk
+Ignore: xfce4-desktop:xfce4-desktop-branding
+Ignore: xfce4-panel:xfce4-panel-branding
+Ignore: xfce4-session:xfce4-session-branding
+Ignore: kdebase4-runtime:kdebase4-runtime-branding
+Ignore: kwin:kdebase4-workspace-branding
+Ignore: transmission-common:transmission-ui
+Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd
+Ignore: mkinitrd:sbin_init samba-client:cifs-utils
+Ignore: opensc:pinentry
+Ignore: gpg2:pinentry
+Ignore: NetworkManager:dhcp
+Ignore: NetworkManager:iproute2
+Ignore: sysconfig:dbus-1
+Ignore: sysconfig:procps
+Ignore: sysconfig:iproute2
+Ignore: sysconfig-network:iproute2
+Ignore: sysconfig:tunctl
+Ignore: sysconfig:sysvinit(network)
+Ignore: libksuseinstall1:yast2-packager
+Ignore: libksuseinstall1:zypper
+Ignore: syslog-service:logrotate
+Ignore: libglue-devel:cluster-glue
+Ignore: libqca2:gpg2
+Ignore: NetworkManager:wpa_supplicant
+Ignore: NetworkManager:dhcp-client
+Ignore: openSUSE-release:product_flavor(openSUSE)
+Ignore: libgio-2_0-0:dbus-1-x11
+Ignore: weather-wallpaper:inkscape
+Ignore: libgamin-1-0:gamin-server
+Ignore: libfam0-gamin:gamin-server
+Ignore: python3:python3-pip
+Ignore: avahi:sysvinit(network)
+Ignore: cluster-glue:sysvinit(network)
+Ignore: dracut:systemd-sysvinit
+
+Macros:
+# RUBY - UNVERSIONED STUFF
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in the
+# prjconf aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}}
+%rubygemsSTOP() %nil
+%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*}
+%rubygemsxxSTOP(a:) %{-a*}) %*
+
+%rubySTOP() %nil
+%rubyxSTOP() %*
+
+%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}}
+
+%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}}
+
+%rubydevelSTOP() %nil
+%rubydevelxSTOP() %*
+#
+
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in
+# ruby2.5 aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}}
+%rubygemsxruby25() %{expand:%%{rubygemsx%*}}
+
+%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}}
+%rubyxruby25() %{expand:%%{rubyx%*}}
+
+%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}}
+%rubydevelxruby25() %{expand:%%{rubydevelx%*}}
+
+
+### Things to define default ruby stuff for the distro
+%rb_default_ruby ruby25
+%rb_default_ruby_suffix ruby2.5
+%rb_default_ruby_abi ruby:2.5.0
+:Macros
+
+Macros:
+%rb_build_ruby_abis ruby:2.5.0
+%rb_build_versions ruby25
+
+%_with_ruby25 1
+:Macros
+
+%define rb_default_ruby ruby25
+%define rb_default_ruby_suffix ruby2.5
+%define rb_default_ruby_abi ruby:2.5.0
+
+%define rb_build_ruby_abis ruby:2.5.0
+%define rb_build_versions ruby25
+
+%define _with_ruby25 1
+
+Prefer: -ruby-stdlib
+Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm
+Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus
+Prefer: %{rb_default_ruby_suffix}-rubygem-yard
+Prefer: %{rb_default_ruby_suffix}-rubygem-rspec
+Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake
+Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah
+Prefer: %{rb_default_ruby_suffix}-rubygem-inifile
+Prefer: %{rb_default_ruby_suffix}-rubygem-bundler
+Prefer: %{rb_default_ruby_suffix}-rubygem-sass
+Prefer: %{rb_default_ruby_suffix}-rubygem-cfa
+Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types
+
+# END RUBY STUFF
+
+# PYTHON STUFF
+
+Macros:
+%pythons %{?!skip_python2:python2} %{?!skip_python3:python3}
+
+# This method for generating python_modules gets too deep to expand at about 5 python flavors.
+# It is replaced by a Lua macro in macros.lua
+# However, OBS has a much higher expansion depth, so this works fine.
+%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}}
+%python_module_iter_STOP stop
+%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}}
+
+%add_python() %{expand:%%define pythons %pythons %1}
+:Macros
+
+# END PYTHON STUFF
+
+# FATE#325522
+Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless
+# Fallback, but we should try to not use this but java-8....
+# Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+# Prefer java 8 if java 9 was no option
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+# And then fall back to jaba 7 if needed
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+Substitute: java2-devel-packages java-devel
+
+%ifarch x86_64 ppc64 s390x sparc64
+Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit
+%else
+ %ifarch ppc sparc sparcv9
+Substitute: glibc-devel-32bit glibc-devel-64bit
+ %else
+Substitute: glibc-devel-32bit
+ %endif
+%endif
+
+%ifarch %ix86
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen
+%endif
+%ifarch ia64
+Substitute: kernel-binary-packages kernel-default kernel-debug
+%endif
+%ifarch x86_64
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen
+%endif
+%ifarch ppc
+Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3
+%endif
+%ifarch ppc64
+Substitute: kernel-binary-packages kernel-default kernel-ppc64
+%endif
+%ifarch s390
+Substitute: kernel-binary-packages kernel-s390
+%endif
+%ifarch s390x
+Substitute: kernel-binary-packages kernel-default
+%endif
+
+Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches
+# no longer needed according to Richard Biener
+# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector
+Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390x -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches
+# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops)
+Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+
+%ifarch sparcv9
+Target: sparcv9
+%endif
+%ifarch armv6l armv6hl
+Target: armv6hl-suse-linux
+%endif
+%ifarch armv7l armv7hl
+Target: armv7hl-suse-linux
+%endif
+
+
+Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection
+
+%define suse_version 1500
+%define sle_version 150000
+
+%define is_susesap 1
+
+Macros:
+%suse_version 1500
+%sle_version 150000
+%is_susesap 1
+
+%insserv_prereq insserv sed
+%fillup_prereq fillup coreutils grep diffutils
+%suseconfig_fonts_prereq perl aaa_base
+%install_info_prereq info
+%kernel_module_package_buildreq kmod-compat kernel-syms
+%kernel_module_package_buildreqs kmod-compat kernel-syms
+%maintenance_vendor SUSE LLC <https://www.suse.com/>
+%maintenance_distribution SUSE Linux Enterprise 15
+
+%sles_version 0
+%do_profiling 1
+%_vendor suse
+
+# Reproducible builds
+%source_date_epoch_from_changelog Y
+
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 7
+# The following shlibs have latest versions built from GCC 6 sources
+%product_libs_gcc_ver_libasan3 6
+%product_libs_gcc_ver_libgo9 6
+%product_libs_gcc_ver_libgfortran3 6
+# reminded by richi 2017 4/3
+%product_libs_gcc_ver_libgcj_bc1 6
+# The following shlibs have been introduced with GCC 7
+%product_libs_gcc_ver_libmpxwrappers2 7
+%product_libs_gcc_ver_libmpx2 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libgfortran4 7
+%gcc_version 7
+
+%ext_info .gz
+%ext_man .gz
+
+%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+
+%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+:Macros
+
+# BEGIN RUST STUFF
+
+# Define the architectures in which Rust (and Rust crates) are available
+# NOTE: Keep this in sync with rust-srpm-macros!
+%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x
+
+Macros:
+%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x
+:Macros
+
+Macros:
+%_without_obs_scm_testsuite 0
+:Macros
+
+Prefer: SLES_SAP-installation-release-DVD
+Prefer: systemd-presets-branding-SLE
+Prefer: python3-msgpack
+
+%ifarch s390
+Ignore: python2-numpy-devel:openblas-devel
+Ignore: python3-numpy-devel:openblas-devel
+%endif
+
+Prefer: -openssl-1_0_0
+
+### from SUSE:SLE-15:Update
+Buildflags: useccache:ceph
+
+Prefer: ImageMagick-config-7-upstream
+
+# disabled in GA by mistake, enabling it here
+Support: build-compare
+
+Prefer: chrony-pool-suse
+
+Prefer: pciutils-ids
+
+Prefer: -libcurl4-mini
+
+Macros:
+%shim_enforce_ms_signature 1
+:Macros
+
+Macros:
+
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 10
+# The following shlibs have the latest version built from GCC 7 sources
+%product_libs_gcc_ver_libgfortran4 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libubsan0 7
+%product_libs_gcc_ver_libcilkrts5 7
+%product_libs_gcc_ver_libgo11 7
+# The following shlibs have the latest version built from GCC 8
+%product_libs_gcc_ver_libmpx2 8
+%product_libs_gcc_ver_libmpxwrappers2 8
+%product_libs_gcc_ver_libgo13 8
+# The following shlibs have the latest version built from GCC 9 sources
+%product_libs_gcc_ver_libasan5 9
+%product_libs_gcc_ver_libgo14 9
+
+%product_libs_gcc_ver_libobjc4 10
+
+# Override SUSE:SLE-15:Update
+%product_libs_gcc_ver_libgfortran5 10
+%product_libs_gcc_ver_libubsan1 10
+
+:Macros
+
+Prefer: -alsa-devel-32bit
+Prefer: -atk-devel-32bit
+Prefer: -atkmm1_6-devel-32bit
+Prefer: -at-spi2-core-devel-32bit
+Prefer: -at-spi-devel-32bit
+Prefer: -audit-devel-32bit
+Prefer: -augeas-devel-32bit
+Prefer: -bluez-devel-32bit
+Prefer: -cairo-devel-32bit
+Prefer: -cairomm1_0-devel-32bit
+Prefer: -cairomm-devel-32bit
+Prefer: -cppunit-devel-32bit
+Prefer: -cyrus-sasl-devel-32bit
+Prefer: -dbus-1-devel-32bit
+Prefer: -dbus-1-glib-devel-32bit
+Prefer: -device-mapper-devel-32bit
+Prefer: -dirac-devel-32bit
+Prefer: -flac-devel-32bit
+Prefer: -fontconfig-devel-32bit
+Prefer: -freetype2-devel-32bit
+Prefer: -gdk-pixbuf-devel-32bit
+Prefer: -glu-devel-32bit
+Prefer: -gstreamer-devel-32bit
+Prefer: -gstreamer-plugins-base-devel-32bit
+Prefer: -gtk2-devel-32bit
+Prefer: -gtk3-devel-32bit
+Prefer: -hunspell-devel-32bit
+Prefer: -ImageMagick-devel-32bit
+Prefer: -libart_lgpl-devel-32bit
+Prefer: -libavc1394-devel-32bit
+Prefer: -libbasicobjects-devel-32bit
+Prefer: -libblkid-devel-32bit
+Prefer: -libbz2-devel-32bit
+Prefer: -libcelt-devel-32bit
+Prefer: -libcollection-devel-32bit
+Prefer: -libcom_err-devel-32bit
+Prefer: -libdhash-devel-32bit
+Prefer: -libdmx-devel-32bit
+Prefer: -libdrm-devel-32bit
+Prefer: -libelf-devel-32bit
+Prefer: -libexif-devel-32bit
+Prefer: -libexpat-devel-32bit
+Prefer: -libext2fs-devel-32bit
+Prefer: -libfontenc-devel-32bit
+Prefer: -libgbm-devel-32bit
+Prefer: -libgck-devel-32bit
+Prefer: -libgcr-devel-32bit
+Prefer: -libglvnd-devel-32bit
+Prefer: -libgnutls-devel-32bit
+Prefer: -libgphoto2-devel-32bit
+Prefer: -libHX-devel-32bit
+Prefer: -libICE-devel-32bit
+Prefer: -libicu-devel-32bit
+Prefer: -libini_config-devel-32bit
+Prefer: -libjack-devel-32bit
+Prefer: -libkms-devel-32bit
+Prefer: -liblbxutil-devel-32bit
+Prefer: -liblcms2-devel-32bit
+Prefer: -libMagick++-devel-32bit
+Prefer: -libmount-devel-32bit
+Prefer: -libnettle-devel-32bit
+Prefer: -libnl3-devel-32bit
+Prefer: -libnotify-devel-32bit
+Prefer: -libpackagekit-glib2-devel-32bit
+Prefer: -libpulse-devel-32bit
+Prefer: -libQt5Concurrent-devel-32bit
+Prefer: -libQt5Core-devel-32bit
+Prefer: -libQt5DBus-devel-32bit
+Prefer: -libQt5Gui-devel-32bit
+Prefer: -libQt5Network-devel-32bit
+Prefer: -libQt5OpenGL-devel-32bit
+Prefer: -libQt5PrintSupport-devel-32bit
+Prefer: -libqt5-qtconnectivity-devel-32bit
+Prefer: -libqt5-qtdeclarative-devel-32bit
+Prefer: -libqt5-qtlocation-devel-32bit
+Prefer: -libqt5-qtmultimedia-devel-32bit
+Prefer: -libqt5-qtserialport-devel-32bit
+Prefer: -libqt5-qtsvg-devel-32bit
+Prefer: -libqt5-qttools-devel-32bit
+Prefer: -libqt5-qtwayland-devel-32bit
+Prefer: -libqt5-qtwebchannel-devel-32bit
+Prefer: -libqt5-qtwebsockets-devel-32bit
+Prefer: -libqt5-qtx11extras-devel-32bit
+Prefer: -libqt5-qtxmlpatterns-devel-32bit
+Prefer: -libQt5Sql-devel-32bit
+Prefer: -libQt5Test-devel-32bit
+Prefer: -libQt5Widgets-devel-32bit
+Prefer: -libQt5Xml-devel-32bit
+Prefer: -libraw1394-devel-32bit
+Prefer: -libref_array-devel-32bit
+Prefer: -libSDL2-devel-32bit
+Prefer: -libSDL-devel-32bit
+Prefer: -libSDL_gfx-devel-32bit
+Prefer: -libSM-devel-32bit
+Prefer: -libsoup-devel-32bit
+Prefer: -libtasn1-devel-32bit
+Prefer: -libtiff-devel-32bit
+Prefer: -libusb-1_0-devel-32bit
+Prefer: -libuuid-devel-32bit
+Prefer: -libv4l-devel-32bit
+Prefer: -libva-devel-32bit
+Prefer: -libvdpau-devel-32bit
+Prefer: -libverto-devel-32bit
+Prefer: -libvirt-devel-32bit
+Prefer: -libvorbis-devel-32bit
+Prefer: -libwayland-egl-devel-32bit
+Prefer: -libwebp-devel-32bit
+Prefer: -libX11-devel-32bit
+Prefer: -libXau-devel-32bit
+Prefer: -libXaw3d-devel-32bit
+Prefer: -libXaw-devel-32bit
+Prefer: -libxcb-devel-32bit
+Prefer: -libXcomposite-devel-32bit
+Prefer: -libXcursor-devel-32bit
+Prefer: -libXdamage-devel-32bit
+Prefer: -libXdmcp-devel-32bit
+Prefer: -libXext-devel-32bit
+Prefer: -libXfixes-devel-32bit
+Prefer: -libXfont2-devel-32bit
+Prefer: -libXfontcache-devel-32bit
+Prefer: -libXfont-devel-32bit
+Prefer: -libXft-devel-32bit
+Prefer: -libXi-devel-32bit
+Prefer: -libXinerama-devel-32bit
+Prefer: -libxkbcommon-devel-32bit
+Prefer: -libxkbcommon-x11-devel-32bit
+Prefer: -libxkbfile-devel-32bit
+Prefer: -libxml2-devel-32bit
+Prefer: -libXmu-devel-32bit
+Prefer: -libXp-devel-32bit
+Prefer: -libXpm-devel-32bit
+Prefer: -libXprintUtil-devel-32bit
+Prefer: -libXrandr-devel-32bit
+Prefer: -libXrender-devel-32bit
+Prefer: -libXres-devel-32bit
+Prefer: -libxslt-devel-32bit
+Prefer: -libXss-devel-32bit
+Prefer: -libXt-devel-32bit
+Prefer: -libXtst-devel-32bit
+Prefer: -libXv-devel-32bit
+Prefer: -libXvMC-devel-32bit
+Prefer: -libXxf86dga-devel-32bit
+Prefer: -libXxf86misc-devel-32bit
+Prefer: -libXxf86vm-devel-32bit
+Prefer: -Mesa-libEGL-devel-32bit
+Prefer: -Mesa-libGL-devel-32bit
+Prefer: -Mesa-libGLESv1_CM-devel-32bit
+Prefer: -Mesa-libGLESv2_CM-devel-32bit
+Prefer: -Mesa-libGLESv2-devel-32bit
+Prefer: -mpg123-devel-32bit
+Prefer: -ncurses-devel-32bit
+Prefer: -NetworkManager-devel-32bit
+Prefer: -openal-soft-devel-32bit
+Prefer: -openjpeg-devel-32bit
+Prefer: -pango-devel-32bit
+Prefer: -pciutils-devel-32bit
+Prefer: -sane-backends-devel-32bit
+Prefer: -tslib-devel-32bit
+Prefer: -typelib-1_0-Gst-1_0-32bit
+Prefer: -wayland-devel-32bit
+Prefer: -xcb-util-devel-32bit
+Prefer: -xcb-util-image-devel-32bit
+Prefer: -xcb-util-keysyms-devel-32bit
+Prefer: -xcb-util-renderutil-devel-32bit
+Prefer: -xcb-util-wm-devel-32bit
+Prefer: -xz-devel-32bit
+Prefer: -zlib-devel-32bit
+Prefer: -zvbi-devel-32bit
+
+Prefer: libboost_thread1_66_0
+Prefer: libboost_system1_66_0
+Prefer: libboost_regex1_66_0
+Prefer: libboost_filesystem1_66_0
+Prefer: libboost_iostreams1_66_0
+Prefer: libboost_date_time1_66_0
+
+Prefer: -libsmartcols-devel-32bit
+Prefer: -krb5-devel-32bit
+
+### from SUSE:SLE-15-SP1:GA
+Patterntype: rpm-md ymp
+%define sle_version 150100
+
+Macros:
+%sle_version 150100
+:Macros
+
+FileProvides: /usr/bin/host bind-utils
+
+Substitute: system-packages:podman kmod kernel-default podman buildah createrepo_c
+
+Prefer: libyui-ncurses9
+Prefer: libyui-ncurses-pkg9 libyui-qt9 libyui-qt-graph9 libyui-qt-pkg9
+Prefer: samba-libs-python3
+Ignore: !pciutils:pciutils-ids
+Prefer: kernel-default
+Ignore: multipath-tools:kmod(dm-multipath),kmod(dm-multipath),kmod(scsi_dh_emc),kmod(scsi_dh_rdac),kmod(scsi_dh_alua)
+Prefer: python2-configparser
+Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !gio-branding-upstream
+
+Prefer: -java-10-openjdk -java-10-openjdk-devel -java-10-openjdk-javadoc -java-10-openjdk-headless
+Prefer: -java-1_8_0-openjdk -java-1_8_0-openjdk-devel -java-1_8_0-openjdk-javadoc -java-1_8_0-openjdk-headless
+Prefer: -java-1_7_0-openjdk -java-1_7_0-openjdk-devel -java-1_7_0-openjdk-javadoc -java-1_7_0-openjdk-headless
+
+Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless
+
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+
+%ifarch x86_64
+ExportFilter: ^qemu-seabios.*\.noarch\.rpm$ . ppc ppc64 ppc64le s390 s390x
+ExportFilter: ^qemu-vgabios.*\.noarch\.rpm$ . ppc ppc64 ppc64le s390 s390x
+ExportFilter: ^qemu-sgabios.*\.noarch\.rpm$ . ppc ppc64 ppc64le s390 s390x
+ExportFilter: ^qemu-ipxe.*\.noarch\.rpm$ . ppc ppc64 ppc64le s390 s390x
+%endif
+
+Prefer: go1.12
+
+### from SUSE:SLE-15-SP1:Update
+Prefer: slurm libpmi0 slurm-config slurm-node slurm-plugins
+Prefer: python-pytest4 python2-pytest4 python3-pytest4
+Prefer: python3-pycryptodome
+
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+
+Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires
+Conflict: python3-kiwi:libsystemd0-mini
+
+
+### from SUSE:SLE-15-SP2:GA
+
+Patterntype: rpm-md ymp
+
+%define sle_version 150200
+
+Prefer: enchant-2-backend-hunspell
+
+Macros:
+%sle_version 150200
+%current_milestone GMC
+
+%product_libs_gcc_ver 9
+%product_libs_gcc_ver_libgfortran4 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libubsan0 7
+%product_libs_gcc_ver_libcilkrts5 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libobjc4 7
+%product_libs_gcc_ver_libmpx2 8
+%product_libs_gcc_ver_libmpxwrappers2 8
+%product_libs_gcc_ver_libgo13 8
+:Macros
+
+Prefer: libyui11
+Prefer: libyui-ncurses11
+Prefer: libyui-ncurses-pkg11 libyui-qt11 libyui-qt-graph11 libyui-qt-pkg11
+Substitute: libyui libyui11
+Substitute: libyui-ncurses libyui-ncurses11
+Substitute: libyui-ncurses-pkg libyui-ncurses-pkg11
+Substitute: libyui-qt libyui-qt11
+Substitute: libyui-qt-graph libyui-qt-graph11
+Substitute: libyui-qt-pkg libyui-qt-pkg11
+
+Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5
+Substitute: infiniband-diags-devel rdma-core-devel
+Prefer: python3-pycryptodome
+Prefer: libvala-0_46-devel
+Preinstall: libgcrypt20 libgpg-error0
+
+Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm
+Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel
+Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap
+Prefer: xml-commons-apis xml-commons-resolver
+Prefer: log4j12-mini
+Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap
+Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap
+Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap
+Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap
+Prefer: bsh2
+Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap
+Prefer: apache-commons-net
+Prefer: gradle groovy-lib eclipse-swt gpars
+
+%ifarch %arm ppc riscv64 aarch64
+Macros:
+%prjconf_multibuild_selection patch
+:Macros
+%endif
+
+Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-headless java-11-openjdk-javadoc
+%ifarch s390x
+Prefer: java-1_8_0-openj9 java-1_8_0-openj9-devel java-1_8_0-openj9-headless
+%endif
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-headless java-1_8_0-openjdk-javadoc
+Prefer: java-10-openjdk-devel java-10-openjdk java-10-openjdk-devel java-10-openjdk-headless java-10-openjdk-javadoc
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-headless java-9-openjdk-javadoc
+Prefer: java-1_7_0-bootstrap-devel java-1_7_0-bootstrap java-1_7_0-bootstrap-headless
+
+Prefer: rpm
+
+Preinstall: libzstd1
+
+Prefer: libudisks2-0-devel
+
+%ifarch aarch64 ppc64le s390x x86_64
+ExportFilter: ^tftpboot-installation-SLE-15-SP2-aarch64.*\.rpm$ . ppc64le s390x x86_64
+ExportFilter: ^tftpboot-installation-SLE-15-SP2-ppc64le.*\.rpm$ . aarch64 s390x x86_64
+ExportFilter: ^tftpboot-installation-SLE-15-SP2-s390x.*\.rpm$ . aarch64 ppc64le x86_64
+ExportFilter: ^tftpboot-installation-SLE-15-SP2-x86_64.*\.rpm$ . aarch64 ppc64le s390x
+%endif
+
+Ignore: cmake-mini:this-is-only-for-build-envs
+Prefer: cmake-mini
+Prefer: ocaml-compiler-libs-devel
+Prefer: python2-contextlib2
+Prefer: chrony-pool-suse
+
+%ifarch i586
+Prefer: slurm libpmi0 slurm-config slurm-plugins slurm-node
+%endif
+
+Substitute: azuremetadata python3-azuremetadata
+
+Prefer: python3-pytest
+Prefer: python2-pytest
+
+Prefer: PackageKit-backend-zypp
+Prefer: python2-subprocess32
+
+### from SUSE:SLE-15-SP2:Update
+Prefer: python2-pycrypto
+Prefer: libgnutls-devel
+Prefer: libQt5Test-devel libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel libQt5PrintSupport-devel libQt5Concurrent-devel
+Prefer: bluez-devel
+Prefer: libpq5
+Prefer: gdk-pixbuf-devel
+
+
+### from SUSE:SLE-15-SP3:GA
+Patterntype: rpm-md ymp
+
+Macros:
+%product_libs_gcc_ver 9
+%product_libs_gcc_ver_libgfortran4 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libubsan0 7
+%product_libs_gcc_ver_libcilkrts5 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libobjc4 7
+%product_libs_gcc_ver_libmpx2 8
+%product_libs_gcc_ver_libmpxwrappers2 8
+%product_libs_gcc_ver_libgo13 8
+:Macros
+
+Prefer: enchant-2-backend-hunspell
+
+# COMMON BEGIN common part
+%define sle_version 150300
+Macros:
+%sle_version 150300
+:Macros
+
+# Prefer over libyui11* from SP2-GA
+Prefer: libyui15
+Prefer: libyui-ncurses15
+# Additional prefers for installation-images
+Prefer: libyui-ncurses-pkg15 libyui-qt15 libyui-qt-graph15 libyui-qt-pkg15 libyui-ncurses-rest-api15 libyui-qt-rest-api15
+Substitute: libyui libyui15
+Substitute: libyui-ncurses libyui-ncurses15
+Substitute: libyui-ncurses-pkg libyui-ncurses-pkg15
+Substitute: libyui-qt libyui-qt15
+Substitute: libyui-qt-graph libyui-qt-graph15
+Substitute: libyui-qt-pkg libyui-qt-pkg15
+Substitute: libyui-ncurses-rest-api libyui-ncurses-rest-api15
+Substitute: libyui-qt-rest-api libyui-qt-rest-api15
+
+# copy tftpboot-installation files across all archs
+%ifarch aarch64 ppc64le s390x x86_64
+ExportFilter: ^tftpboot-installation-SLE-15-SP3-aarch64.*\.rpm$ . ppc64le s390x x86_64
+ExportFilter: ^tftpboot-installation-SLE-15-SP3-ppc64le.*\.rpm$ . aarch64 s390x x86_64
+ExportFilter: ^tftpboot-installation-SLE-15-SP3-s390x.*\.rpm$ . aarch64 ppc64le x86_64
+ExportFilter: ^tftpboot-installation-SLE-15-SP3-x86_64.*\.rpm$ . aarch64 ppc64le s390x
+%endif
+
+# required after SR#225674 / jsc#SLE-12712
+Prefer: gmmlib-devel
+
+# required after SR#225669
+Preinstall: libcrypt1
+
+# required for latest Mesa
+Prefer: libdrm-devel Mesa-libGL-devel libglvnd-devel libkms-devel Mesa-libEGL-devel libva-devel libdbusmenu-qt5-devel
+
+# required after SR#226419
+Prefer: typelib-1_0-Gst-1_0
+
+# required for latest Mesa
+Prefer: Mesa-libGLESv2-devel Mesa-libGLESv1_CM-devel
+
+# not sure why we need those
+Prefer: libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel
+
+# required after MU#16450 (gnutls)
+Prefer: libgnutls-devel
+
+# required after SR#228340
+Prefer: systemd-sysvinit
+
+# required after SR#227910 (alsa) and SR#228076 (pulseaudio)
+Prefer: alsa-devel libpulse-devel
+
+# required after SR#227917 (kernel-firmware)
+Prefer: kernel-firmware
+
+# required after SR#229310
+Prefer: systemd-default-settings-branding-SLE
+
+Prefer: -libMagick++-devel-32bit -ImageMagick-devel-32bit -pciutils-devel-32bit
+Prefer: -libgbm-devel-32bit -device-mapper-devel-32bit
+
+# required after SR#230365 and SR#230366
+Prefer: plymouth-branding-SLE
+
+# required after SR#228415
+Ignore: !pango-devel:cairo-devel
+
+# required after SR#228071
+Substitute: kmod-compat kmod
+# replacing module-init-tools
+Prefer: -kmod-compat
+
+# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190)
+Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit
+Substitute: postfix-lmdb postfix
+
+# jsc#SLE-17030
+Ignore: postgresql12-devel-mini:this-is-only-for-build-envs
+Ignore: postgresql13-devel-mini:this-is-only-for-build-envs
+Prefer: postgresql13-devel-mini postgresql12-devel-mini
+
+# needed after SR#236147
+Prefer: -mpg123-devel-32bit
+
+# Prefer coreutils over coreutils-single (SR#236655, bsc#1182550, jsc#SLE-13520, jsc#SLE-13756)
+Prefer: -coreutils-single
+
+# From Fabian Vogt on 2021023
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+
+# needed for latest Kiwi (sr#238860)
+Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires
+
+# COMMON END common part
+
+# KEEP BEGIN from older
+Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5
+Substitute: infiniband-diags-devel rdma-core-devel
+Prefer: python3-pycryptodome
+Prefer: libvala-0_46-devel
+Preinstall: libgcrypt20 libgpg-error0
+Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm
+Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel
+Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap
+Prefer: xml-commons-apis xml-commons-resolver
+Prefer: log4j12-mini
+Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap
+Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap
+Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap
+Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap
+Prefer: bsh2
+Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap
+Prefer: apache-commons-net
+Prefer: gradle groovy-lib eclipse-swt gpars
+
+%ifarch %arm ppc riscv64 aarch64
+Macros:
+%prjconf_multibuild_selection patch
+:Macros
+%endif
+
+# Default to Java 11
+Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-headless java-11-openjdk-javadoc
+%ifarch s390x
+Prefer: java-1_8_0-openj9 java-1_8_0-openj9-devel java-1_8_0-openj9-headless
+%endif
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-headless java-1_8_0-openjdk-javadoc
+Prefer: java-10-openjdk-devel java-10-openjdk java-10-openjdk-devel java-10-openjdk-headless java-10-openjdk-javadoc
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-headless java-9-openjdk-javadoc
+Prefer: java-1_7_0-bootstrap-devel java-1_7_0-bootstrap java-1_7_0-bootstrap-headless
+
+Prefer: rpm
+Preinstall: libzstd1
+Prefer: libudisks2-0-devel
+
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: cmake-mini:this-is-only-for-build-envs
+Prefer: cmake-mini
+Prefer: ocaml-compiler-libs-devel
+Prefer: python2-contextlib2
+Prefer: chrony-pool-suse
+
+%ifarch i586
+Prefer: slurm libpmi0 slurm-config slurm-plugins slurm-node
+%endif
+
+Substitute: azuremetadata python3-azuremetadata
+Prefer: python3-pytest
+Prefer: python2-pytest
+Prefer: PackageKit-backend-zypp
+Prefer: python2-subprocess32
+# KEEP END from older
+
+### from openSUSE:Backports:SLE-15-SP3
+Release: bp153.<CI_CNT>.<B_CNT>
+
+Patterntype: rpm-md ymp
+RepoType: rpm-md:rsyncable splitdebug:_debug
+
+# whenever something (rpmlint-mini!) wants rpmlint we also install
+# our extra policy check
+#Substitute: rpmlint rpmlint rpmlint-backports rpmlint-backports-data
+
+# rpmlint-backports-data is only available for SLE architectures
+%ifarch x86_64 ppc64le s390x aarch64
+Support: rpmlint-backports
+%endif
+Support: brp-check-suse
+
+# Enable ccache for chromium tensorflow{2}
+BuildFlags: useccache:chromium
+
+BuildFlags: useccache:tensorflow:hpc
+BuildFlags: useccache:tensorflow:hpc-openmpi2
+BuildFlags: useccache:tensorflow:lite
+BuildFlags: useccache:tensorflow:standard
+
+BuildFlags: useccache:tensorflow2:hpc
+BuildFlags: useccache:tensorflow2:hpc-openmpi2
+BuildFlags: useccache:tensorflow2:lite
+BuildFlags: useccache:tensorflow2:standard
+
+FileProvides: /usr/bin/python2 python2-base
+FileProvides: /sbin/pidof sysvinit-tools
+
+Prefer: rpm -rpm-ndb
+# bsc#1182698
+Preinstall: rpm-config-SUSE
+
+# prefer coreutils over coreutils-single
+Prefer: coreutils
+
+# Help with the switch to the gcc7 provided libs
+Prefer: -libstdc++6-gcc7 -libtsan0-gcc7 -libgomp1-gcc7 -libgcc_s1-gcc7 -libatomic1-gcc7 -libcilkrts5-gcc7 -libitm1-gcc7
+Prefer: -liblsan0-gcc7 -libmpx2-gcc7 -libubsan0-gcc7
+
+# Help with the switch to the gcc9 provided libs:
+Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5
+
+# Imagemagick now has 2 configs
+Prefer: ImageMagick-config-7-SUSE
+
+# man uses cron to update the DB normally, but we don't care for that in the build system
+Ignore: man:cron
+
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: erlang-rebar-obs:this-is-only-for-build-envs
+Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs
+Ignore: jdk-bootstrap:this-is-only-for-build-envs
+Ignore: libsystemd0-mini:this-is-only-for-build-envs
+Ignore: libudev-mini1:this-is-only-for-build-envs
+Ignore: libunbound-devel-mini:this-is-only-for-build-envs
+Ignore: systemd-mini:this-is-only-for-build-envs
+Ignore: udev-mini:this-is-only-for-build-envs
+Ignore: curl-mini:this-is-only-for-build-envs
+Ignore: libcurl-mini-devel:this-is-only-for-build-envs
+Ignore: libcurl4-mini:this-is-only-for-build-envs
+Ignore: ghc-bootstrap:this-is-only-for-build-envs
+Ignore: ghc-bootstrap-helpers:this-is-only-for-build-envs
+Ignore: cmake-mini:this-is-only-for-build-envs
+
+# Cmake exists as a -mini flavor, which is not linked against curl.
+Prefer: cmake-mini
+
+# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version
+# SLE has no nodejs preference, let's use nodejs10
+Prefer: -nodejs4 -nodejs6 -nodejs9 nodejs10
+Prefer: npm10
+
+# Fix build of python-inspektor
+Prefer: python2-configparser
+
+# Fix build for packages depending on rust since old version rust-std (1.24.1)
+# instead of current version in SLE (rust-std-static 1.31.1) was used for builds
+Substitute: rust-std rust-std-static
+
+# For 32bit stuff
+Support: perl build-mkbaselibs
+Prefer: build-mkbaselibs
+
+# Directly copied from Leap
+Prefer: openmpi-config
+Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 libnetcdf11 netcdf-devel netcdf-devel-data -libnetcdf13-openmpi -libnetcdf13-openmpi2
+Prefer: -libnetcdf15-openmpi -libnetcdf15-openmpi2
+Prefer: libnetcdf18
+Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-101-openmpi -libhdf5-101-mvapich2 -libhdf5_hl101-openmpi libhdf5_hl100 -libhdf5-103-openmpi1 -libhdf5-103-mvapich2 -libhdf5_hl103-openmpi -libhdf5_cpp103-openmpi -libhdf5_cpp103-openmpi1 -libhdf5_cpp103-mvapich2 -libhdf5-103-openmpi2 -libhdf5-103-openmpi3 -libhdf5-103-openmpi4 -libhdf5_cpp103-openmpi2 -libhdf5_cpp103-openmpi3 -libhdf5_cpp103-openmpi4
+Prefer: -hdf5-1_8-devel
+Prefer: -libvtk1-openmpi libvtk1-openmpi2
+
+
+# do not prefer php7-test
+Prefer: -php7-test
+
+# go exists in mutliple versions by now - we prefer the 'unversioned package' - not true anymore
+# for go version greater than 1.13, let's not to prefer older ones
+# go1.15 is the default by patchinfo.18422
+Prefer: go -go1.12 -go1.13 -go1.14 -go1.16
+
+# Have choice for vtk-java/vtk-tcl/python3-vtk needed by vtk-devel
+Prefer: vtk-java vtk-tcl python3-vtk
+
+# have choice for mingw32-unistd-pthread-devel needed by mingw32-headers: mingw32-headers-dummy-pthread mingw32-winpthreads-devel
+Prefer: -mingw64-headers-dummy-pthread -mingw32-headers-dummy-pthread
+
+# Ruby stuff - quite a few packages exist in multiple versions in the distro; in each case, the Preference is on the 'unversioned' package
+Prefer: ruby2.5-rubygem-tilt
+Prefer: ruby2.5-rubygem-mail
+Prefer: ruby2.5-rubygem-addressable
+Prefer: ruby2.5-rubygem-thor
+Prefer: ruby2.5-rubygem-tzinfo
+
+# in doubt, take higher versions
+Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4
+Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3
+Prefer: -rubygem-json_pure-1_5
+Prefer: -ruby2.4-rubygem-fast_gettext-1_1 -ruby2.4-rubygem-listen-3_0 -ruby2.4-rubygem-nokogiri-1_6 -ruby2.4-rubygem-i18n-0_6 -ruby2.4-rubygem-ruby_dep-1_3 -ruby2.4-rubygem-childprocess-0_6
+Prefer: -ruby2.4-rubygem-mime-types-1
+Prefer: -ruby2.5-rubygem-rspec-2_14
+Prefer: -ruby2.5-rubygem-mime-types-1
+
+# have choice for rubygem(ruby:2.5.0:fast_gettext) < 3.0 needed by yast2-ruby-bindings: ruby2.5-rubygem-fast_gettext ruby2.5-rubygem-fast_gettext-1.1
+Prefer: -ruby2.5-rubygem-fast_gettext-1.1
+# have choice for rubygem(ruby:2.5.0:sass-rails) >= 5.0.1: ruby2.5-rubygem-sass-rails ruby2.5-rubygem-sass-rails-5.1
+Prefer: -ruby2.5-rubygem-sass-rails-5.1
+
+# we have python3 and python39
+Prefer: -python39
+
+# have choice: python2-setuptools python2-setuptools-test python2-setuptools-wheel
+Prefer: python2-setuptools
+Prefer: python3-setuptools
+
+# python-msgpack-python was renamed to python-msgpack with 0.5 as a single-spec package (provides/obsoletes in place)
+Prefer: python2-msgpack python3-msgpack
+
+Prefer: python2-pycryptodome
+
+# There is python3-Django and python3-Django1 - as usual, we favor the unversioned one
+Prefer: python3-Django
+
+# multiple pytest version so prefers the unversioned one
+Prefer: python3-pytest python3-pytest4 python3-pytest5
+Prefer: python2-pytest python2-pytest4 python2-pytest5
+
+Prefer: python2-subprocess32
+
+# Enchant has multiple backends to chose from, make a decision for OBS
+Prefer: enchant-1-backends
+Prefer: enchant-2-backend-hunspell
+
+# OpenSceneGraph exists as 'latest' and a 3.4 compat package. If nothing is specified, we want latest
+Prefer: libOpenSceneGraph-devel libOpenThreads-devel
+
+# Needed for maven (jsc#SLE-8786)
+Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm
+Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel
+Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap
+Prefer: xml-commons-apis xml-commons-resolver
+Prefer: log4j12-mini
+Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap
+Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap
+Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap
+Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap
+Prefer: bsh2
+Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap
+Prefer: apache-commons-net
+Prefer: gradle groovy-lib eclipse-swt gpars
+
+Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis
+
+Prefer: rhino:xmlbeans-mini
+Prefer: k9s:go1.14
+
+# have choice for perl(Math::BigInt) >= 1.999808: amanda perl-Math-BigInt
+Prefer: perl-Math-BigInt
+
+# hwdata vs pciutils-ids
+Prefer: -pciutils-ids
+Prefer: hwdata
+
+# have choice for tensorflow: tensorflow tensorflow2 tensorflow2_2_1_0-gnu-hpc tensorflow2_2_1_0-gnu-mvapich2-hpc tensorflow2_2_1_0-gnu-openmpi2-hpc
+Prefer: tensorflow2
+
+# have choice for systemd-default-settings-branding needed by systemd:
+# systemd-default-settings-branding-SLE systemd-default-settings-branding-openSUSE systemd-default-settings-branding-upstream
+Prefer: systemd-default-settings-branding-SLE
+
+# Do not prefer 32bit devel
+Prefer: -ImageMagick-devel-32bit
+Prefer: -bluez-devel-32bit
+Prefer: -libgnutls-devel-32bit
+Prefer: -libMagick++-devel-32bit
+Prefer: -libQt5Concurrent-devel-32bit
+Prefer: -libQt5Core-devel-32bit
+Prefer: -libQt5DBus-devel-32bit
+Prefer: -libQt5Gui-devel-32bit
+Prefer: -libQt5Network-devel-32bit
+Prefer: -libQt5OpenGL-devel-32bit
+Prefer: -libQt5OpenGLExtensions-devel-static-32bit
+Prefer: -libQt5PrintSupport-devel-32bit
+Prefer: -libQt5Sql-devel-32bit
+Prefer: -libQt5Test-devel-32bit
+Prefer: -libQt5Widgets-devel-32bit
+Prefer: -libQt5Xml-devel-32bit
+Prefer: -libpackagekit-glib2-devel-32bit
+Prefer: -libvirt-devel-32bit
+Prefer: -typelib-1_0-Gst-1_0-32bit
+Prefer: -Mesa-libGL-devel-32bit
+Prefer: -Mesa-libGLESv2-devel-32bit
+Prefer: -Mesa-libGLESv1_CM-devel-32bit
+Prefer: -Mesa-libGL-devel-32bit
+Prefer: -Mesa-libEGL-devel-32bit
+Prefer: -alsa-devel-32bit
+Prefer: -libdrm-devel-32bit
+Prefer: -pciutils-devel-32bit
+Prefer: -libSDL2_image-devel-32bit
+Prefer: -libpulse-devel-32bit
+Prefer: -libva-devel-32bit
+Prefer: -libva-gl-devel-32bit
+Prefer: -libdbusmenu-qt5-devel-32bit
+Prefer: -libgbm-devel-32bit
+Prefer: -libpolkit-qt5-1-devel-32bit
+Prefer: -audit-devel-32bit
+Prefer: -libqt5-qtspeech-devel-32bit
+Prefer: -libkms-devel-32bit
+Prefer: -gdk-pixbuf-devel-32bit
+Prefer: -papi-devel-32bit
+Prefer: -mpg123-devel-32bit
+Prefer: -libOSMesa-devel-32bit
+Prefer: -libSDL_ttf-devel-32bit
+Prefer: -libSDL2_ttf-devel-32bit
+Prefer: -libSDL_mixer-devel-32bit
+Prefer: -libSDL2_mixer-devel-32bit
+Prefer: -libSDL_image-devel-32bit
+Prefer: -libSDL_net-devel-32bit
+Prefer: -libSDL2_net-devel-32bit
+Prefer: -libSDL_gfx-devel-32bit
+Prefer: -libSDL2_gfx-devel-32bit
+Prefer: -muparser-devel-32bit
+Prefer: -xcb-util-cursor-devel-32bit
+Prefer: -libbotan-devel-32bit
+Prefer: -dirac-devel-32bit
+Prefer: -libavc1394-devel-32bit
+Prefer: -zvbi-devel-32bit
+Prefer: -libcmocka-devel-32bit
+Prefer: -libstatgrab-devel-32bit
+Prefer: -libqt5-qtnetworkauth-devel-32bit
+Prefer: -cairomm-devel-32bit
+Prefer: -libqt5-qtscxml-devel-32bit
+Prefer: -phonon4qt5-devel-32bit
+Prefer: -libQt5WebKit5-devel-32bit
+Prefer: -libQt5WebKitWidgets-devel-32bit
+Prefer: -libsmartcols-devel-32bit
+Prefer: -sane-backends-devel-32bit
+Prefer: -libX11-devel-32bit
+Prefer: -libopenssl-1_0_0-devel-32bit
+
+# wine comes in various flavors by now, we pick the unflavored ones
+Prefer: wine-32bit wine-devel-32bit wine-devel
+
+Prefer: -ruby2.4-rubygem-fast_gettext-1_1 -ruby2.4-rubygem-listen-3_0 -ruby2.4-rubygem-nokogiri-1_6 -ruby2.4-rubygem-i18n-0_6 -ruby2.4-rubygem-ruby_dep-1_3 -ruby2.4-rubygem-childprocess-0_6
+Prefer: -ruby2.4-rubygem-mime-types-1
+Prefer: -ruby2.5-rubygem-rspec-2_14
+Prefer: -ruby2.5-rubygem-mime-types-1
+
+Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 -libnetcdf13-openmpi libnetcdf11 netcdf-devel netcdf-devel-data
+
+# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel
+Prefer: libmysqlclient-devel
+
+# have choice for perl(Math::BigInt) >= 1.999808: amanda perl-Math-BigInt
+Prefer: perl-Math-BigInt
+
+# have choice for PackageKit-backend needed by PackageKit: PackageKit-backend-dnf PackageKit-backend-zypp
+Prefer: PackageKit-backend-zypp
+
+# We have multiple versions of ffmpeg available, the preferred one is ffmpeg4 from Backports instead of ffmpeg3 from SLE
+# Prefer: ffmpeg-4-libavcodec-devel ffmpeg-4-libavformat-devel ffmpeg-4-libavutil-devel ffmpeg-4-libswscale-devel ffmpeg-4-libavdevice-devel
+# Prefer: -ffmpeg-private-devel -libavcodec-devel -libavformat-devel -libavutil-devel -libswscale-devel -libavdevice-devel -libavfilter-devel
+# ffmpeg-3 and ffmpeg-4 handling in 15.2
+Prefer: libvpx-devel
+Prefer: ffmpeg-3-libavcodec-devel ffmpeg-3-libavdevice-devel ffmpeg-3-libavfilter-devel ffmpeg-3-libavformat-devel ffmpeg-3-libavresample-devel ffmpeg-3-libavutil-devel ffmpeg-3-libpostproc-devel ffmpeg-3-libswresample-devel ffmpeg-3-libswscale-devel ffmpeg-3-private-devel
+Prefer: -ffmpeg3-devel
+Substitute: ffmpeg3-devel ffmpeg-3-libavcodec-devel
+Prefer: -libavcodec-devel -libavdevice-devel -libavfilter-devel -libavformat-devel -libavresample-devel -libavutil-devel -libpostproc-devel -libswresample-devel -libswscale-devel -ffmpeg-private-devel
+# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg
+Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel
+
+# have choice for libffi
+Prefer: libffi7
+
+# We have opencv and opencv3 - as usual, the unversioned one should win
+Prefer: opencv-devel
+
+# LUA namespace migration - slowly moving to the new names (keep ports in mind!)
+# lua, lua51, lua52 and lua53 all provide 'lua'; version 5.3 is the 'target'; lua will be deleted in the future
+Prefer: lua53 lua51 lua52 lua
+Prefer: liblua5_3-5 liblua5_1-5 liblua5_2-5
+Prefer: lua53-devel lua51-devel lua52-devel
+Prefer: libtolua++-5_3-devel libtolua++-5_1-devel libtolua++-5_2-devel
+Prefer: -liblua5_3 -liblua5_1 -liblua5_2
+
+Prefer: moonjit-devel
+
+# Prefer over libyui11* from SP2-GA
+Prefer: libyui15
+Prefer: libyui-ncurses15
+# Additional prefers for installation-images
+Prefer: libyui-ncurses-pkg15 libyui-qt15 libyui-qt-graph15 libyui-qt-pkg15 libyui-ncurses-rest-api15 libyui-qt-rest-api15
+Substitute: libyui libyui15
+Substitute: libyui-ncurses libyui-ncurses15
+Substitute: libyui-ncurses-pkg libyui-ncurses-pkg15
+Substitute: libyui-qt libyui-qt15
+Substitute: libyui-qt-graph libyui-qt-graph15
+Substitute: libyui-qt-pkg libyui-qt-pkg15
+Substitute: libyui-ncurses-rest-api libyui-ncurses-rest-api15
+Substitute: libyui-qt-rest-api libyui-qt-rest-api15
+
+# SLE product and SLE-Module-Development-Tools-OBS module providing different versions
+Prefer: libgnome-desktop-3-18
+Prefer: libgnomekbd8
+Prefer: typelib-1_0-Gspell-1
+
+Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver
+
+Preinstall: liblua5_3-5
+
+# http://bugzilla.opensuse.org/show_bug.cgi?id=1159191
+Substitute: lua51-luajit-devel moonjit-devel
+
+# Default to Java 11
+Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless
+# Prefer java 8 than java 9 or 10
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+# Fall back to Java 10, if there was no java 11 option
+Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless
+# Fall back to Java 9, if there was no java 10 option
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+# And then fall back to java 7 if needed
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+# And then fall back to java 7 bootstrap if needed
+# Prefer: java-1_7_0-bootstrap java-1_7_0-bootstrap-devel java-1_7_0-bootstrap-javadoc java-1_7_0-bootstrap-headless
+Substitute: java2-devel-packages java-devel
+
+# Needed for maven (jsc#SLE-8786)
+Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm
+Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel
+Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap
+Prefer: xml-commons-apis xml-commons-resolver
+Prefer: log4j12-mini
+Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap
+Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap
+Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap
+Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap
+Prefer: bsh2
+Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap
+Prefer: apache-commons-net
+Prefer: gradle groovy-lib eclipse-swt gpars
+
+# FFMPEG conflict with FFMPEG-5, prefer ffmpeg version from SLE
+Prefer: ffmpeg
+
+# Conflict with postgresql13-devel-mini
+Prefer: libpq5
+
+# jsc#SLE-17030
+Ignore: postgresql12-devel-mini:this-is-only-for-build-envs
+Ignore: postgresql13-devel-mini:this-is-only-for-build-envs
+Prefer: postgresql13-devel-mini postgresql12-devel-mini
+
+# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190)
+Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit
+Substitute: postfix-lmdb postfix
+
+# required after IBS SR#228071
+Substitute: kmod-compat kmod
+# replacing module-init-tools
+Prefer: -kmod-compat
+
+# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190)
+Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit
+Substitute: postfix-lmdb postfix
+
+# jsc#SLE-17030
+Prefer: postgresql13-devel-mini postgresql12-devel-mini
+
+# required to workaround libwayland-egl-devel/libwaylang-egl1 issue between Mesa(SUSE:SLE-15:Update) and wayland(SUSE:SLE-15-SP2:GA)
+Substitute: libwayland-egl-devel wayland-devel
+
+# xerces-j2-xml-apis/resolver has been obsoleted but in SP0
+Substitute: xerces-j2-xml-apis xml-commons-apis
+Substitute: xerces-j2-xml-resolver xml-commons-resolver
+
+# ECO-3147 added a new package which opened several installation choices
+Prefer: -libboost_atomic_legacy -libboost_container_legacy -libboost_context_legacy -libboost_coroutine_legacy -libboost_system_legacy -libboost_thread_legacy -libboost_date_time_legacy
+Prefer: -libboost_fiber_legacy -libboost_filesystem_legacy -libboost_graph_legacy -libboost_iostreams_legacy -libboost_locale_legacy -libboost_log_legacy -libboost_math_legacy
+Prefer: -libboost_program_options_legacy -libboost_random_legacy -libboost_regex_legacy -libboost_serialization_legacy -libboost_signals_legacy -libboost_stacktrace_legacy
+Prefer: -libboost_test_legacy -libboost_timer_legacy -libboost_type_erasure_legacy -libboost_wave_legacy
+
+# svrcore has been merged to 389-ds
+Substitute: svrcore-devel 389-ds-devel
+
+# SLE has no nodejs preference, let's use newer nodejs version
+# https://progress.opensuse.org/issues/63169
+Prefer: -nodejs8 -nodejs10 -nodejs12
+Prefer: -nodejs8-devel -nodejs10-devel -nodejs12-devel
+Prefer: -npm8 -npm10 -npm12
+
+# openSUSE -> SLE magic so many environments can work
+Substitute: desktop-data-openSUSE-extra desktop-data-SLE-extra
+Substitute: desktop-data-openSUSE desktop-data-SLE
+Substitute: openSUSE-release sles-release
+Substitute: wallpaper-branding-openSUSE wallpaper-branding-SLE
+
+
+%define is_opensuse 1
+%define is_backports 1
+# I doubt this should set to 1 - maxlin
+# %define _with_mono 1
+
+Macros:
+%is_opensuse 1
+%is_backports 1
+%opensuse_bs 1
+# I doubt this should set to 1 - maxlin
+# %_with_mono 1
+:Macros
+
+#BuildFlags
+### from openSUSE:Leap:15.3
+
+Release: <CI_CNT>.<B_CNT> spec:lp153.<CI_CNT>.<B_CNT>
+
+# uncomment before RC phase to get aaa_base-malloccheck etc.
+# make sure to rebuild patterns-base and skelcd-openSUSE
+# %define _with_betatest 1
+# Macros:
+# %_with_betatest 1
+# :Macros
+
+#
+# product building setup
+#
+#Substitute: kiwi-packagemanager:instsource product-builder-plugin-openSUSE
+Substitute: kiwi-packagemanager:instsource product-builder-plugin-Tumbleweed
+
+# debug tools for local osc debugging
+Substitute: obs:cli_debug_packages gdb vim strace less rzsz
+
+#
+# vendor related
+#
+
+# do not pull rpmlint-Factory-strict unless openSUSE:Leap:15.3
+# not sure this would work as my expectation - maxlin
+Support: !rpmlint-Factory-strict
+
+# temporary for bootstrap
+# Support: !rpmlint-mini !rpmlint-Factory !rpmlint-Factory-strict
+
+Support: !rpmlint-backports
+Support: perl build-mkbaselibs
+Prefer: build-mkbaselibs
+Support: brp-check-suse
+Support: post-build-checks rpmlint-Factory
+
+# bsc#1182698
+Preinstall: rpm-config-SUSE
+
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gettext-runtime-mini
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gettext-runtime-mini
+Substitute: build-packages:iso !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini
+Substitute: kiwi python3-kiwi
+
+### required change for opensuse-leap-dnf-image
+# Workaround obs-build substitution error by requesting both for either unsatisfied provides
+Substitute: kiwi-packagemanager:dnf dnf microdnf
+Substitute: kiwi-packagemanager:microdnf microdnf dnf
+# For microdnf glib2 stuff
+Prefer: libgio-2_0-0:dbus-1
+
+### Branding related preferences
+Prefer: distribution-logos-openSUSE-Leap
+Prefer: awesome:awesome-branding-upstream
+Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE
+Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream
+Prefer: enlightenment-theme-upstream
+Prefer: fcitx:fcitx-branding-openSUSE
+Prefer: gdm:gdm-branding-upstream
+Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse
+Prefer: glib2:glib2-branding-upstream
+Prefer: gnome-panel:gnome-panel-branding-upstream
+Prefer: gnome-session:gconf2-branding-openSUSE
+Prefer: gnome-session:gnome-session-branding-openSUSE
+Prefer: icewm-theme-branding
+Prefer: kdm:kdm-branding-upstream
+Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream
+Prefer: libgio-2_0-0:gio-branding-upstream
+Prefer: libglib-2_0-0:glib2-branding-upstream
+Prefer: libpurple-branding-upstream
+Prefer: libreoffice:libreoffice-branding-upstream
+Prefer: libsocialweb:libsocialweb-branding-upstream
+Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream
+Prefer: lxde-common:lxde-common-branding-openSUSE
+Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream
+Prefer: NetworkManager:NetworkManager-branding-openSUSE
+Prefer: PackageKit:PackageKit-branding-upstream
+Prefer: plasma5-desktop:plasma5-desktop-branding-upstream
+Prefer: plasma5-workspace:plasma5-workspace-branding-upstream
+Prefer: sddm:sddm-branding-upstream
+Prefer: wallpaper-branding-openSUSE
+# Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream
+# Prefer: xfce4-settings:xfce4-settings-branding-upstream
+# Prefer: xfdesktop:xfdesktop-branding-upstream
+# Prefer: libxfce4ui:libxfce4ui-branding-upstream
+# Prefer: libexo-1-0:libexo-1-0-branding-upstream
+# Prefer: libgarcon-1-0:libgarcon-branding-upstream
+# Prefer: libgarcon-data:libgarcon-branding-upstream
+# Prefer: exo-data:exo-branding-upstream
+Prefer: exo-data:exo-branding-openSUSE
+Prefer: libexo-1-0:libexo-1-0-branding-openSUSE
+Prefer: libgarcon-1-0:libgarcon-branding-openSUSE
+Prefer: libgarcon-data:libgarcon-branding-openSUSE
+Prefer: libxfce4ui:libxfce4ui-branding-openSUSE
+Prefer: xfce4-notifyd:xfce4-notifyd-branding-openSUSE
+Prefer: xfce4-settings:xfce4-settings-branding-openSUSE
+Prefer: xfdesktop:xfdesktop-branding-openSUSE
+Prefer: yast2-branding-openSUSE
+Prefer: yast2-qt:yast2-qt-branding-openSUSE
+Prefer: yast2-theme-openSUSE
+Prefer: gnome-menus:gnome-menus-branding-openSUSE
+
+Prefer: openSUSE-build-key
+Prefer: -suse-build-key
+Prefer: openSUSE-release:openSUSE-release-mini
+Prefer: -sles-release -gio-branding-SLE
+Prefer: openSUSE-EULAs
+
+# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW)
+Prefer: dummy-release
+
+# There are multiple PK backends available. Favor the openSUSE own zypp backend
+Prefer: PackageKit-backend-zypp
+
+# Revert SLE change
+Ignore: !pciutils:pciutils-ids
+
+# Prefer hwdata than pciutils-ids
+Prefer: -pciutils-ids
+Prefer: hwdata
+
+# Obsoleted by gnome-tweaks
+Prefer: -gnome-tweak-tool
+Prefer: -desktop-data-SLE
+
+# 32bit devel package
+Prefer: -libgnutls-devel-32bit
+Prefer: -typelib-1_0-Gst-1_0-32bit
+Prefer: -bluez-devel-32bit
+Prefer: -gdk-pixbuf-devel-32bit
+
+# Prefer over libyui11* from SP2-GA
+Prefer: libyui15
+Prefer: libyui-ncurses15
+# Additional prefers for installation-images
+Prefer: libyui-ncurses-pkg15 libyui-qt15 libyui-qt-graph15 libyui-qt-pkg15 libyui-ncurses-rest-api15 libyui-qt-rest-api15
+Substitute: libyui libyui15
+Substitute: libyui-ncurses libyui-ncurses15
+Substitute: libyui-ncurses-pkg libyui-ncurses-pkg15
+Substitute: libyui-qt libyui-qt15
+Substitute: libyui-qt-graph libyui-qt-graph15
+Substitute: libyui-qt-pkg libyui-qt-pkg15
+Substitute: libyui-ncurses-rest-api libyui-ncurses-rest-api15
+Substitute: libyui-qt-rest-api libyui-qt-rest-api15
+
+# required after IBS SR#228071
+Substitute: kmod-compat kmod
+# replacing module-init-tools
+Prefer: -kmod-compat
+
+# kubernetes1.18-kubeadm vs kubernetes1.17-kubeadm on kubernetes-kubeadm-provider
+Prefer: kubernetes1.18-kubeadm
+
+# jsc#SLE-17030
+Ignore: postgresql12-devel-mini:this-is-only-for-build-envs
+Ignore: postgresql13-devel-mini:this-is-only-for-build-envs
+Prefer: postgresql13-devel-mini postgresql12-devel-mini
+
+# Undo SLE specific preference
+Prefer: systemd-presets-branding-openSUSE -systemd-presets-branding-SLE -systemd-presets-branding-CAASP
+Prefer: systemd-default-settings-branding-openSUSE -systemd-default-settings-branding-SLE
+Prefer: plymouth-branding-openSUSE -plymouth-branding-SLE
+Prefer: PackageKit-branding-openSUSE -PackageKit-branding-SLE
+
+# Undo these Substitles from Backports
+Substitute: desktop-data-openSUSE-extra desktop-data-openSUSE-extra
+Substitute: desktop-data-openSUSE desktop-data-openSUSE
+Substitute: openSUSE-release openSUSE-release
+Substitute: wallpaper-branding-openSUSE wallpaper-branding-openSUSE
+
+# Reverse these Substitles from Backports
+Substitute: desktop-data-SLE-extra desktop-data-openSUSE-extra
+Substitute: desktop-data-SLE desktop-data-openSUSE
+Substitute: sles-release openSUSE-release
+Substitute: wallpaper-branding-SLE wallpaper-branding-openSUSE
+
+# Prefer coreutils over coreutils-single
+Prefer: -coreutils-single
+
+
+%define suse_version 1500
+%define sle_version 150300
+%define is_opensuse 1
+
+Macros:
+%suse_version 1500
+%sle_version 150300
+%is_opensuse 1
+%is_backports 0
+
+%sles_version 0
+%_vendor suse
+:Macros
+
+RepoURL: https://download.opensuse.org/distribution/leap/15.3/repo/oss
+RegistryURL: https://registry.opensuse.org
+
diff --git a/configs/sl15.4.conf b/configs/sl15.4.conf
new file mode 100755
index 0000000..402673a
--- /dev/null
+++ b/configs/sl15.4.conf
@@ -0,0 +1,1785 @@
+Substitute: kiwi-packagemanager:instsource product-builder-plugin-Tumbleweed
+
+# debug tools for local osc debugging
+Substitute: obs:cli_debug_packages gdb vim strace less rzsz
+
+# do not pull rpmlint-Factory-strict unless openSUSE:Leap:15.3
+# not sure this would work as my expectation - maxlin
+Support: !rpmlint-Factory-strict
+
+# temporary for bootstrap
+# Support: !rpmlint-mini !rpmlint-Factory !rpmlint-Factory-strict
+
+Support: !rpmlint-backports
+Support: perl build-mkbaselibs
+Prefer: build-mkbaselibs
+Support: brp-check-suse
+Support: post-build-checks rpmlint-Factory
+
+# bsc#1182698
+Preinstall: rpm-config-SUSE
+
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gettext-runtime-mini !postgresql13-devel-mini
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gettext-runtime-mini !postgresql13-devel-mini
+Substitute: build-packages:iso !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !postgresql13-devel-mini
+Substitute: kiwi python3-kiwi
+
+### required change for opensuse-leap-dnf-image
+# Workaround obs-build substitution error by requesting both for either unsatisfied provides
+Substitute: kiwi-packagemanager:dnf dnf microdnf
+Substitute: kiwi-packagemanager:microdnf microdnf dnf
+# For microdnf glib2 stuff
+Prefer: libgio-2_0-0:dbus-1
+
+### Branding related preferences
+Prefer: distribution-logos-openSUSE-Leap
+Prefer: awesome:awesome-branding-upstream
+Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE
+Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream
+Prefer: enlightenment-theme-upstream
+Prefer: fcitx:fcitx-branding-openSUSE
+Prefer: gdm:gdm-branding-upstream
+Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse
+Prefer: glib2:glib2-branding-upstream
+Prefer: gnome-panel:gnome-panel-branding-upstream
+Prefer: gnome-session:gconf2-branding-openSUSE
+Prefer: gnome-session:gnome-session-branding-openSUSE
+Prefer: icewm-theme-branding
+Prefer: kdm:kdm-branding-upstream
+Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream
+Prefer: libgio-2_0-0:gio-branding-upstream
+Prefer: libglib-2_0-0:glib2-branding-upstream
+Prefer: libpurple-branding-upstream
+Prefer: libreoffice:libreoffice-branding-upstream
+Prefer: libsocialweb:libsocialweb-branding-upstream
+Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream
+Prefer: lxde-common:lxde-common-branding-openSUSE
+Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream
+Prefer: NetworkManager:NetworkManager-branding-openSUSE
+Prefer: PackageKit:PackageKit-branding-upstream
+Prefer: plasma5-desktop:plasma5-desktop-branding-upstream
+Prefer: plasma5-workspace:plasma5-workspace-branding-upstream
+Prefer: sddm:sddm-branding-upstream
+Prefer: wallpaper-branding-openSUSE
+# Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream
+# Prefer: xfce4-settings:xfce4-settings-branding-upstream
+# Prefer: xfdesktop:xfdesktop-branding-upstream
+# Prefer: libxfce4ui:libxfce4ui-branding-upstream
+# Prefer: libexo-1-0:libexo-1-0-branding-upstream
+# Prefer: libgarcon-1-0:libgarcon-branding-upstream
+# Prefer: libgarcon-data:libgarcon-branding-upstream
+# Prefer: exo-data:exo-branding-upstream
+Prefer: exo-data:exo-branding-openSUSE
+Prefer: libexo-1-0:libexo-1-0-branding-openSUSE
+Prefer: libgarcon-1-0:libgarcon-branding-openSUSE
+Prefer: libgarcon-data:libgarcon-branding-openSUSE
+Prefer: libxfce4ui:libxfce4ui-branding-openSUSE
+Prefer: xfce4-notifyd:xfce4-notifyd-branding-openSUSE
+Prefer: xfce4-settings:xfce4-settings-branding-openSUSE
+Prefer: xfdesktop:xfdesktop-branding-openSUSE
+Prefer: yast2-branding-openSUSE
+Prefer: yast2-qt:yast2-qt-branding-openSUSE
+Prefer: yast2-theme-openSUSE
+Prefer: gnome-menus:gnome-menus-branding-openSUSE
+
+Prefer: openSUSE-build-key
+Prefer: -suse-build-key
+Prefer: openSUSE-release:openSUSE-release-mini
+Prefer: -sles-release -gio-branding-SLE
+Prefer: openSUSE-EULAs
+
+# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW)
+Prefer: dummy-release
+
+# There are multiple PK backends available. Favor the openSUSE own zypp backend
+Prefer: PackageKit-backend-zypp
+
+# Revert SLE change
+Ignore: !pciutils:pciutils-ids
+
+# Prefer hwdata than pciutils-ids
+Prefer: -pciutils-ids
+Prefer: hwdata
+
+# Obsoleted by gnome-tweaks
+Prefer: -gnome-tweak-tool
+Prefer: -desktop-data-SLE
+
+# 32bit devel package
+Prefer: -libgnutls-devel-32bit
+Prefer: -typelib-1_0-Gst-1_0-32bit
+Prefer: -bluez-devel-32bit
+Prefer: -gdk-pixbuf-devel-32bit
+
+# required after IBS SR#228071
+Substitute: kmod-compat kmod
+# replacing module-init-tools
+Prefer: -kmod-compat
+
+# kubernetes1.18-kubeadm vs kubernetes1.17-kubeadm on kubernetes-kubeadm-provider
+Prefer: kubernetes1.18-kubeadm
+
+# jsc#SLE-17030
+Ignore: postgresql12-devel-mini:this-is-only-for-build-envs
+Ignore: postgresql13-devel-mini:this-is-only-for-build-envs
+Prefer: postgresql13-devel-mini postgresql12-devel-mini
+
+# Undo SLE specific preference
+Prefer: systemd-presets-branding-openSUSE -systemd-presets-branding-SLE -systemd-presets-branding-CAASP
+Prefer: systemd-default-settings-branding-openSUSE -systemd-default-settings-branding-SLE
+Prefer: plymouth-branding-openSUSE -plymouth-branding-SLE
+Prefer: PackageKit-branding-openSUSE -PackageKit-branding-SLE
+
+# Undo these Substitles from Backports
+Substitute: desktop-data-openSUSE-extra desktop-data-openSUSE-extra
+Substitute: desktop-data-openSUSE desktop-data-openSUSE
+Substitute: openSUSE-release openSUSE-release
+Substitute: wallpaper-branding-openSUSE wallpaper-branding-openSUSE
+
+# Reverse these Substitles from Backports
+Substitute: desktop-data-SLE-extra desktop-data-openSUSE-extra
+Substitute: desktop-data-SLE desktop-data-openSUSE
+Substitute: sles-release openSUSE-release
+Substitute: wallpaper-branding-SLE wallpaper-branding-openSUSE
+
+# Prefer coreutils over coreutils-single
+Prefer: -coreutils-single
+
+
+%define suse_version 1500
+%define sle_version 150400
+%define is_opensuse 1
+
+
+%define gcc_version 7
+
+Substitute: kiwi python3-kiwi
+
+Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15
+Substitute: system-packages:kiwi-product product-builder
+Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper
+
+# create conflicts for packages installed into the target image
+Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini
+Substitute: build-packages:docker python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini
+Substitute: system-packages:docker docker kmod-compat sysvinit-tools kernel-default createrepo_c
+Substitute: kiwi python3-kiwi
+Substitute: system-packages:mock mock createrepo_c
+Substitute: system-packages:kiwi-image python3-kiwi createrepo_c tar
+
+Prefer: -python2-kiwi
+
+%ifarch s390
+Substitute: valgrind
+Substitute: valgrind-devel
+Substitute: pkgconfig(valgrind)
+%endif
+%ifarch s390 s390x
+Substitute: libunwind-devel
+Substitute: pkgconfig(libunwind)
+%endif
+
+%ifarch s390 s390x
+Ignore: libsensors4-devel
+%endif
+
+%define _without_mono 1
+Macros:
+%_without_mono 1
+:Macros
+
+Prefer: rpm
+Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel
+Prefer: -liblua5_3 -liblua5_1 -liblua5_2
+
+FileProvides: /bin/csh tcsh
+FileProvides: /bin/logger util-linux-systemd
+FileProvides: /sbin/netconfig sysconfig-netconfig
+FileProvides: /sbin/setcap libcap-progs
+FileProvides: /usr/bin/csh tcsh
+FileProvides: /usr/bin/docbook2man docbook-utils
+FileProvides: /usr/bin/eu-nm elfutils
+FileProvides: /usr/bin/fipscheck fipscheck
+FileProvides: /usr/bin/killall psmisc
+FileProvides: /usr/bin/mimencode metamail
+FileProvides: /usr/bin/mkisofs mkisofs
+FileProvides: /usr/bin/pkg-config pkg-config
+FileProvides: /usr/bin/python python-base
+FileProvides: /usr/bin/setfacl acl
+FileProvides: /usr/bin/sg_inq sg3_utils
+FileProvides: /usr/bin/tput ncurses-utils
+FileProvides: /usr/bin/xmllint libxml2-tools
+FileProvides: /usr/bin/Xvfb xorg-x11-server
+FileProvides: /usr/sbin/groupadd shadow
+FileProvides: /usr/sbin/lockdev lockdev
+FileProvides: /usr/sbin/useradd shadow
+FileProvides: /usr/sbin/usermod shadow
+FileProvides: /usr/bin/msgfmt gettext-runtime
+FileProvides: /usr/bin/python3 python3-base
+FileProvides: /sbin/mkinitrd dracut
+
+Preinstall: aaa_base attr bash coreutils diffutils
+Preinstall: filesystem fillup glibc grep
+Preinstall: libbz2-1 libgcc_s1 libncurses6 pam
+Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1
+Preinstall: liblzma5 libcap2 libacl1 libattr1
+Preinstall: libpopt0 libelf1 liblua5_3-5
+Preinstall: libpcre1
+
+Runscripts: aaa_base
+
+Prefer: libdb-4_8-devel
+VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1
+VMinstall: kernel-obs-build
+VMinstall: iproute2 libmnl0
+
+Required: rpm-build
+# Build all packages with -pie enabled
+Required: gcc-PIE
+
+# the basic stuff
+Support: pam-modules
+Support: hostname
+Support: perl build-mkbaselibs
+Prefer: build-mkbaselibs
+
+Support: brp-check-suse post-build-checks rpmlint-Factory
+
+### Branding related preferences
+Prefer: awesome:awesome-branding-upstream
+Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE
+Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream
+Prefer: enlightenment-theme-upstream
+Prefer: exo-data:exo-branding-upstream
+Prefer: fcitx:fcitx-branding-openSUSE
+Prefer: gdm:gdm-branding-upstream
+Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse
+Prefer: glib2:glib2-branding-upstream
+Prefer: gnome-panel:gnome-panel-branding-upstream
+Prefer: gnome-session:gconf2-branding-openSUSE
+Prefer: gnome-session:gnome-session-branding-openSUSE
+Prefer: icewm-theme-branding
+Prefer: kde4-kdm:kde4-kdm-branding-upstream
+Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream
+Prefer: kdelibs4-branding:kdelibs4-branding-upstream
+Prefer: kdelibs4:kdelibs4-branding-upstream
+Prefer: kdm:kdm-branding-upstream
+Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream
+Prefer: libexo-1-0:libexo-1-0-branding-upstream
+Prefer: libgarcon-1-0:libgarcon-branding-upstream
+Prefer: libgarcon-data:libgarcon-branding-upstream
+Prefer: libgio-2_0-0:gio-branding-upstream
+Prefer: libglib-2_0-0:glib2-branding-upstream
+Prefer: libpurple-branding-upstream
+Prefer: libreoffice:libreoffice-branding-upstream
+Prefer: libsocialweb:libsocialweb-branding-upstream
+Prefer: libxfce4ui:libxfce4ui-branding-upstream
+Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream
+Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream
+Prefer: NetworkManager-branding-upstream
+Prefer: PackageKit:PackageKit-branding-upstream
+Prefer: plasma5-desktop:plasma5-desktop-branding-upstream
+Prefer: plasma5-workspace:plasma5-workspace-branding-upstream
+Prefer: sddm:sddm-branding-upstream
+Prefer: systemd-presets-branding-SLE
+Prefer: wallpaper-branding-openSUSE
+Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream
+Prefer: xfce4-settings:xfce4-settings-branding-upstream
+Prefer: xfdesktop:xfdesktop-branding-upstream
+Prefer: yast2-branding-openSUSE
+Prefer: yast2-qt:yast2-qt-branding-openSUSE
+Prefer: yast2-theme-openSUSE
+
+# Build cycle handling - prefer -mini packages were possible, break deps as needed
+
+Conflict: krb5-devel:krb5-mini
+Conflict: krb5:krb5-mini-devel
+Prefer: gettext-tools-mini gettext-runtime-mini
+Prefer: ghostscript-mini
+Prefer: krb5-mini-devel:krb5-mini
+Prefer: krb5-mini krb5-mini-devel
+Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo
+Prefer: libunbound-devel-mini
+Prefer: log4j-mini
+Prefer: systemd-mini-devel:systemd-mini
+Prefer: systemd-mini systemd-mini-devel libsystemd0-mini
+Prefer: udev-mini libcom_err2-mini libext2fs2-mini
+Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel
+
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: erlang-rebar-obs:this-is-only-for-build-envs
+Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs
+Ignore: jdk-bootstrap:this-is-only-for-build-envs
+Ignore: libsystemd0-mini:this-is-only-for-build-envs
+Ignore: libudev-mini1:this-is-only-for-build-envs
+Ignore: libunbound-devel-mini:this-is-only-for-build-envs
+Ignore: systemd-mini:this-is-only-for-build-envs
+Ignore: udev-mini:this-is-only-for-build-envs
+Ignore: curl-mini:this-is-only-for-build-envs
+Ignore: libcurl-mini-devel:this-is-only-for-build-envs
+Ignore: libcurl4-mini:this-is-only-for-build-envs
+
+# Ring0 packages should not pull in 'info' - making the base VM smaller
+Ignore: binutils:info
+Ignore: bison:info
+Ignore: coreutils:info
+Ignore: cpio:info
+Ignore: diffutils:info
+Ignore: findutils:info
+Ignore: flex:info
+Ignore: gawk:info
+Ignore: gettext-runtime:info
+Ignore: gettext-tools:info
+Ignore: grep:info
+Ignore: groff:info
+Ignore: gzip:info
+Ignore: help2man:info
+Ignore: libgcrypt-devel:info
+Ignore: m4:info
+Ignore: make:info
+Ignore: sed:info
+Ignore: tar:info
+Ignore: util-linux:info
+Ignore: which:info
+
+# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system
+Ignore: Mesa:Mesa-dri
+Ignore: Mesa:Mesa-gallium
+
+# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems
+Conflict: python3-kiwi:curl-mini
+Conflict: python3-kiwi:libudev-mini1
+Conflict: python3-kiwi:systemd-mini
+Conflict: python3-kiwi:krb5-mini
+Conflict: python3-kiwi:gettext-tools-mini
+
+# udev: -full and -mini packages don't mingle well
+Prefer: libudev1:udev
+Conflict: libudev1:udev-mini
+Conflict: udev:libudev-mini1
+
+# systemd: -full and -mini packages don't mingle well
+Conflict: systemd:libsystemd0-mini
+Conflict: systemd-mini-devel:systemd
+
+# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl
+Prefer: cmake:libcurl4-mini
+Prefer: curl libcurl-devel libcurl4
+
+Prefer: -openSUSE-build-key
+# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs)
+Prefer: postfix
+# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal)
+
+# prefer the PHP5 variants over PHP7
+Prefer: php5-ctype
+Prefer: php5-devel
+Prefer: php5-dom
+Prefer: php5-ftp
+Prefer: php5-gd
+Prefer: php5-gettext
+Prefer: php5-mbstring
+Prefer: php5-pear
+Prefer: php5-pear-Archive_Tar
+Prefer: php5-pear-Horde
+Prefer: php5 php5-json
+Prefer: php5-tokenizer
+Prefer: php5-zip
+
+# go exists in mutliple versions by now - we prefer the 'unversioned package'
+Prefer: go
+
+# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one'
+Prefer: python2-pep8 python3-pep8
+
+# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl
+Prefer: perl
+
+# Assist migration to python-pycups (python3-cups is going to be removed)
+Prefer: python3-pycups python-pycups
+
+# Apache requires a MPM - we pick prefork
+Prefer: apache2:apache2-prefork
+
+# for symbol syslog (syslogd is best as it has the least dependencies)
+Prefer: syslogd
+
+# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt
+Prefer: star-rmt
+
+# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon;
+Prefer: notification-daemon
+
+# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW)
+Prefer: dummy-release
+
+# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version
+Prefer: -nodejs4
+
+# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original'
+Prefer: libpulse0-32bit
+
+# do not used openmpi variant to build against netcdf
+Prefer: netcdf-devel
+
+# Below list still needs to be reviewed
+
+Prefer: xorg-x11-Xvnc:icewm
+Prefer: cracklib-dict-small
+Prefer: libstdc++6 libgcc_s1 libquadmath0
+Prefer: libstdc++6-32bit libstdc++6-64bit
+Prefer: libstdc++6-x86
+Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit
+%ifarch s390x
+Prefer: -libstdc++41
+%endif
+Prefer: syslog-service
+Prefer: poppler-tools
+Prefer: libjpeg8-devel libjpeg-turbo
+Prefer: microcode_ctl:kernel-default
+Prefer: gnu-jaf yast2-control-center-qt
+Prefer: vim-normal myspell-american wine
+Prefer: amarok:amarok-xine
+Prefer: kdenetwork3-vnc:tightvnc
+Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api
+Prefer: -dbus-1-nox11
+Prefer: -servletapi3 -servletapi4 -servletapi5
+Prefer: icewm-lite
+Prefer: yast2-ncurses-pkg
+Prefer: monodevelop: mono-addins
+Prefer: texlive-xmltex texlive-tools texlive-jadetex
+Prefer: libesd-devel:esound
+Prefer: libesd0:esound-daemon
+Prefer: package-lists-openSUSE-KDE-cd: esound-daemon
+Prefer: librest-0_7-0
+
+Prefer: rhino:xmlbeans-mini
+Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail
+Prefer: mx4j:log4j-mini
+
+Prefer: rpcbind eclipse-source
+Prefer: libcdio_cdda0 libcdio_paranoia0
+Prefer: boo tog-pegasus
+Prefer: sysvinit(network) wicked-service
+Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd
+Prefer: kdebase4-openSUSE:kdebase4-workspace
+Prefer: ant:xerces-j2
+Prefer: dhcp-client:dhcp
+Prefer: libGLw1
+# provides typelib(St)
+Prefer: -cinnamon
+Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es
+Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el
+Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl
+Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da
+Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb
+Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar
+Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr
+Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el
+Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs
+Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu
+Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv
+Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar
+Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr
+Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el
+Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs
+Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu
+Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv
+Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar
+Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr
+Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el
+Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru
+Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da
+Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv
+Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar
+Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++
+Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g
+Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links
+Prefer: -python-setuptools
+Prefer: -kdenetwork3-InstantMessenger
+Prefer: -icc-profiles
+Prefer: vala
+# in doubt, take xerces
+Prefer: -crimson
+# in doubt, take higher versions
+Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4
+Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3
+Prefer: -rubygem-json_pure-1_5
+Prefer: geronimo-servlet-2_4-api
+Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi
+# python-scimpy: have choice for fftw-devel: fftw3-devel fftw3_3_3_6-gnu-hpc-devel fftw3_3_...
+Prefer: fftw3-devel
+# prefer the small systemd for building
+Prefer: star
+Prefer: xmlgraphics-commons:apache-commons-io
+# the -32bit stuff provides things it shouldn't (hopefully temporary)
+Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit
+Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit
+Prefer: postgresql postgresql-server postgresql-devel
+Prefer: -unzip-rcc
+Prefer: -primus -primus-32bit
+Prefer: -staging-build-key
+Prefer: -sssd-wbclient
+Prefer: -clutter-gst-devel
+Prefer: -opencv-qt5-devel
+# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg
+Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel
+Prefer: -ffmpeg2-devel -python-configparser2
+# as long as kactivities4 exists and is provided
+Prefer: kactivities5
+# oxygen5-icon-theme osboletes oxygen-icon-theme
+Prefer: oxygen5-icon-theme
+Prefer: npm6
+
+# kernel bug (coolo)
+Prefer: kernel-default-devel
+
+# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel
+# Prefer: libmariadb-devel
+Prefer: libmysqlclient-devel
+
+Prefer: wxWidgets-3_0-devel
+Prefer: libopenssl-devel
+
+Prefer: -NX -xaw3dd -db43
+Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis
+Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit
+Prefer: libffi-devel
+Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0
+Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit
+Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit
+Prefer: libgcc_s1-x86 libgcj_bc1
+Prefer: libgomp1 libgomp1-32bit libgomp1-64bit
+Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit
+Prefer: libobjc4 libgfortran3 libquadmath0
+Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini
+Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel
+Prefer: -seamonkey
+Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2
+Prefer: libopenal0-soft openal-soft -lsb-buildenv
+Prefer: -libevent
+Prefer: gnu-crypto libusb-compat-devel
+Prefer: libusb-0_1-4
+Prefer: libreoffice:xerces-j2
+Prefer: k3b:libdvdread4
+Prefer: glibc-devel
+Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4
+Prefer: NetworkManager:dhcp-client
+Prefer: kdebase3-SuSE:kdebase3
+Prefer: pcre-tools
+Prefer: libpopt0 makeinfo
+Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2
+Prefer: libgnome-keyring-devel
+Prefer: gnome-keyring-32bit
+Prefer: linux-glibc-devel
+Prefer: squid sysvinit
+Prefer: libpng16-compat-devel
+Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0
+Prefer: python3-docutils
+Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client
+#needed because new xml-commons package
+Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis
+Prefer: xmlgraphics-fop:xerces-j2
+Prefer: cogl-devel
+Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage
+Prefer: libpsm2-compat
+# choice p11-kit-nss-trust
+Prefer: mozilla-nss-certs
+# amarok dependency resolution
+Prefer: phonon-backend-gstreamer
+# replacing mkinitrd
+Prefer: dracut
+# replacing module-init-tools
+Prefer: kmod-compat
+# Temporary
+Prefer: oxygen5-cursors
+# Temporary
+Prefer: -perl-App-cpanminus
+# libmediaart is prepared for a larger update; for now favor mediaart-1.0
+Prefer: -typelib-1_0-MediaArt-2_0
+Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0
+Prefer: -python-atspi
+Prefer: gettext-its-gtk3 gtk3-schema
+# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory
+Prefer: ghostscript-devel
+# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it
+Prefer: libotf-devel
+
+Ignore: installation-images-openSUSE:cracklib-dict-full
+Ignore: systemd-sysvinit:systemd
+Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome
+Ignore: cracklib:cracklib-dict
+Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev
+Ignore: sysvinit:mingetty
+Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel
+Ignore: libgcj43,libstdc++43-devel
+Ignore: libgcj44,libstdc++44-devel
+Ignore: libgcj45,libstdc++45-devel
+Ignore: libgcj46,libstdc++46-devel
+Ignore: libgcj47,libstdc++47-devel
+Ignore: librtas:util-linux
+Ignore: pwdutils:openslp
+Ignore: rpm:suse-build-key,build-key
+Ignore: cloud-init:cloud-init-config
+# python-pyudev requires libudev1 in normal situations
+Ignore: python-pyudev:libudev1
+Ignore: python-SPARQLWrapper:python-rdflib
+Ignore: python3-SPARQLWrapper:python3-rdflib
+Ignore: bind-utils:bind-libs
+Ignore: portmap:syslogd
+Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng
+Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video
+Ignore: apache2:logrotate
+Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis
+Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper
+Ignore: kdelibs3-devel:libvorbis-devel
+Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb
+Ignore: kdebase3-SuSE:release-notes
+Ignore: jack:alsa,libsndfile
+Ignore: libxml2-devel:readline-devel
+Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration
+Ignore: libgda:file_alteration
+Ignore: gnutls:lzo,libopencdk
+Ignore: gnutls-devel:lzo-devel,libopencdk-devel
+Ignore: pango:cairo,glitz,libpixman,libpng
+Ignore: pango-devel:cairo-devel
+Ignore: cairo-devel:libpixman-devel
+Ignore: libgnomeprint:libgnomecups
+Ignore: libgnomeprintui:libgnomecups
+Ignore: orbit2-devel:indent
+Ignore: qt3:libmng
+Ignore: qt-sql:qt_database_plugin
+Ignore: libgnomecanvas-devel:glib-devel
+Ignore: libgnomeui:gnome-icon-theme,shared-mime-info
+Ignore: scrollkeeper:docbook_4
+Ignore: gnome-desktop:libgnomesu,startup-notification
+Ignore: python-devel:python-tk
+Ignore: libgtk-3-0:adwaita-icon-theme
+Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg
+Ignore: samba-libs:krb5
+Ignore: libbonoboui:gnome-desktop
+Ignore: libxfce4ui-1-0:exo-tools
+Ignore: docbook_4:iso_ent,xmlcharent
+Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification
+Ignore: docbook-xsl-stylesheets:xmlcharent
+Ignore: liby2util-devel:libstdc++-devel,openssl-devel
+Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2
+Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils
+Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel
+Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel
+Ignore: yast2-devtools:libxslt
+Ignore: yast2-iscsi-lio-server:lio-utils
+Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation
+Ignore: yast2-bootloader:bootloader-theme
+Ignore: yast2-packager:yast2-x11,libyui_pkg
+Ignore: autoyast2:yast2-schema
+# not during build
+Ignore: yui_backend
+Ignore: yast2-x11:sax2-libsax-perl
+Ignore: yast2-network:yast2-inetd
+Ignore: openslp-devel:openssl-devel
+Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed
+Ignore: texlive-bin:ghostscript-x11
+Ignore: texlive-bin-omega:ghostscript-x11
+Ignore: yast2-country:yast2-trans-stats
+Ignore: tpb:tpctl-kmp
+Ignore: tpctl:tpctl-kmp
+Ignore: zaptel:zaptel-kmp
+Ignore: mkinitrd:pciutils
+Ignore: pciutils:pciutils-ids
+Ignore: postfix:iproute2
+Ignore: aaa_base:systemd
+Ignore: gpm:systemd
+Ignore: openssh:systemd
+Ignore: cronie:systemd
+Ignore: systemd:kbd
+Ignore: systemd:kmod
+Ignore: systemd:systemd-presets-branding
+Ignore: systemd:dbus-1
+Ignore: systemd:pam-config
+Ignore: systemd:udev
+Ignore: pesign:systemd
+Ignore: logrotate:cron
+Ignore: texlive-filesystem:cron
+Ignore: xinit:xterm
+Ignore: xdm:xterm
+Ignore: gnome-control-center:gnome-themes-accessibility
+
+
+Ignore: man:groff-full
+Ignore: git-core:rsync
+Ignore: apache2:systemd
+Ignore: icewm-lite:icewm
+Ignore: cluster-glue:sudo
+Ignore: libgcc:glibc-32bit
+Ignore: libgcc41:glibc-32bit
+Ignore: libgcc42:glibc-32bit
+Ignore: libgcc43:glibc-32bit
+Ignore: libgcc44:glibc-32bit
+Ignore: libgcc45:glibc-32bit
+Ignore: libgcc46:glibc-32bit
+Ignore: libgcc47:glibc-32bit
+Ignore: libstdc++:glibc-32bit
+Ignore: libstdc41++:glibc-32bit
+Ignore: libstdc42++:glibc-32bit
+Ignore: libstdc43++:glibc-32bit
+Ignore: libstdc44++:glibc-32bit
+Ignore: libstdc45++:glibc-32bit
+Ignore: libstdc46++:glibc-32bit
+Ignore: libstdc47++:glibc-32bit
+Ignore: ncurses-32bit
+
+Ignore: susehelp:susehelp_lang,suse_help_viewer
+Ignore: mailx:smtp_daemon
+Ignore: cron:smtp_daemon
+Ignore: hotplug:syslog
+Ignore: pcmcia:syslog
+Ignore: openct:syslog
+Ignore: postfix:sysvinit(syslog)
+Ignore: cups:sysvinit(syslog)
+Ignore: jython:servlet
+Ignore: ispell:ispell_dictionary,ispell_english_dictionary
+Ignore: aspell:aspel_dictionary,aspell_dictionary
+Ignore: smartlink-softmodem:kernel,kernel-nongpl
+Ignore: libreoffice-de:myspell-german-dictionary
+Ignore: libreoffice:libreoffice-i18n
+Ignore: libreoffice:libreoffice-icon-themes
+Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any
+Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl
+Ignore: perl-Log-Log4perl:rrdtool
+
+Ignore: simias:mono(log4net)
+Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php
+
+Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver
+Ignore: xdg-menu:desktop-data
+Ignore: nessus-libraries:nessus-core
+Ignore: evolution:yelp
+Ignore: e17:e17-branding e17:e17-theme
+
+Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp)
+Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp)
+
+Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4)
+Ignore: libcdio:libcddb.so.2
+
+Ignore: coreutils:coreutils-lang
+Ignore: cpio:cpio-lang
+Ignore: glib2:glib2-lang
+Ignore: gtk2:gtk2-lang
+Ignore: gtk:gtk-lang
+Ignore: atk:atk-lang
+Ignore: MozillaThunderbird:pinentry-dialog
+Ignore: seamonkey:pinentry-dialog
+Ignore: pinentry:pinentry-dialog
+Ignore: gpg2:gpg2-lang
+Ignore: util-linux:util-linux-lang
+Ignore: suseRegister:distribution-release
+Ignore: compiz:compiz-decorator
+Ignore: icecream:gcc-c++
+Ignore: no
+Ignore: package
+Ignore: provides
+Ignore: j9vm/libjvm.so()(64bit)
+Ignore: kdepim3:suse_help_viewer
+Ignore: kdebase3-SuSE:kdebase3-SuSE-branding
+Ignore: kio_sysinfo:kdebase3-SuSE-branding
+Ignore: gnome-menus:gnome-menus-branding
+Ignore: epiphany:epiphany-branding
+Ignore: gnome-control-center:gnome-control-center-branding
+Ignore: phonon:phonon-backend
+Ignore: openwbem-devel
+Ignore: MozillaFirefox:MozillaFirefox-branding
+Ignore: yast2:yast2-branding
+Ignore: plymouth:plymouth-branding
+Ignore: plymouth:suspend
+Ignore: yast2-qt:yast2-branding
+Ignore: yast2-theme-SLE:yast2-branding
+Ignore: yast2-registration:yast2-registration-branding
+Ignore: compiz:compiz-branding
+Ignore: texlive:perl-Tk texlive-bin:perl-Tk
+Ignore: xfce4-desktop:xfce4-desktop-branding
+Ignore: xfce4-panel:xfce4-panel-branding
+Ignore: xfce4-session:xfce4-session-branding
+Ignore: kdebase4-runtime:kdebase4-runtime-branding
+Ignore: kwin:kdebase4-workspace-branding
+Ignore: transmission-common:transmission-ui
+Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd
+Ignore: mkinitrd:sbin_init samba-client:cifs-utils
+Ignore: opensc:pinentry
+Ignore: gpg2:pinentry
+Ignore: NetworkManager:dhcp
+Ignore: NetworkManager:iproute2
+# sysconfig requires it at runtime, not buildtime
+Ignore: sysconfig:dbus-1
+Ignore: sysconfig:procps
+Ignore: sysconfig:iproute2
+Ignore: sysconfig-network:iproute2
+Ignore: sysconfig:tunctl
+Ignore: sysconfig:sysvinit(network)
+# no build dependencies
+Ignore: libksuseinstall1:yast2-packager
+Ignore: libksuseinstall1:zypper
+Ignore: syslog-service:logrotate
+Ignore: libglue-devel:cluster-glue
+Ignore: libqca2:gpg2
+Ignore: NetworkManager:wpa_supplicant
+Ignore: NetworkManager:dhcp-client
+Ignore: openSUSE-release:product_flavor(openSUSE)
+Ignore: libgio-2_0-0:dbus-1-x11
+Ignore: weather-wallpaper:inkscape
+Ignore: libgamin-1-0:gamin-server
+Ignore: libfam0-gamin:gamin-server
+Ignore: python3:python3-pip
+Ignore: avahi:sysvinit(network)
+Ignore: cluster-glue:sysvinit(network)
+Ignore: dracut:systemd-sysvinit
+# actually a workaround for installation-images requiring
+# gettext-runtime-mini and getting conflict because systat
+# requires gettext (which is only provided by !-mini)
+Ignore: saptune:sysstat
+
+Macros:
+# RUBY - UNVERSIONED STUFF
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in the
+# prjconf aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}}
+%rubygemsSTOP() %nil
+%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*}
+%rubygemsxxSTOP(a:) %{-a*}) %*
+
+%rubySTOP() %nil
+%rubyxSTOP() %*
+
+%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}}
+
+%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}}
+
+%rubydevelSTOP() %nil
+%rubydevelxSTOP() %*
+#
+
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in
+# ruby2.5 aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}}
+%rubygemsxruby25() %{expand:%%{rubygemsx%*}}
+
+%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}}
+%rubyxruby25() %{expand:%%{rubyx%*}}
+
+%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}}
+%rubydevelxruby25() %{expand:%%{rubydevelx%*}}
+
+
+### Things to define default ruby stuff for the distro
+%rb_default_ruby ruby25
+%rb_default_ruby_suffix ruby2.5
+%rb_default_ruby_abi ruby:2.5.0
+:Macros
+
+Macros:
+%rb_build_ruby_abis ruby:2.5.0
+%rb_build_versions ruby25
+
+%_with_ruby25 1
+:Macros
+
+%define rb_default_ruby ruby25
+%define rb_default_ruby_suffix ruby2.5
+%define rb_default_ruby_abi ruby:2.5.0
+
+%define rb_build_ruby_abis ruby:2.5.0
+%define rb_build_versions ruby25
+
+%define _with_ruby25 1
+
+Prefer: -ruby-stdlib
+Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm
+Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus
+Prefer: %{rb_default_ruby_suffix}-rubygem-yard
+Prefer: %{rb_default_ruby_suffix}-rubygem-rspec
+Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake
+Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah
+Prefer: %{rb_default_ruby_suffix}-rubygem-inifile
+Prefer: %{rb_default_ruby_suffix}-rubygem-bundler
+Prefer: %{rb_default_ruby_suffix}-rubygem-sass
+Prefer: %{rb_default_ruby_suffix}-rubygem-cfa
+Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types
+
+# END RUBY STUFF
+
+# PYTHON STUFF
+
+Macros:
+%pythons %{?!skip_python2:python2} %{?!skip_python3:python3}
+
+# This method for generating python_modules gets too deep to expand at about 5 python flavors.
+# It is replaced by a Lua macro in macros.lua
+# However, OBS has a much higher expansion depth, so this works fine.
+%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}}
+%python_module_iter_STOP stop
+%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}}
+
+%add_python() %{expand:%%define pythons %pythons %1}
+:Macros
+
+# END PYTHON STUFF
+
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+# Prefer java 8 if java 9 was no option
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+# And then fall back to jaba 7 if needed
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+Substitute: java2-devel-packages java-devel
+
+%ifarch x86_64 ppc64 s390x sparc64
+Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit
+%else
+ %ifarch ppc sparc sparcv9
+Substitute: glibc-devel-32bit glibc-devel-64bit
+ %else
+Substitute: glibc-devel-32bit
+ %endif
+%endif
+
+%ifarch %ix86
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen
+%endif
+%ifarch ia64
+Substitute: kernel-binary-packages kernel-default kernel-debug
+%endif
+%ifarch x86_64
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen
+%endif
+%ifarch ppc
+Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3
+%endif
+%ifarch ppc64
+Substitute: kernel-binary-packages kernel-default kernel-ppc64
+%endif
+%ifarch s390
+Substitute: kernel-binary-packages kernel-s390
+%endif
+%ifarch s390x
+Substitute: kernel-binary-packages kernel-default
+%endif
+
+Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches
+# no longer needed according to Richard Biener
+# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector
+Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390x -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches
+# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops)
+Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+
+%ifarch sparcv9
+Target: sparcv9
+%endif
+%ifarch armv6l armv6hl
+Target: armv6hl-suse-linux
+%endif
+%ifarch armv7l armv7hl
+Target: armv7hl-suse-linux
+%endif
+
+Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection
+
+%define suse_version 1500
+%define sle_version 150000
+
+Macros:
+%suse_version 1500
+%sle_version 150000
+
+%insserv_prereq insserv sed
+%fillup_prereq fillup coreutils grep diffutils
+%suseconfig_fonts_prereq perl aaa_base
+%install_info_prereq info
+%kernel_module_package_buildreq kmod-compat kernel-syms
+%kernel_module_package_buildreqs kmod-compat kernel-syms
+
+%sles_version 0
+%do_profiling 1
+%_vendor suse
+
+# Reproducible builds
+%source_date_epoch_from_changelog Y
+
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 7
+# The following shlibs have latest versions built from GCC 6 sources
+%product_libs_gcc_ver_libasan3 6
+%product_libs_gcc_ver_libgo9 6
+%product_libs_gcc_ver_libgfortran3 6
+# reminded by richi 2017 4/3
+%product_libs_gcc_ver_libgcj_bc1 6
+# The following shlibs have been introduced with GCC 7
+%product_libs_gcc_ver_libmpxwrappers2 7
+%product_libs_gcc_ver_libmpx2 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libgfortran4 7
+%gcc_version 7
+
+%ext_info .gz
+%ext_man .gz
+
+%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+
+%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+:Macros
+
+# BEGIN RUST STUFF
+
+# Define the architectures in which Rust (and Rust crates) are available
+# NOTE: Keep this in sync with rust-srpm-macros!
+%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x
+
+Macros:
+%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x
+:Macros
+
+# END RUST STUFF
+
+Prefer: systemd-presets-branding-SLE
+
+# the old python-msgpack-python should be dropped, but salt
+# is still requires the old name
+Prefer: python3-msgpack
+
+%ifarch s390
+Ignore: python2-numpy-devel:openblas-devel
+Ignore: python3-numpy-devel:openblas-devel
+%endif
+
+Prefer: -openssl-1_0_0
+
+Buildflags: useccache:ceph
+
+Support: python-rpm-macros
+
+Prefer: ImageMagick-config-7-upstream
+
+Prefer: chrony-pool-suse
+
+Prefer: pciutils-ids
+
+Prefer: -libcurl4-mini
+Prefer: cmake3-full
+
+Macros:
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 11
+# The following shlibs have the latest version built from GCC 7 sources
+%product_libs_gcc_ver_libgfortran4 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libubsan0 7
+%product_libs_gcc_ver_libcilkrts5 7
+%product_libs_gcc_ver_libgo11 7
+# The following shlibs have the latest version built from GCC 8
+%product_libs_gcc_ver_libmpx2 8
+%product_libs_gcc_ver_libmpxwrappers2 8
+%product_libs_gcc_ver_libgo13 8
+# The following shlibs have the latest version built from GCC 9 sources
+%product_libs_gcc_ver_libasan5 9
+%product_libs_gcc_ver_libgo14 9
+# The following shlibs have the latest version built from GCC 10 sources
+%product_libs_gcc_ver_libgphobos1 10
+%product_libs_gcc_ver_libgdruntime1 10
+%product_libs_gcc_ver_libgo16 10
+
+:Macros
+
+# After the build 20200723 update .pc files are also in 32bit packages causing have-choice
+Prefer: -alsa-devel-32bit
+Prefer: -atk-devel-32bit
+Prefer: -atkmm1_6-devel-32bit
+Prefer: -at-spi2-core-devel-32bit
+Prefer: -at-spi-devel-32bit
+Prefer: -audit-devel-32bit
+Prefer: -augeas-devel-32bit
+Prefer: -bluez-devel-32bit
+Prefer: -cairo-devel-32bit
+Prefer: -cairomm1_0-devel-32bit
+Prefer: -cairomm-devel-32bit
+Prefer: -cppunit-devel-32bit
+Prefer: -cyrus-sasl-devel-32bit
+Prefer: -dbus-1-devel-32bit
+Prefer: -dbus-1-glib-devel-32bit
+Prefer: -device-mapper-devel-32bit
+Prefer: -dirac-devel-32bit
+Prefer: -flac-devel-32bit
+Prefer: -fontconfig-devel-32bit
+Prefer: -freetype2-devel-32bit
+Prefer: -gdk-pixbuf-devel-32bit
+Prefer: -glu-devel-32bit
+Prefer: -gstreamer-devel-32bit
+Prefer: -gstreamer-plugins-base-devel-32bit
+Prefer: -gtk2-devel-32bit
+Prefer: -gtk3-devel-32bit
+Prefer: -hunspell-devel-32bit
+Prefer: -ImageMagick-devel-32bit
+Prefer: -libart_lgpl-devel-32bit
+Prefer: -libavc1394-devel-32bit
+Prefer: -libbasicobjects-devel-32bit
+Prefer: -libblkid-devel-32bit
+Prefer: -libbz2-devel-32bit
+Prefer: -libcelt-devel-32bit
+Prefer: -libcollection-devel-32bit
+Prefer: -libcom_err-devel-32bit
+Prefer: -libcurl-devel-32bit
+Prefer: -libdhash-devel-32bit
+Prefer: -libdmx-devel-32bit
+Prefer: -libdrm-devel-32bit
+Prefer: -libelf-devel-32bit
+Prefer: -libexif-devel-32bit
+Prefer: -libexpat-devel-32bit
+Prefer: -libext2fs-devel-32bit
+Prefer: -libfontenc-devel-32bit
+Prefer: -libgbm-devel-32bit
+Prefer: -libgck-devel-32bit
+Prefer: -libgcr-devel-32bit
+Prefer: -libglvnd-devel-32bit
+Prefer: -libgnutls-devel-32bit
+Prefer: -libgphoto2-devel-32bit
+Prefer: -libHX-devel-32bit
+Prefer: -libICE-devel-32bit
+Prefer: -libicu-devel-32bit
+Prefer: -libini_config-devel-32bit
+Prefer: -libjack-devel-32bit
+Prefer: -libkms-devel-32bit
+Prefer: -liblbxutil-devel-32bit
+Prefer: -liblcms2-devel-32bit
+Prefer: -libMagick++-devel-32bit
+Prefer: -libmount-devel-32bit
+Prefer: -libnettle-devel-32bit
+Prefer: -libnl3-devel-32bit
+Prefer: -libnotify-devel-32bit
+Prefer: -libpackagekit-glib2-devel-32bit
+Prefer: -libpulse-devel-32bit
+Prefer: -libQt5Concurrent-devel-32bit
+Prefer: -libQt5Core-devel-32bit
+Prefer: -libQt5DBus-devel-32bit
+Prefer: -libQt5Gui-devel-32bit
+Prefer: -libQt5Network-devel-32bit
+Prefer: -libQt5OpenGL-devel-32bit
+Prefer: -libQt5PrintSupport-devel-32bit
+Prefer: -libqt5-qtconnectivity-devel-32bit
+Prefer: -libqt5-qtdeclarative-devel-32bit
+Prefer: -libqt5-qtlocation-devel-32bit
+Prefer: -libqt5-qtmultimedia-devel-32bit
+Prefer: -libqt5-qtserialport-devel-32bit
+Prefer: -libqt5-qtsvg-devel-32bit
+Prefer: -libqt5-qttools-devel-32bit
+Prefer: -libqt5-qtwayland-devel-32bit
+Prefer: -libqt5-qtwebchannel-devel-32bit
+Prefer: -libqt5-qtwebsockets-devel-32bit
+Prefer: -libqt5-qtx11extras-devel-32bit
+Prefer: -libqt5-qtxmlpatterns-devel-32bit
+Prefer: -libQt5Sql-devel-32bit
+Prefer: -libQt5Test-devel-32bit
+Prefer: -libQt5Widgets-devel-32bit
+Prefer: -libQt5Xml-devel-32bit
+Prefer: -libraw1394-devel-32bit
+Prefer: -libref_array-devel-32bit
+Prefer: -libSDL2-devel-32bit
+Prefer: -libSDL-devel-32bit
+Prefer: -libSDL_gfx-devel-32bit
+Prefer: -libSM-devel-32bit
+Prefer: -libsoup-devel-32bit
+Prefer: -libtasn1-devel-32bit
+Prefer: -libtiff-devel-32bit
+Prefer: -libusb-1_0-devel-32bit
+Prefer: -libuuid-devel-32bit
+Prefer: -libv4l-devel-32bit
+Prefer: -libva-devel-32bit
+Prefer: -libvdpau-devel-32bit
+Prefer: -libverto-devel-32bit
+Prefer: -libvirt-devel-32bit
+Prefer: -libvorbis-devel-32bit
+Prefer: -libwayland-egl-devel-32bit
+Prefer: -libwebp-devel-32bit
+Prefer: -libX11-devel-32bit
+Prefer: -libXau-devel-32bit
+Prefer: -libXaw3d-devel-32bit
+Prefer: -libXaw-devel-32bit
+Prefer: -libxcb-devel-32bit
+Prefer: -libXcomposite-devel-32bit
+Prefer: -libXcursor-devel-32bit
+Prefer: -libXdamage-devel-32bit
+Prefer: -libXdmcp-devel-32bit
+Prefer: -libXext-devel-32bit
+Prefer: -libXfixes-devel-32bit
+Prefer: -libXfont2-devel-32bit
+Prefer: -libXfontcache-devel-32bit
+Prefer: -libXfont-devel-32bit
+Prefer: -libXft-devel-32bit
+Prefer: -libXi-devel-32bit
+Prefer: -libXinerama-devel-32bit
+Prefer: -libxkbcommon-devel-32bit
+Prefer: -libxkbcommon-x11-devel-32bit
+Prefer: -libxkbfile-devel-32bit
+Prefer: -libxml2-devel-32bit
+Prefer: -libXmu-devel-32bit
+Prefer: -libXp-devel-32bit
+Prefer: -libXpm-devel-32bit
+Prefer: -libXprintUtil-devel-32bit
+Prefer: -libXrandr-devel-32bit
+Prefer: -libXrender-devel-32bit
+Prefer: -libXres-devel-32bit
+Prefer: -libxslt-devel-32bit
+Prefer: -libXss-devel-32bit
+Prefer: -libXt-devel-32bit
+Prefer: -libXtst-devel-32bit
+Prefer: -libXv-devel-32bit
+Prefer: -libXvMC-devel-32bit
+Prefer: -libXxf86dga-devel-32bit
+Prefer: -libXxf86misc-devel-32bit
+Prefer: -libXxf86vm-devel-32bit
+Prefer: -Mesa-libEGL-devel-32bit
+Prefer: -Mesa-libGL-devel-32bit
+Prefer: -Mesa-libGLESv1_CM-devel-32bit
+Prefer: -Mesa-libGLESv2_CM-devel-32bit
+Prefer: -Mesa-libGLESv2-devel-32bit
+Prefer: -mpg123-devel-32bit
+Prefer: -ncurses-devel-32bit
+Prefer: -NetworkManager-devel-32bit
+Prefer: -openal-soft-devel-32bit
+Prefer: -openjpeg-devel-32bit
+Prefer: -pango-devel-32bit
+Prefer: -pciutils-devel-32bit
+Prefer: -sane-backends-devel-32bit
+Prefer: -tslib-devel-32bit
+Prefer: -typelib-1_0-Gst-1_0-32bit
+Prefer: -wayland-devel-32bit
+Prefer: -xcb-util-devel-32bit
+Prefer: -xcb-util-image-devel-32bit
+Prefer: -xcb-util-keysyms-devel-32bit
+Prefer: -xcb-util-renderutil-devel-32bit
+Prefer: -xcb-util-wm-devel-32bit
+Prefer: -xz-devel-32bit
+Prefer: -zlib-devel-32bit
+Prefer: -zvbi-devel-32bit
+
+Prefer: libboost_thread1_66_0
+Prefer: libboost_system1_66_0
+Prefer: libboost_regex1_66_0
+Prefer: libboost_filesystem1_66_0
+Prefer: libboost_iostreams1_66_0
+Prefer: libboost_date_time1_66_0
+
+Prefer: -libsmartcols-devel-32bit
+Prefer: -krb5-devel-32bit
+Prefer: -lzo-devel-32bit
+Prefer: -liboping-devel-32bit
+Prefer: -unixODBC-devel-32bit
+Prefer: -libcmocka-devel-32bit
+
+# ro added 20220207 requested by dmueller
+Prefer: -samba-devel-32bit
+Prefer: -libqt5-qtscript-devel-32bit
+
+FileProvides: /usr/bin/host bind-utils
+
+Substitute: system-packages:podman kmod kernel-default podman buildah createrepo_c
+
+Prefer: libyui-ncurses9
+Prefer: libyui-ncurses-pkg9 libyui-qt9 libyui-qt-graph9 libyui-qt-pkg9
+Prefer: samba-libs-python3
+Ignore: !pciutils:pciutils-ids
+Prefer: kernel-default
+Ignore: multipath-tools:kmod(dm-multipath),kmod(dm-multipath),kmod(scsi_dh_emc),kmod(scsi_dh_rdac),kmod(scsi_dh_alua)
+Prefer: python2-configparser
+Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !gio-branding-upstream
+
+######### JAVA
+# FATE#326347
+# First we need to de-prefer the java versions prefered in the SLE-15:GA prj Config:
+Prefer: -java-10-openjdk -java-10-openjdk-devel -java-10-openjdk-javadoc -java-10-openjdk-headless
+Prefer: -java-1_8_0-openjdk -java-1_8_0-openjdk-devel -java-1_8_0-openjdk-javadoc -java-1_8_0-openjdk-headless
+Prefer: -java-1_7_0-openjdk -java-1_7_0-openjdk-devel -java-1_7_0-openjdk-javadoc -java-1_7_0-openjdk-headless
+
+# Now we set the prefered Java version, but need fallbacks for some packages:
+Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless
+
+# It might be better to 'de-prefer' the "old" ones, and omit the line above
+# according to Adrian. This needs some testing.
+# Unfortuantely this will bite us when packages require an old java
+
+# 8 before 10 on advice of fstrba
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+# don't use that - fstrba
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+# 15:GA has Prefer:go which will set the default to th eunverisoned go.
+# some packages stumble over "have choice for go >= 1.11: go1.11 go1.12", this will prevent this.
+# go1.12 is taken from 15:Update
+Prefer: go1.12
+
+
+# avoid the SP0 slurm 18.8 variants in SP1
+Prefer: slurm libpmi0 slurm-config slurm-node slurm-plugins
+
+# prefer one of the python-pytests. Marcus 20200512
+Prefer: python-pytest4 python2-pytest4 python3-pytest4
+
+# have conflict ebtween python3-pycrypto and python3-pycryptodome
+Prefer: python3-pycryptodome
+
+# prefer go1.14 (over go1.13). Gustavo 20200514
+# this breaks caasp Marcus 20200515
+#Prefer: go1.14
+
+
+# From Fabian Vogt on 2021023
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+
+# needed for latest Kiwi (sr#238860)
+Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires
+Conflict: python3-kiwi:libsystemd0-mini
+
+Prefer: enchant-2-backend-hunspell
+
+Macros:
+%sle_version 150200
+
+######### gcc9
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 9
+# The following shlibs have the latest version built from GCC 7 sources
+%product_libs_gcc_ver_libgfortran4 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libubsan0 7
+%product_libs_gcc_ver_libcilkrts5 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libobjc4 7
+# The following shlibs have the latest version built from GCC 8
+%product_libs_gcc_ver_libmpx2 8
+%product_libs_gcc_ver_libmpxwrappers2 8
+%product_libs_gcc_ver_libgo13 8
+######### end of gcc9
+
+:Macros
+
+# Prefer over libyui9* from SP1-GA
+Prefer: libyui11
+Prefer: libyui-ncurses11
+# Additional prefers for installation-images
+Prefer: libyui-ncurses-pkg11 libyui-qt11 libyui-qt-graph11 libyui-qt-pkg11
+Substitute: libyui libyui11
+Substitute: libyui-ncurses libyui-ncurses11
+Substitute: libyui-ncurses-pkg libyui-ncurses-pkg11
+Substitute: libyui-qt libyui-qt11
+Substitute: libyui-qt-graph libyui-qt-graph11
+Substitute: libyui-qt-pkg libyui-qt-pkg11
+
+# Help with the switch to the gcc9 provided libs: (bsc#1154695)
+Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5
+
+# Needed after SR#203451 and SR#204957
+Substitute: infiniband-diags-devel rdma-core-devel
+
+# Needed after SR#205137
+Prefer: python3-pycryptodome
+# Needed after GNOME 3.34 rebase
+Prefer: libvala-0_46-devel
+
+# Needed with latest rpm (Use libgcrypt as crypto library for SP2 [jsc#SLE-9552])
+Preinstall: libgcrypt20 libgpg-error0
+
+# Needed for maven (jsc#SLE-8786)
+Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm
+Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel
+Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap
+Prefer: xml-commons-apis xml-commons-resolver
+Prefer: log4j12-mini
+Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap
+Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap
+Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap
+Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap
+Prefer: bsh2
+Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap
+Prefer: apache-commons-net
+Prefer: gradle groovy-lib eclipse-swt gpars
+
+%ifarch %arm ppc riscv64 aarch64
+# required by u-boot (SR#205959) in order to build the full multiboot set plus eventual additional packages:
+Macros:
+%prjconf_multibuild_selection patch
+:Macros
+%endif
+
+# Default to Java 11
+Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-headless java-11-openjdk-javadoc
+%ifarch s390x
+Prefer: java-1_8_0-openj9 java-1_8_0-openj9-devel java-1_8_0-openj9-headless
+%endif
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-headless java-1_8_0-openjdk-javadoc
+Prefer: java-10-openjdk-devel java-10-openjdk java-10-openjdk-devel java-10-openjdk-headless java-10-openjdk-javadoc
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-headless java-9-openjdk-javadoc
+Prefer: java-1_7_0-bootstrap-devel java-1_7_0-bootstrap java-1_7_0-bootstrap-headless
+
+# use rpm by default to build, instead of rpm-ndb
+Prefer: rpm
+
+# Needed with latest rpm (Added zstd support in SLE-15-SP2 [bsc#1162668])
+Preinstall: libzstd1
+
+# needed due to udisk devel package name changeinstallcheck: ignore rpm-ndb slurm-cray slurm-hdf5 slurm-slurmdbd slurm-webdoc setools-gui
+Prefer: libudisks2-0-devel
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: cmake-mini:this-is-only-for-build-envs
+
+# Cmake exists as a -mini flavor, which is not linked against curl.
+Prefer: cmake-mini
+
+# needed due to SR#213548
+Prefer: ocaml-compiler-libs-devel
+
+# required after SR#214781
+Prefer: python2-contextlib2
+
+# Required after SR#215195
+Prefer: chrony-pool-suse
+
+%ifarch i586
+# required after MU#13672 / SR#208944 (slurm_18_08)
+Prefer: slurm libpmi0 slurm-config slurm-plugins slurm-node
+%endif
+
+# required after MU#14605 / SR#215186 (python3-azuremetadata)
+Substitute: azuremetadata python3-azuremetadata
+
+# required after changes form the weekend of April 26
+Prefer: python3-pytest
+Prefer: python2-pytest
+
+# required after CTLG for PackageKit, which introduced dnf
+Prefer: PackageKit-backend-zypp
+
+# required after SR#214474
+Prefer: python2-subprocess32
+
+### from SUSE:SLE-15-SP2:Update
+%define _repository snapshot-SP4
+# define a prefix for all package builds in SLE 15 SP3 to handle migration of packages
+# with identical version but lower release version than in a preceding codestream
+# Marcus Meissner 20220117
+Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT>
+
+# have choice for python2-pycrypto needed by python2-oauth2client: python2-pycrypto python2-pycryptodome 20200916 - gboiko
+Prefer: python2-pycrypto
+
+# avoid have choice for pkgconfig(gnutls): libgnutls-devel libgnutls-devel-32bit
+Prefer: libgnutls-devel
+
+# qt5 prefers (32bit mess)
+Prefer: libQt5Test-devel libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel libQt5PrintSupport-devel libQt5Concurrent-devel
+
+# have choice for pkgconfig(bluez): bluez-devel bluez-devel-32bit (32bit mess)
+Prefer: bluez-devel
+
+# conflict with postgresql13-devel-mini ?
+Prefer: libpq5
+
+Prefer: gdk-pixbuf-devel
+
+# copy grub2-arm64-efi to all archs (bsc#1186565)
+%ifarch aarch64 ppc64le s390x x86_64
+ExportFilter: ^grub2-arm64-efi-.*\.rpm$ . ppc64le s390x x86_64
+%endif
+
+# From Fabian Vogt on 2021023
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips
+
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips
+
+
+# for thunderbird (nodejs >= 10 ... has 3 options)
+
+Prefer: nodejs14
+
+# we now have a cmake-full at the version of cmake3 from SUSE:SLE-15:Update, to avoid it pulling the override by defualt,
+# use this prefer change Marcus 20220201
+Prefer: -cmake3-full
+Prefer: cmake-full
+
+### from SUSE:SLE-15-SP3:GA
+%define _repository standard
+
+Macros:
+
+### from SUSE:SLE-15-SP3:GA
+
+%_repository standard
+:Macros
+# COMMON BEGIN common part
+%define sle_version 150300
+Macros:
+%sle_version 150300
+:Macros
+
+# Prefer later so_version of libyui* over libyui*8 (SP0), libyui*9 (SP1) and libyui*11 (SP2)
+Prefer: -libyui8 -libyui-ncurses8 -libyui-ncurses-pkg8 -libyui-qt8 -libyui-qt-graph8 -libyui-qt-pkg8
+Prefer: -libyui9 -libyui-ncurses9 -libyui-ncurses-pkg9 -libyui-qt9 -libyui-qt-graph9 -libyui-qt-pkg9
+Prefer: -libyui11 -libyui-ncurses11 -libyui-ncurses-pkg11 -libyui-qt11 -libyui-qt-graph11 -libyui-qt-pkg11 -libyui-ncurses-rest-api11 -libyui-qt-rest-api11
+
+# Revert substitutions from SP2
+Substitute: libyui libyui
+Substitute: libyui-ncurses libyui-ncurses
+Substitute: libyui-ncurses-pkg libyui-ncurses-pkg
+Substitute: libyui-qt libyui-qt
+Substitute: libyui-qt-graph libyui-qt-graph
+Substitute: libyui-qt-pkg libyui-qt-pkg
+Substitute: libyui-ncurses-rest-api libyui-ncurses-rest-api
+Substitute: libyui-qt-rest-api libyui-qt-rest-api
+# required after SR#225674 / jsc#SLE-12712
+Prefer: gmmlib-devel
+
+# required after SR#225669
+Preinstall: libcrypt1
+
+# required for latest Mesa
+Prefer: libdrm-devel Mesa-libGL-devel libglvnd-devel libkms-devel Mesa-libEGL-devel libva-devel libdbusmenu-qt5-devel
+
+# required after SR#226419
+Prefer: typelib-1_0-Gst-1_0
+
+# required for latest Mesa
+Prefer: Mesa-libGLESv2-devel Mesa-libGLESv1_CM-devel
+
+# not sure why we need those
+Prefer: libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel
+
+# required after MU#16450 (gnutls)
+Prefer: libgnutls-devel
+
+# required after SR#228340
+Prefer: systemd-sysvinit
+
+# required after SR#227910 (alsa) and SR#228076 (pulseaudio)
+Prefer: alsa-devel libpulse-devel
+
+# required after SR#227917 (kernel-firmware)
+Prefer: kernel-firmware
+
+# required after SR#229310
+Prefer: systemd-default-settings-branding-SLE
+
+Prefer: -libMagick++-devel-32bit -ImageMagick-devel-32bit -pciutils-devel-32bit
+Prefer: -libgbm-devel-32bit -device-mapper-devel-32bit
+
+# required after SR#230365 and SR#230366
+Prefer: plymouth-branding-SLE
+
+# required after SR#228415
+Ignore: !pango-devel:cairo-devel
+
+# required after SR#228071
+Substitute: kmod-compat kmod
+# replacing module-init-tools
+Prefer: -kmod-compat
+
+# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190)
+Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit
+Substitute: postfix-lmdb postfix
+
+# jsc#SLE-17030
+Ignore: postgresql12-devel-mini:this-is-only-for-build-envs
+Ignore: postgresql13-devel-mini:this-is-only-for-build-envs
+Prefer: postgresql13-devel-mini postgresql12-devel-mini
+
+# needed after SR#236147
+Prefer: -mpg123-devel-32bit
+
+# Prefer coreutils over coreutils-single (SR#236655, bsc#1182550, jsc#SLE-13520, jsc#SLE-13756)
+Prefer: -coreutils-single
+
+# From Fabian Vogt on 2021023
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+# COMMON END common part
+
+# due to libreoffice
+Prefer: -sane-backends-devel-32bit
+
+Prefer: -libX11-devel-32bit
+
+# needed for latest Kiwi (sr#238860)
+Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires
+Conflict: python3-kiwi:libsystemd0-mini
+
+# needed for MU#18655
+Prefer: -python3-vsts
+
+# due to MU#19157
+Prefer: -libboost_regex_legacy
+# From Fabian Vogt on 20210913 ... patterns-base-fips temporary
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips !systemd-mini-container
+
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips !systemd-mini-container
+
+# after secondary icu version release Marcus 20211214
+
+Prefer: libicu-devel
+
+
+# gboiko, 20220202 fixing the following unresolvable:
+# have choice for libwbclient.so.0()(64bit) needed by cifs-utils: libwbclient0 samba-client-libs
+Prefer: samba-client-libs samba-devel
+
+# BEGIN RUST STUFF
+Prefer: cargo1.58 cargo1.57
+
+# Define the architectures in which Rust (and Rust crates) are available
+# NOTE: Keep this in sync with rust-srpm-macros!
+%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le riscv64 s390x
+%define rust_tier1_arches x86_64 aarch64
+
+Macros:
+%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le riscv64 s390x
+%rust_tier1_arches x86_64 aarch64
+:Macros
+
+# END RUST STUFF
+Prefer: -python3-cairo-devel -python2-cairo-devel -python3-gobject2-devel
+Prefer: -keyutils-devel-32bit -gtk4-devel-32bit
+
+# needed due to SR#249037
+Prefer: -libgcrypt-devel-32bit
+
+# from Factory: PHP requires php-sapi, which can be provided by multiple packages. We prefer -cli, related to the specific PHP version
+# needed due to SR#249799
+Prefer: php8:php8-cli
+
+# needed after php7 update (SR#255237)
+Prefer: php7:php7-cli
+
+# required due to php-composer2 SR#263267
+Prefer: -php7
+
+# needed due to libxml2 (SR#255607)
+Prefer: -python3-libxml2-python
+Substitute: python3-libxml2-python python3-libxml2
+
+# required after SR#249636
+Prefer: -libavcodec-devel -libavfilter-devel -libavformat-devel -libavutil-devel
+
+# required after luajit SR#255872
+Prefer: -lua51-luajit-devel
+
+# required after zstd SR#256594
+Prefer: -libzstd-devel-32bit
+
+# required due to libsoup2 SR#256752
+Prefer: -libsoup2-devel-32bit
+
+Prefer: java-17-openjdk-devel java-17-openjdk java-17-openjdk-headless java-17-openjdk-javadoc
+
+# required due to systemd SR#258723
+Prefer: -libfdisk-devel-32bit
+
+# required after libpcap SR#249500
+# required due to umockdev SR#259947
+Prefer: -libpcap-devel-32bit
+
+# must be removed after fix for bsc#1193711 is merged
+# can also be removed in case bsc#1194749 is fully fixed
+Support: python-rpm-macros
+
+# required for suseconnect-ng replacing SUSEConnect and zypper-migration-plugin
+Prefer: -SUSEConnect
+Prefer: -zypper-migration-plugin
+
+# IBS is preferring literal matches over provides, therefore substituting with suseconnect-ng
+Substitute: SUSEConnect suseconnect-ng
+Substitute: zypper-migration-plugin suseconnect-ng
+
+# Fix fot Qt stack update
+Prefer: -libqt5-qtremoteobjects-devel-32bit
+Prefer: -libqt5-qtspeech-devel-32bit
+Prefer: -xcb-util-cursor-devel-32bit
+# from Factory:
+# pipewire has a jack compatible implementation - but for now we prefer the real jack
+Prefer: -pipewire-libjack-0_3-devel libjack0
+
+# required due to libyui SR#263810
+Prefer: -libyui-ncurses15 -libyui-ncurses-pkg15 -libyui-ncurses-rest-api15 -libyui-qt15 -libyui-qt-graph15 -libyui-qt-pkg15 -libyui-qt-rest-api15
+
+# required due to samba SR#262961
+Prefer: -libsmbclient0 -libwbclient0 -libsmbclient-devel -libwbclient-devel -samba-devel-32bit -libndr-krb5pac-devel -libndr-nbt-devel
+
+# required due to liburing2 SR#263841
+Prefer: -liburing2-devel
+
+# required due to php-composer2 SR#263267
+Prefer: -php7
+
+# required for systemd SR#263844
+Substitute: libudev-devel systemd-devel
+Substitute: libudev-mini-devel systemd-mini-devel
+Prefer: -libudev-mini-devel
+Prefer: -libudev-devel
+Prefer: -libudev-devel-32bit
+
+# required for some Public Cloud and JeOS flavours to correctly resolve the zypper-lifecycle-plugin
+# dependency on /usr/bin/ruby, as ruby2.5 isn't pulled in by SUSEConnect anymore.
+FileProvides: /usr/bin/ruby ruby2.5
+
+%define skip_python2 1
+%define _without_python2 1
+
+Macros:
+## PYTHON MACROS BEGIN
+# order of %pythons is important: The last flavor overrides any operation on conflicting files and definitions during expansions,
+# making it the "default" in many cases --> keep the primary python3 provider at the end.
+%pythons %{?!skip_python3:python3}
+%add_python() %{expand:%%define pythons %1 %pythons}
+
+%_without_python2 1
+:Macros
+
+Prefer: -python -python-base
+
+# IBS is pulling in the outdated txt2tags instead of python3-txt2tags to build thunderbolt-user-space (bsc#1196688)
+Substitute: txt2tags python3-txt2tags
+
+# required due to bash SR#265536
+FileProvides: /bin/bash bash
+FileProvides: /bin/sh bash-sh busybox-sh
+Prefer: bash-sh
+Preinstall: bash bash-sh
+Prefer: -busybox
+# required for openblas (SR#269449)
+Prefer: -openblas-devel
+Substitute: openblas-devel libopenblas_pthreads-devel
+
diff --git a/configs/sl15.5.conf b/configs/sl15.5.conf
new file mode 100755
index 0000000..076609a
--- /dev/null
+++ b/configs/sl15.5.conf
@@ -0,0 +1,2384 @@
+%define gcc_version 7
+
+RepoURL: https://download.opensuse.org/distribution/leap/15.5/repo/oss/
+RegistryURL: https://registry.opensuse.org
+
+# new cycle handling
+BuildFlags: genmetaalgo:1
+
+Constraint: linux:version:min 3.0.0
+%ifarch ppc ppc64 ppc64le
+Constraint: hardware:cpu:flag power8
+%endif
+%ifarch armv7l armv7hl
+%if "0%{?_obs_feature_exclude_cpu_constraints}"
+Constraint: hardware:cpu:flag exclude=true EL0
+%endif
+%endif
+
+# play safe, introduced 2022/10/05
+BuildFlags: kvm-max-cpu-compat-power8
+
+Patterntype: rpm-md ymp
+
+# create conflicts for packages installed into the target image
+Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini
+Substitute: build-packages:docker python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini
+Substitute: system-packages:docker docker kmod-compat sysvinit-tools kernel-default createrepo_c
+Substitute: kiwi python3-kiwi
+Substitute: system-packages:mock mock createrepo_c
+Substitute: system-packages:kiwi-image python3-kiwi createrepo_c tar
+Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15
+Substitute: system-packages:kiwi-product product-builder
+Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper
+Prefer: -python2-kiwi
+
+%ifarch s390
+Substitute: valgrind
+Substitute: valgrind-devel
+Substitute: pkgconfig(valgrind)
+%endif
+%ifarch s390 s390x
+Substitute: libunwind-devel
+Substitute: pkgconfig(libunwind)
+%endif
+
+%ifarch s390 s390x
+Ignore: libsensors4-devel
+%endif
+
+%define _without_mono 1
+Macros:
+%_without_mono 1
+:Macros
+
+Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel
+Prefer: -liblua5_3 -liblua5_1 -liblua5_2
+
+FileProvides: /bin/csh tcsh
+FileProvides: /bin/logger util-linux-systemd
+FileProvides: /sbin/netconfig sysconfig-netconfig
+FileProvides: /sbin/setcap libcap-progs
+FileProvides: /usr/bin/csh tcsh
+FileProvides: /usr/bin/docbook2man docbook-utils
+FileProvides: /usr/bin/eu-nm elfutils
+FileProvides: /usr/bin/fipscheck fipscheck
+FileProvides: /usr/bin/killall psmisc
+FileProvides: /usr/bin/mimencode metamail
+FileProvides: /usr/bin/mkisofs mkisofs
+FileProvides: /usr/bin/pkg-config pkg-config
+FileProvides: /usr/bin/python python-base
+FileProvides: /usr/bin/setfacl acl
+FileProvides: /usr/bin/sg_inq sg3_utils
+FileProvides: /usr/bin/tput ncurses-utils
+FileProvides: /usr/bin/xmllint libxml2-tools
+FileProvides: /usr/bin/Xvfb xorg-x11-server
+FileProvides: /usr/sbin/groupadd shadow
+FileProvides: /usr/sbin/lockdev lockdev
+FileProvides: /usr/sbin/useradd shadow
+FileProvides: /usr/sbin/usermod shadow
+FileProvides: /usr/bin/msgfmt gettext-runtime
+FileProvides: /usr/bin/python3 python3-base
+# Recommended by Adrian Schroeter:
+# causes a cycle :(
+# FileProvides: /sbin/mkinitrd dracut
+
+
+Preinstall: aaa_base attr bash coreutils diffutils
+Preinstall: filesystem fillup glibc grep
+Preinstall: libbz2-1 libgcc_s1 libncurses6 pam
+Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1
+Preinstall: liblzma5 libcap2 libacl1 libattr1
+Preinstall: libpopt0 libelf1 liblua5_3-5
+Preinstall: libpcre1
+
+Runscripts: aaa_base
+
+Prefer: libdb-4_8-devel
+VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1
+VMinstall: kernel-obs-build
+VMinstall: iproute2 libmnl0
+
+Required: rpm-build
+Required: gcc-PIE
+
+# needed for su's default config - perhaps we should use a simplified form?
+Support: pam-modules
+
+# the basic stuff
+Support: perl build-mkbaselibs
+Prefer: build-mkbaselibs
+Support: brp-check-suse post-build-checks rpmlint-Factory
+Support: hostname
+Support: brp-extract-appdata
+Support: brp-extract-translations
+Support: rpmlint-Factory-strict
+
+%ifarch ia64
+Support: libunwind libunwind-devel
+Preinstall: libunwind
+%endif
+Prefer: -openSUSE-build-key
+
+Prefer: -installation-images-CAASP -installation-images-SLED -installation-images-SLES_SAP
+
+### Branding related preferences
+Prefer: awesome:awesome-branding-upstream
+Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE
+Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream
+Prefer: enlightenment-theme-upstream
+Prefer: exo-data:exo-branding-upstream
+Prefer: fcitx:fcitx-branding-openSUSE
+Prefer: gdm:gdm-branding-upstream
+Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse
+Prefer: glib2:glib2-branding-upstream
+Prefer: gnome-panel:gnome-panel-branding-upstream
+Prefer: gnome-session:gconf2-branding-openSUSE
+Prefer: gnome-session:gnome-session-branding-openSUSE
+Prefer: icewm-theme-branding
+Prefer: kde4-kdm:kde4-kdm-branding-upstream
+Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream
+Prefer: kdelibs4-branding:kdelibs4-branding-upstream
+Prefer: kdelibs4:kdelibs4-branding-upstream
+Prefer: kdm:kdm-branding-upstream
+Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream
+Prefer: libexo-1-0:libexo-1-0-branding-upstream
+Prefer: libgarcon-1-0:libgarcon-branding-upstream
+Prefer: libgarcon-data:libgarcon-branding-upstream
+Prefer: libgio-2_0-0:gio-branding-upstream
+Prefer: libglib-2_0-0:glib2-branding-upstream
+Prefer: libpurple-branding-upstream
+Prefer: libreoffice:libreoffice-branding-upstream
+Prefer: libsocialweb:libsocialweb-branding-upstream
+Prefer: libxfce4ui:libxfce4ui-branding-upstream
+Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream
+Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream
+Prefer: NetworkManager-branding-upstream
+Prefer: PackageKit:PackageKit-branding-upstream
+Prefer: plasma5-desktop:plasma5-desktop-branding-upstream
+Prefer: plasma5-workspace:plasma5-workspace-branding-upstream
+Prefer: sddm:sddm-branding-upstream
+Prefer: systemd-presets-branding-SLE
+Prefer: wallpaper-branding-openSUSE
+Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream
+Prefer: xfce4-settings:xfce4-settings-branding-upstream
+Prefer: xfdesktop:xfdesktop-branding-upstream
+Prefer: yast2-branding-openSUSE
+Prefer: yast2-qt:yast2-qt-branding-openSUSE
+Prefer: yast2-theme-openSUSE
+
+Conflict: krb5-devel:krb5-mini
+Conflict: krb5:krb5-mini-devel
+
+# Ring0 packages should not pull in 'info' - making the base VM smaller
+Ignore: binutils:info
+Ignore: bison:info
+Ignore: coreutils:info
+Ignore: cpio:info
+Ignore: diffutils:info
+Ignore: findutils:info
+Ignore: flex:info
+Ignore: gawk:info
+Ignore: gettext-runtime:info
+Ignore: gettext-tools:info
+Ignore: grep:info
+Ignore: groff:info
+Ignore: gzip:info
+Ignore: help2man:info
+Ignore: libgcrypt-devel:info
+Ignore: m4:info
+Ignore: make:info
+Ignore: sed:info
+Ignore: tar:info
+Ignore: util-linux:info
+Ignore: which:info
+
+Ignore: Mesa:Mesa-dri
+Ignore: Mesa:Mesa-gallium
+
+Conflict: python3-kiwi:curl-mini
+Conflict: python3-kiwi:libudev-mini1
+Conflict: python3-kiwi:systemd-mini
+Conflict: python3-kiwi:krb5-mini
+Conflict: python3-kiwi:gettext-tools-mini
+
+Prefer: libudev1:udev
+Conflict: libudev1:udev-mini
+Conflict: udev:libudev-mini1
+
+Conflict: systemd:libsystemd0-mini
+Conflict: systemd-mini-devel:systemd
+
+Prefer: cmake:libcurl4-mini
+Prefer: curl libcurl-devel libcurl4
+
+Prefer: -openSUSE-build-key
+Prefer: postfix
+
+Prefer: php5-ctype
+Prefer: php5-devel
+Prefer: php5-dom
+Prefer: php5-ftp
+Prefer: php5-gd
+Prefer: php5-gettext
+Prefer: php5-mbstring
+Prefer: php5-pear
+Prefer: php5-pear-Archive_Tar
+Prefer: php5-pear-Horde
+Prefer: php5 php5-json
+Prefer: php5-tokenizer
+Prefer: php5-zip
+
+Prefer: go
+Prefer: python2-pep8 python3-pep8
+Prefer: perl
+Prefer: python3-pycups python-pycups
+Prefer: apache2:apache2-prefork
+Prefer: syslogd
+Prefer: star-rmt
+Prefer: notification-daemon
+Prefer: dummy-release
+Prefer: -nodejs4
+Prefer: libpulse0-32bit
+Prefer: netcdf-devel
+Prefer: xorg-x11-Xvnc:icewm
+Prefer: cracklib-dict-small
+Prefer: libstdc++6 libgcc_s1 libquadmath0
+Prefer: libstdc++6-32bit libstdc++6-64bit
+Prefer: libstdc++6-x86
+Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit
+%ifarch s390x
+Prefer: -libstdc++41
+%endif
+Prefer: syslog-service
+Prefer: poppler-tools
+Prefer: libjpeg8-devel libjpeg-turbo
+Prefer: microcode_ctl:kernel-default
+Prefer: gnu-jaf yast2-control-center-qt
+Prefer: vim-normal myspell-american wine
+Prefer: amarok:amarok-xine
+Prefer: kdenetwork3-vnc:tightvnc
+Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api
+Prefer: -dbus-1-nox11
+Prefer: -servletapi3 -servletapi4 -servletapi5
+Prefer: icewm-lite
+Prefer: yast2-ncurses-pkg
+Prefer: monodevelop: mono-addins
+Prefer: texlive-xmltex texlive-tools texlive-jadetex
+Prefer: libesd-devel:esound
+Prefer: libesd0:esound-daemon
+Prefer: package-lists-openSUSE-KDE-cd: esound-daemon
+Prefer: librest-0_7-0
+
+Prefer: rhino:xmlbeans-mini
+Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail
+Prefer: mx4j:log4j-mini
+
+Prefer: rpcbind eclipse-source
+Prefer: libcdio_cdda0 libcdio_paranoia0
+Prefer: boo tog-pegasus
+Prefer: sysvinit(network) wicked-service
+Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd
+Prefer: kdebase4-openSUSE:kdebase4-workspace
+Prefer: ant:xerces-j2
+Prefer: dhcp-client:dhcp
+Prefer: libGLw1
+# provides typelib(St)
+Prefer: -cinnamon
+Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es
+Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el
+Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl
+Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da
+Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb
+Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar
+Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr
+Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el
+Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs
+Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu
+Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv
+Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar
+Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr
+Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el
+Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs
+Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu
+Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv
+Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar
+Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr
+Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el
+Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru
+Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da
+Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv
+Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar
+Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++
+Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g
+Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links
+Prefer: -python-setuptools
+Prefer: -kdenetwork3-InstantMessenger
+Prefer: -icc-profiles
+Prefer: vala
+# in doubt, take xerces
+Prefer: -crimson
+# in doubt, take higher versions
+Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4
+Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3
+Prefer: -rubygem-json_pure-1_5
+Prefer: geronimo-servlet-2_4-api
+Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi
+Prefer: fftw3-devel
+Prefer: star
+Prefer: xmlgraphics-commons:apache-commons-io
+Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit
+Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit
+Prefer: postgresql postgresql-server postgresql-devel
+Prefer: -unzip-rcc
+Prefer: -primus -primus-32bit
+Prefer: -staging-build-key
+Prefer: -sssd-wbclient
+Prefer: -clutter-gst-devel
+Prefer: -opencv-qt5-devel
+Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel
+Prefer: -ffmpeg2-devel -python-configparser2
+Prefer: kactivities5
+Prefer: oxygen5-icon-theme
+Prefer: npm6
+Prefer: kernel-default-devel
+Prefer: libmysqlclient-devel
+
+Prefer: wxWidgets-3_0-devel
+Prefer: libopenssl-devel
+
+Prefer: -NX -xaw3dd -db43
+Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis
+Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit
+Prefer: libffi-devel
+Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0
+Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit
+Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit
+Prefer: libgcc_s1-x86 libgcj_bc1
+Prefer: libgomp1 libgomp1-32bit libgomp1-64bit
+Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit
+Prefer: libobjc4 libgfortran3 libquadmath0
+Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini
+Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel
+Prefer: -seamonkey
+Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2
+Prefer: libopenal0-soft openal-soft -lsb-buildenv
+Prefer: -libevent
+Prefer: gnu-crypto libusb-compat-devel
+Prefer: libusb-0_1-4
+Prefer: libreoffice:xerces-j2
+Prefer: k3b:libdvdread4
+Prefer: glibc-devel
+Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4
+Prefer: NetworkManager:dhcp-client
+Prefer: kdebase3-SuSE:kdebase3
+Prefer: pcre-tools
+Prefer: libpopt0 makeinfo
+Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2
+Prefer: libgnome-keyring-devel
+Prefer: gnome-keyring-32bit
+Prefer: linux-glibc-devel
+Prefer: squid sysvinit
+Prefer: libpng16-compat-devel
+Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0
+Prefer: python3-docutils
+Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client
+Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis
+Prefer: xmlgraphics-fop:xerces-j2
+Prefer: cogl-devel
+Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage
+Prefer: libpsm2-compat
+Prefer: mozilla-nss-certs
+Prefer: phonon-backend-gstreamer
+Prefer: dracut
+Prefer: kmod-compat
+Prefer: oxygen5-cursors
+Prefer: -perl-App-cpanminus
+Prefer: -typelib-1_0-MediaArt-2_0
+Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0
+Prefer: -python-atspi
+Prefer: gettext-its-gtk3 gtk3-schema
+Prefer: ghostscript-devel
+Prefer: libotf-devel
+
+Ignore: installation-images-openSUSE:cracklib-dict-full
+Ignore: systemd-sysvinit:systemd
+Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome
+Ignore: cracklib:cracklib-dict
+Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev
+Ignore: sysvinit:mingetty
+Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel
+Ignore: libgcj43,libstdc++43-devel
+Ignore: libgcj44,libstdc++44-devel
+Ignore: libgcj45,libstdc++45-devel
+Ignore: libgcj46,libstdc++46-devel
+Ignore: libgcj47,libstdc++47-devel
+Ignore: librtas:util-linux
+Ignore: pwdutils:openslp
+Ignore: rpm:suse-build-key,build-key
+Ignore: cloud-init:cloud-init-config
+Ignore: python-pyudev:libudev1
+Ignore: python-SPARQLWrapper:python-rdflib
+Ignore: python3-SPARQLWrapper:python3-rdflib
+Ignore: bind-utils:bind-libs
+Ignore: portmap:syslogd
+Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng
+Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video
+Ignore: apache2:logrotate
+Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis
+Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper
+Ignore: kdelibs3-devel:libvorbis-devel
+Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb
+Ignore: kdebase3-SuSE:release-notes
+Ignore: jack:alsa,libsndfile
+Ignore: libxml2-devel:readline-devel
+Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration
+Ignore: libgda:file_alteration
+Ignore: gnutls:lzo,libopencdk
+Ignore: gnutls-devel:lzo-devel,libopencdk-devel
+Ignore: pango:cairo,glitz,libpixman,libpng
+Ignore: pango-devel:cairo-devel
+Ignore: cairo-devel:libpixman-devel
+Ignore: libgnomeprint:libgnomecups
+Ignore: libgnomeprintui:libgnomecups
+Ignore: orbit2-devel:indent
+Ignore: qt3:libmng
+Ignore: qt-sql:qt_database_plugin
+Ignore: libgnomecanvas-devel:glib-devel
+Ignore: libgnomeui:gnome-icon-theme,shared-mime-info
+Ignore: scrollkeeper:docbook_4
+Ignore: gnome-desktop:libgnomesu,startup-notification
+Ignore: python-devel:python-tk
+Ignore: libgtk-3-0:adwaita-icon-theme
+Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg
+Ignore: samba-libs:krb5
+Ignore: libbonoboui:gnome-desktop
+Ignore: libxfce4ui-1-0:exo-tools
+Ignore: docbook_4:iso_ent,xmlcharent
+Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification
+Ignore: docbook-xsl-stylesheets:xmlcharent
+Ignore: liby2util-devel:libstdc++-devel,openssl-devel
+Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2
+Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils
+Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel
+Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel
+Ignore: yast2-devtools:libxslt
+Ignore: yast2-iscsi-lio-server:lio-utils
+Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation
+Ignore: yast2-bootloader:bootloader-theme
+Ignore: yast2-packager:yast2-x11,libyui_pkg
+Ignore: autoyast2:yast2-schema
+Ignore: yui_backend
+Ignore: yast2-x11:sax2-libsax-perl
+Ignore: yast2-network:yast2-inetd
+Ignore: openslp-devel:openssl-devel
+Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed
+Ignore: texlive-bin:ghostscript-x11
+Ignore: texlive-bin-omega:ghostscript-x11
+Ignore: yast2-country:yast2-trans-stats
+Ignore: tpb:tpctl-kmp
+Ignore: tpctl:tpctl-kmp
+Ignore: zaptel:zaptel-kmp
+Ignore: mkinitrd:pciutils
+Ignore: pciutils:pciutils-ids
+Ignore: postfix:iproute2
+Ignore: aaa_base:systemd
+Ignore: gpm:systemd
+Ignore: openssh:systemd
+Ignore: cronie:systemd
+Ignore: systemd:kbd
+Ignore: systemd:kmod
+Ignore: systemd:systemd-presets-branding
+Ignore: systemd:dbus-1
+Ignore: systemd:pam-config
+Ignore: systemd:udev
+Ignore: pesign:systemd
+Ignore: logrotate:cron
+Ignore: texlive-filesystem:cron
+Ignore: xinit:xterm
+Ignore: xdm:xterm
+Ignore: gnome-control-center:gnome-themes-accessibility
+
+
+Ignore: man:groff-full
+Ignore: git-core:rsync
+Ignore: apache2:systemd
+Ignore: icewm-lite:icewm
+Ignore: cluster-glue:sudo
+Ignore: libgcc:glibc-32bit
+Ignore: libgcc41:glibc-32bit
+Ignore: libgcc42:glibc-32bit
+Ignore: libgcc43:glibc-32bit
+Ignore: libgcc44:glibc-32bit
+Ignore: libgcc45:glibc-32bit
+Ignore: libgcc46:glibc-32bit
+Ignore: libgcc47:glibc-32bit
+Ignore: libstdc++:glibc-32bit
+Ignore: libstdc41++:glibc-32bit
+Ignore: libstdc42++:glibc-32bit
+Ignore: libstdc43++:glibc-32bit
+Ignore: libstdc44++:glibc-32bit
+Ignore: libstdc45++:glibc-32bit
+Ignore: libstdc46++:glibc-32bit
+Ignore: libstdc47++:glibc-32bit
+Ignore: ncurses-32bit
+
+Ignore: susehelp:susehelp_lang,suse_help_viewer
+Ignore: mailx:smtp_daemon
+Ignore: cron:smtp_daemon
+Ignore: hotplug:syslog
+Ignore: pcmcia:syslog
+Ignore: openct:syslog
+Ignore: postfix:sysvinit(syslog)
+Ignore: cups:sysvinit(syslog)
+Ignore: jython:servlet
+Ignore: ispell:ispell_dictionary,ispell_english_dictionary
+Ignore: aspell:aspel_dictionary,aspell_dictionary
+Ignore: smartlink-softmodem:kernel,kernel-nongpl
+Ignore: libreoffice-de:myspell-german-dictionary
+Ignore: libreoffice:libreoffice-i18n
+Ignore: libreoffice:libreoffice-icon-themes
+Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any
+Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl
+Ignore: perl-Log-Log4perl:rrdtool
+
+Ignore: simias:mono(log4net)
+Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php
+
+Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver
+Ignore: xdg-menu:desktop-data
+Ignore: nessus-libraries:nessus-core
+Ignore: evolution:yelp
+Ignore: e17:e17-branding e17:e17-theme
+
+Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp)
+Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp)
+
+Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4)
+Ignore: libcdio:libcddb.so.2
+
+Ignore: coreutils:coreutils-lang
+Ignore: cpio:cpio-lang
+Ignore: glib2:glib2-lang
+Ignore: gtk2:gtk2-lang
+Ignore: gtk:gtk-lang
+Ignore: atk:atk-lang
+Ignore: MozillaThunderbird:pinentry-dialog
+Ignore: seamonkey:pinentry-dialog
+Ignore: pinentry:pinentry-dialog
+Ignore: gpg2:gpg2-lang
+Ignore: util-linux:util-linux-lang
+Ignore: suseRegister:distribution-release
+Ignore: compiz:compiz-decorator
+Ignore: icecream:gcc-c++
+Ignore: no
+Ignore: package
+Ignore: provides
+Ignore: j9vm/libjvm.so()(64bit)
+Ignore: kdepim3:suse_help_viewer
+Ignore: kdebase3-SuSE:kdebase3-SuSE-branding
+Ignore: kio_sysinfo:kdebase3-SuSE-branding
+Ignore: gnome-menus:gnome-menus-branding
+Ignore: epiphany:epiphany-branding
+Ignore: gnome-control-center:gnome-control-center-branding
+Ignore: phonon:phonon-backend
+Ignore: openwbem-devel
+Ignore: MozillaFirefox:MozillaFirefox-branding
+Ignore: yast2:yast2-branding
+Ignore: plymouth:plymouth-branding
+Ignore: plymouth:suspend
+Ignore: yast2-qt:yast2-branding
+Ignore: yast2-theme-SLE:yast2-branding
+Ignore: yast2-registration:yast2-registration-branding
+Ignore: compiz:compiz-branding
+Ignore: texlive:perl-Tk texlive-bin:perl-Tk
+Ignore: xfce4-desktop:xfce4-desktop-branding
+Ignore: xfce4-panel:xfce4-panel-branding
+Ignore: xfce4-session:xfce4-session-branding
+Ignore: kdebase4-runtime:kdebase4-runtime-branding
+Ignore: kwin:kdebase4-workspace-branding
+Ignore: transmission-common:transmission-ui
+Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd
+Ignore: mkinitrd:sbin_init samba-client:cifs-utils
+Ignore: opensc:pinentry
+Ignore: gpg2:pinentry
+Ignore: NetworkManager:dhcp
+Ignore: NetworkManager:iproute2
+Ignore: sysconfig:dbus-1
+Ignore: sysconfig:procps
+Ignore: sysconfig:iproute2
+Ignore: sysconfig-network:iproute2
+Ignore: sysconfig:tunctl
+Ignore: sysconfig:sysvinit(network)
+Ignore: libksuseinstall1:yast2-packager
+Ignore: libksuseinstall1:zypper
+Ignore: syslog-service:logrotate
+Ignore: libglue-devel:cluster-glue
+Ignore: libqca2:gpg2
+Ignore: NetworkManager:wpa_supplicant
+Ignore: NetworkManager:dhcp-client
+Ignore: openSUSE-release:product_flavor(openSUSE)
+Ignore: libgio-2_0-0:dbus-1-x11
+Ignore: weather-wallpaper:inkscape
+Ignore: libgamin-1-0:gamin-server
+Ignore: libfam0-gamin:gamin-server
+Ignore: python3:python3-pip
+Ignore: avahi:sysvinit(network)
+Ignore: cluster-glue:sysvinit(network)
+Ignore: dracut:systemd-sysvinit
+
+Macros:
+# RUBY - UNVERSIONED STUFF
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in the
+# prjconf aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}}
+%rubygemsSTOP() %nil
+%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*}
+%rubygemsxxSTOP(a:) %{-a*}) %*
+
+%rubySTOP() %nil
+%rubyxSTOP() %*
+
+%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}}
+
+%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}}
+
+%rubydevelSTOP() %nil
+%rubydevelxSTOP() %*
+#
+
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in
+# ruby2.5 aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}}
+%rubygemsxruby25() %{expand:%%{rubygemsx%*}}
+
+%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}}
+%rubyxruby25() %{expand:%%{rubyx%*}}
+
+%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}}
+%rubydevelxruby25() %{expand:%%{rubydevelx%*}}
+
+
+### Things to define default ruby stuff for the distro
+%rb_default_ruby ruby25
+%rb_default_ruby_suffix ruby2.5
+%rb_default_ruby_abi ruby:2.5.0
+:Macros
+
+Macros:
+%rb_build_ruby_abis ruby:2.5.0
+%rb_build_versions ruby25
+
+%_with_ruby25 1
+:Macros
+
+%define rb_default_ruby ruby25
+%define rb_default_ruby_suffix ruby2.5
+%define rb_default_ruby_abi ruby:2.5.0
+
+%define rb_build_ruby_abis ruby:2.5.0
+%define rb_build_versions ruby25
+
+%define _with_ruby25 1
+
+Prefer: -ruby-stdlib
+Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm
+Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus
+Prefer: %{rb_default_ruby_suffix}-rubygem-yard
+Prefer: %{rb_default_ruby_suffix}-rubygem-rspec
+Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake
+Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah
+Prefer: %{rb_default_ruby_suffix}-rubygem-inifile
+Prefer: %{rb_default_ruby_suffix}-rubygem-bundler
+Prefer: %{rb_default_ruby_suffix}-rubygem-sass
+Prefer: %{rb_default_ruby_suffix}-rubygem-cfa
+Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types
+
+# END RUBY STUFF
+
+# PYTHON STUFF
+
+Macros:
+%pythons %{?!skip_python2:python2} %{?!skip_python3:python3}
+
+# This method for generating python_modules gets too deep to expand at about 5 python flavors.
+# It is replaced by a Lua macro in macros.lua
+# However, OBS has a much higher expansion depth, so this works fine.
+%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}}
+%python_module_iter_STOP stop
+%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}}
+
+%add_python() %{expand:%%define pythons %pythons %1}
+:Macros
+
+# END PYTHON STUFF
+
+# FATE#325522
+Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless
+# Fallback, but we should try to not use this but java-8....
+# Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+# Prefer java 8 if java 9 was no option
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+# And then fall back to jaba 7 if needed
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+Substitute: java2-devel-packages java-devel
+
+%ifarch x86_64 ppc64 s390x sparc64
+Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit
+%else
+ %ifarch ppc sparc sparcv9
+Substitute: glibc-devel-32bit glibc-devel-64bit
+ %else
+Substitute: glibc-devel-32bit
+ %endif
+%endif
+
+%ifarch %ix86
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen
+%endif
+%ifarch ia64
+Substitute: kernel-binary-packages kernel-default kernel-debug
+%endif
+%ifarch x86_64
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen
+%endif
+%ifarch ppc
+Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3
+%endif
+%ifarch ppc64
+Substitute: kernel-binary-packages kernel-default kernel-ppc64
+%endif
+%ifarch s390
+Substitute: kernel-binary-packages kernel-s390
+%endif
+%ifarch s390x
+Substitute: kernel-binary-packages kernel-default
+%endif
+
+Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches
+# no longer needed according to Richard Biener
+# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector
+Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390x -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches
+# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops)
+Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+
+%ifarch sparcv9
+Target: sparcv9
+%endif
+%ifarch armv6l armv6hl
+Target: armv6hl-suse-linux
+%endif
+%ifarch armv7l armv7hl
+Target: armv7hl-suse-linux
+%endif
+
+
+Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection
+
+%define suse_version 1500
+%define sle_version 150000
+
+%define is_susesap 1
+
+Macros:
+%suse_version 1500
+%sle_version 150000
+%is_susesap 1
+
+%insserv_prereq insserv sed
+%fillup_prereq fillup coreutils grep diffutils
+%suseconfig_fonts_prereq perl aaa_base
+%install_info_prereq info
+%kernel_module_package_buildreq kmod-compat kernel-syms
+%kernel_module_package_buildreqs kmod-compat kernel-syms
+%maintenance_vendor SUSE LLC <https://www.suse.com/>
+%maintenance_distribution SUSE Linux Enterprise 15
+
+%sles_version 0
+%do_profiling 1
+%_vendor suse
+
+# Reproducible builds
+%source_date_epoch_from_changelog Y
+
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 7
+# The following shlibs have latest versions built from GCC 6 sources
+%product_libs_gcc_ver_libasan3 6
+%product_libs_gcc_ver_libgo9 6
+%product_libs_gcc_ver_libgfortran3 6
+# reminded by richi 2017 4/3
+%product_libs_gcc_ver_libgcj_bc1 6
+# The following shlibs have been introduced with GCC 7
+%product_libs_gcc_ver_libmpxwrappers2 7
+%product_libs_gcc_ver_libmpx2 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libgfortran4 7
+%gcc_version 7
+
+%ext_info .gz
+%ext_man .gz
+
+%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+
+%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+:Macros
+
+# BEGIN RUST STUFF
+
+# Define the architectures in which Rust (and Rust crates) are available
+# NOTE: Keep this in sync with rust-srpm-macros!
+%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x
+
+Macros:
+%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x
+:Macros
+
+Macros:
+%_without_obs_scm_testsuite 0
+:Macros
+
+Prefer: SLES_SAP-installation-release-DVD
+Prefer: systemd-presets-branding-SLE
+Prefer: python3-msgpack
+
+%ifarch s390
+Ignore: python2-numpy-devel:openblas-devel
+Ignore: python3-numpy-devel:openblas-devel
+%endif
+
+Prefer: -openssl-1_0_0
+
+
+### from SUSE:SLE-15:Update
+%define _repository pool-leap-15.5
+
+Buildflags: useccache:ceph
+Support: python-rpm-macros
+Prefer: ImageMagick-config-7-upstream
+# disabled in GA by mistake, enabling it here
+Support: build-compare
+Prefer: chrony-pool-suse
+Prefer: pciutils-ids
+Prefer: -libcurl4-mini
+
+Macros:
+%shim_enforce_ms_signature 1
+:Macros
+
+Macros:
+
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 11
+# The following shlibs have the latest version built from GCC 7 sources
+%product_libs_gcc_ver_libgfortran4 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libubsan0 7
+%product_libs_gcc_ver_libcilkrts5 7
+%product_libs_gcc_ver_libgo11 7
+# The following shlibs have the latest version built from GCC 8
+%product_libs_gcc_ver_libmpx2 8
+%product_libs_gcc_ver_libmpxwrappers2 8
+%product_libs_gcc_ver_libgo13 8
+# The following shlibs have the latest version built from GCC 9 sources
+%product_libs_gcc_ver_libasan5 9
+%product_libs_gcc_ver_libgo14 9
+# The following shlibs have the latest version built from GCC 10 sources
+%product_libs_gcc_ver_libgphobos1 10
+%product_libs_gcc_ver_libgdruntime1 10
+%product_libs_gcc_ver_libgo16 10
+
+:Macros
+
+Prefer: -alsa-devel-32bit
+Prefer: -atk-devel-32bit
+Prefer: -atkmm1_6-devel-32bit
+Prefer: -at-spi2-core-devel-32bit
+Prefer: -at-spi-devel-32bit
+Prefer: -audit-devel-32bit
+Prefer: -augeas-devel-32bit
+Prefer: -bluez-devel-32bit
+Prefer: -cairo-devel-32bit
+Prefer: -cairomm1_0-devel-32bit
+Prefer: -cairomm-devel-32bit
+Prefer: -cppunit-devel-32bit
+Prefer: -cyrus-sasl-devel-32bit
+Prefer: -dbus-1-devel-32bit
+Prefer: -dbus-1-glib-devel-32bit
+Prefer: -device-mapper-devel-32bit
+Prefer: -dirac-devel-32bit
+Prefer: -flac-devel-32bit
+Prefer: -fontconfig-devel-32bit
+Prefer: -freetype2-devel-32bit
+Prefer: -gdk-pixbuf-devel-32bit
+Prefer: -glu-devel-32bit
+Prefer: -gstreamer-devel-32bit
+Prefer: -gstreamer-plugins-base-devel-32bit
+Prefer: -gtk2-devel-32bit
+Prefer: -gtk3-devel-32bit
+Prefer: -hunspell-devel-32bit
+Prefer: -ImageMagick-devel-32bit
+Prefer: -libart_lgpl-devel-32bit
+Prefer: -libavc1394-devel-32bit
+Prefer: -libbasicobjects-devel-32bit
+Prefer: -libblkid-devel-32bit
+Prefer: -libbz2-devel-32bit
+Prefer: -libcelt-devel-32bit
+Prefer: -libcollection-devel-32bit
+Prefer: -libcom_err-devel-32bit
+Prefer: -libcurl-devel-32bit
+Prefer: -libdhash-devel-32bit
+Prefer: -libdmx-devel-32bit
+Prefer: -libdrm-devel-32bit
+Prefer: -libelf-devel-32bit
+Prefer: -libexif-devel-32bit
+Prefer: -libexpat-devel-32bit
+Prefer: -libext2fs-devel-32bit
+Prefer: -libfontenc-devel-32bit
+Prefer: -libgbm-devel-32bit
+Prefer: -libgck-devel-32bit
+Prefer: -libgcr-devel-32bit
+Prefer: -libglvnd-devel-32bit
+Prefer: -libgnutls-devel-32bit
+Prefer: -libgphoto2-devel-32bit
+Prefer: -libHX-devel-32bit
+Prefer: -libICE-devel-32bit
+Prefer: -libicu-devel-32bit
+Prefer: -libini_config-devel-32bit
+Prefer: -libjack-devel-32bit
+Prefer: -libkms-devel-32bit
+Prefer: -liblbxutil-devel-32bit
+Prefer: -liblcms2-devel-32bit
+Prefer: -libMagick++-devel-32bit
+Prefer: -libmount-devel-32bit
+Prefer: -libnettle-devel-32bit
+Prefer: -libnl3-devel-32bit
+Prefer: -libnotify-devel-32bit
+Prefer: -libpackagekit-glib2-devel-32bit
+Prefer: -libpulse-devel-32bit
+Prefer: -libQt5Concurrent-devel-32bit
+Prefer: -libQt5Core-devel-32bit
+Prefer: -libQt5DBus-devel-32bit
+Prefer: -libQt5Gui-devel-32bit
+Prefer: -libQt5Network-devel-32bit
+Prefer: -libQt5OpenGL-devel-32bit
+Prefer: -libQt5PrintSupport-devel-32bit
+Prefer: -libqt5-qtconnectivity-devel-32bit
+Prefer: -libqt5-qtdeclarative-devel-32bit
+Prefer: -libqt5-qtlocation-devel-32bit
+Prefer: -libqt5-qtmultimedia-devel-32bit
+Prefer: -libqt5-qtserialport-devel-32bit
+Prefer: -libqt5-qtsvg-devel-32bit
+Prefer: -libqt5-qttools-devel-32bit
+Prefer: -libqt5-qtwayland-devel-32bit
+Prefer: -libqt5-qtwebchannel-devel-32bit
+Prefer: -libqt5-qtwebsockets-devel-32bit
+Prefer: -libqt5-qtx11extras-devel-32bit
+Prefer: -libqt5-qtxmlpatterns-devel-32bit
+Prefer: -libQt5Sql-devel-32bit
+Prefer: -libQt5Test-devel-32bit
+Prefer: -libQt5Widgets-devel-32bit
+Prefer: -libQt5Xml-devel-32bit
+Prefer: -libraw1394-devel-32bit
+Prefer: -libref_array-devel-32bit
+Prefer: -libSDL2-devel-32bit
+Prefer: -libSDL-devel-32bit
+Prefer: -libSDL_gfx-devel-32bit
+Prefer: -libSM-devel-32bit
+Prefer: -libsoup-devel-32bit
+Prefer: -libtasn1-devel-32bit
+Prefer: -libtiff-devel-32bit
+Prefer: -libusb-1_0-devel-32bit
+Prefer: -libuuid-devel-32bit
+Prefer: -libv4l-devel-32bit
+Prefer: -libva-devel-32bit
+Prefer: -libvdpau-devel-32bit
+Prefer: -libverto-devel-32bit
+Prefer: -libvirt-devel-32bit
+Prefer: -libvorbis-devel-32bit
+Prefer: -libwayland-egl-devel-32bit
+Prefer: -libwebp-devel-32bit
+Prefer: -libX11-devel-32bit
+Prefer: -libXau-devel-32bit
+Prefer: -libXaw3d-devel-32bit
+Prefer: -libXaw-devel-32bit
+Prefer: -libxcb-devel-32bit
+Prefer: -libXcomposite-devel-32bit
+Prefer: -libXcursor-devel-32bit
+Prefer: -libXdamage-devel-32bit
+Prefer: -libXdmcp-devel-32bit
+Prefer: -libXext-devel-32bit
+Prefer: -libXfixes-devel-32bit
+Prefer: -libXfont2-devel-32bit
+Prefer: -libXfontcache-devel-32bit
+Prefer: -libXfont-devel-32bit
+Prefer: -libXft-devel-32bit
+Prefer: -libXi-devel-32bit
+Prefer: -libXinerama-devel-32bit
+Prefer: -libxkbcommon-devel-32bit
+Prefer: -libxkbcommon-x11-devel-32bit
+Prefer: -libxkbfile-devel-32bit
+Prefer: -libxml2-devel-32bit
+Prefer: -libXmu-devel-32bit
+Prefer: -libXp-devel-32bit
+Prefer: -libXpm-devel-32bit
+Prefer: -libXprintUtil-devel-32bit
+Prefer: -libXrandr-devel-32bit
+Prefer: -libXrender-devel-32bit
+Prefer: -libXres-devel-32bit
+Prefer: -libxslt-devel-32bit
+Prefer: -libXss-devel-32bit
+Prefer: -libXt-devel-32bit
+Prefer: -libXtst-devel-32bit
+Prefer: -libXv-devel-32bit
+Prefer: -libXvMC-devel-32bit
+Prefer: -libXxf86dga-devel-32bit
+Prefer: -libXxf86misc-devel-32bit
+Prefer: -libXxf86vm-devel-32bit
+Prefer: -Mesa-libEGL-devel-32bit
+Prefer: -Mesa-libGL-devel-32bit
+Prefer: -Mesa-libGLESv1_CM-devel-32bit
+Prefer: -Mesa-libGLESv2_CM-devel-32bit
+Prefer: -Mesa-libGLESv2-devel-32bit
+Prefer: -mpg123-devel-32bit
+Prefer: -ncurses-devel-32bit
+Prefer: -NetworkManager-devel-32bit
+Prefer: -openal-soft-devel-32bit
+Prefer: -openjpeg-devel-32bit
+Prefer: -pango-devel-32bit
+Prefer: -pciutils-devel-32bit
+Prefer: -sane-backends-devel-32bit
+Prefer: -tslib-devel-32bit
+Prefer: -typelib-1_0-Gst-1_0-32bit
+Prefer: -wayland-devel-32bit
+Prefer: -xcb-util-devel-32bit
+Prefer: -xcb-util-image-devel-32bit
+Prefer: -xcb-util-keysyms-devel-32bit
+Prefer: -xcb-util-renderutil-devel-32bit
+Prefer: -xcb-util-wm-devel-32bit
+Prefer: -xz-devel-32bit
+Prefer: -zlib-devel-32bit
+Prefer: -zvbi-devel-32bit
+
+Prefer: libboost_thread1_66_0
+Prefer: libboost_system1_66_0
+Prefer: libboost_regex1_66_0
+Prefer: libboost_filesystem1_66_0
+Prefer: libboost_iostreams1_66_0
+Prefer: libboost_date_time1_66_0
+
+Prefer: -libsmartcols-devel-32bit
+Prefer: -krb5-devel-32bit
+
+# ro added 20210708 requested by dmueller
+Prefer: -lzo-devel-32bit
+Prefer: -liboping-devel-32bit
+Prefer: -unixODBC-devel-32bit
+Prefer: -libcmocka-devel-32bit
+
+# ro added 20220207 requested by dmueller
+Prefer: -samba-devel-32bit
+Prefer: -libqt5-qtscript-devel-32bit
+
+# mstrigl added 20220726 requested by dmueller
+Prefer: -vulkan-devel-32bit
+
+# darix added 20220906 requested by favogt
+Prefer: libasan6
+
+# ro added 20220510 requested by jgonzalez
+Macros:
+%susemanager_container_images_path registry.suse.com/suse/manager/4.3
+:Macros
+
+# ro added 20220917 requested by meissner
+Prefer: libubsan1
+
+# mstrigl added 20220929 requested by meissner
+Prefer: go1.18
+
+Patterntype: rpm-md ymp
+
+%define sle_version 150100
+
+Macros:
+%sle_version 150100
+:Macros
+
+FileProvides: /usr/bin/host bind-utils
+
+Substitute: system-packages:podman kmod kernel-default podman buildah createrepo_c
+
+Prefer: libyui-ncurses9
+Prefer: libyui-ncurses-pkg9 libyui-qt9 libyui-qt-graph9 libyui-qt-pkg9
+Prefer: samba-libs-python3
+Ignore: !pciutils:pciutils-ids
+Prefer: kernel-default
+Ignore: multipath-tools:kmod(dm-multipath),kmod(dm-multipath),kmod(scsi_dh_emc),kmod(scsi_dh_rdac),kmod(scsi_dh_alua)
+Prefer: python2-configparser
+Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !gio-branding-upstream
+
+Prefer: -java-10-openjdk -java-10-openjdk-devel -java-10-openjdk-javadoc -java-10-openjdk-headless
+Prefer: -java-1_8_0-openjdk -java-1_8_0-openjdk-devel -java-1_8_0-openjdk-javadoc -java-1_8_0-openjdk-headless
+Prefer: -java-1_7_0-openjdk -java-1_7_0-openjdk-devel -java-1_7_0-openjdk-javadoc -java-1_7_0-openjdk-headless
+
+Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless
+
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+
+Prefer: go1.12
+
+
+### from SUSE:SLE-15-SP1:Update
+%define _repository pool-leap-15.5
+
+Prefer: slurm libpmi0 slurm-config slurm-node slurm-plugins
+Prefer: python-pytest4 python2-pytest4 python3-pytest4
+Prefer: python3-pycryptodome
+
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+
+Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires
+Conflict: python3-kiwi:libsystemd0-mini
+
+%define sle_version 150200
+
+Prefer: enchant-2-backend-hunspell
+
+Macros:
+%sle_version 150200
+%current_milestone GMC
+
+%product_libs_gcc_ver 9
+%product_libs_gcc_ver_libgfortran4 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libubsan0 7
+%product_libs_gcc_ver_libcilkrts5 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libobjc4 7
+%product_libs_gcc_ver_libmpx2 8
+%product_libs_gcc_ver_libmpxwrappers2 8
+%product_libs_gcc_ver_libgo13 8
+:Macros
+
+Prefer: libyui11
+Prefer: libyui-ncurses11
+Prefer: libyui-ncurses-pkg11 libyui-qt11 libyui-qt-graph11 libyui-qt-pkg11
+Substitute: libyui libyui11
+Substitute: libyui-ncurses libyui-ncurses11
+Substitute: libyui-ncurses-pkg libyui-ncurses-pkg11
+Substitute: libyui-qt libyui-qt11
+Substitute: libyui-qt-graph libyui-qt-graph11
+Substitute: libyui-qt-pkg libyui-qt-pkg11
+
+Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5
+Substitute: infiniband-diags-devel rdma-core-devel
+Prefer: python3-pycryptodome
+Prefer: libvala-0_46-devel
+Preinstall: libgcrypt20 libgpg-error0
+
+Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm
+Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel
+Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap
+Prefer: xml-commons-apis xml-commons-resolver
+Prefer: log4j12-mini
+Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap
+Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap
+Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap
+Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap
+Prefer: bsh2
+Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap
+Prefer: apache-commons-net
+Prefer: gradle groovy-lib eclipse-swt gpars
+
+%ifarch %arm ppc riscv64 aarch64
+Macros:
+%prjconf_multibuild_selection patch
+:Macros
+%endif
+
+Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-headless java-11-openjdk-javadoc
+%ifarch s390x
+Prefer: java-1_8_0-openj9 java-1_8_0-openj9-devel java-1_8_0-openj9-headless
+%endif
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-headless java-1_8_0-openjdk-javadoc
+Prefer: java-10-openjdk-devel java-10-openjdk java-10-openjdk-devel java-10-openjdk-headless java-10-openjdk-javadoc
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-headless java-9-openjdk-javadoc
+Prefer: java-1_7_0-bootstrap-devel java-1_7_0-bootstrap java-1_7_0-bootstrap-headless
+
+Prefer: rpm
+
+Preinstall: libzstd1
+
+Prefer: libudisks2-0-devel
+
+Ignore: cmake-mini:this-is-only-for-build-envs
+Prefer: cmake-mini
+Prefer: ocaml-compiler-libs-devel
+Prefer: python2-contextlib2
+Prefer: chrony-pool-suse
+
+%ifarch i586
+Prefer: slurm libpmi0 slurm-config slurm-plugins slurm-node
+%endif
+
+Substitute: azuremetadata python3-azuremetadata
+
+Prefer: python3-pytest
+Prefer: python2-pytest
+
+Prefer: PackageKit-backend-zypp
+Prefer: python2-subprocess32
+
+
+### from SUSE:SLE-15-SP2:Update
+%define _repository pool-leap-15.5
+# have choice for python2-pycrypto needed by python2-oauth2client: python2-pycrypto python2-pycryptodome 20200916 - gboiko
+Prefer: python2-pycrypto
+
+# avoid have choice for pkgconfig(gnutls): libgnutls-devel libgnutls-devel-32bit
+Prefer: libgnutls-devel
+
+# qt5 prefers (32bit mess)
+Prefer: libQt5Test-devel libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel libQt5PrintSupport-devel libQt5Concurrent-devel
+
+# have choice for pkgconfig(bluez): bluez-devel bluez-devel-32bit (32bit mess)
+Prefer: bluez-devel
+
+# conflict with postgresql13-devel-mini ?
+Prefer: libpq5
+
+Prefer: gdk-pixbuf-devel
+
+# From Fabian Vogt on 2021023
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips
+
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips
+
+
+# for thunderbird (nodejs >= 10 ... has 3 options)
+
+Prefer: nodejs14
+
+
+Patterntype: rpm-md ymp
+# COMMON BEGIN common part
+%define sle_version 150300
+Macros:
+%sle_version 150300
+:Macros
+
+# Prefer later so_version of libyui* over libyui*8 (SP0), libyui*9 (SP1) and libyui*11 (SP2)
+Prefer: -libyui8 -libyui-ncurses8 -libyui-ncurses-pkg8 -libyui-qt8 -libyui-qt-graph8 -libyui-qt-pkg8
+Prefer: -libyui9 -libyui-ncurses9 -libyui-ncurses-pkg9 -libyui-qt9 -libyui-qt-graph9 -libyui-qt-pkg9
+Prefer: -libyui11 -libyui-ncurses11 -libyui-ncurses-pkg11 -libyui-qt11 -libyui-qt-graph11 -libyui-qt-pkg11 -libyui-ncurses-rest-api11 -libyui-qt-rest-api11
+
+# Revert substitutions from SP2
+Substitute: libyui libyui
+Substitute: libyui-ncurses libyui-ncurses
+Substitute: libyui-ncurses-pkg libyui-ncurses-pkg
+Substitute: libyui-qt libyui-qt
+Substitute: libyui-qt-graph libyui-qt-graph
+Substitute: libyui-qt-pkg libyui-qt-pkg
+Substitute: libyui-ncurses-rest-api libyui-ncurses-rest-api
+Substitute: libyui-qt-rest-api libyui-qt-rest-api
+
+# required after SR#225674 / jsc#SLE-12712
+Prefer: gmmlib-devel
+
+# required after SR#225669
+Preinstall: libcrypt1
+
+# required for latest Mesa
+Prefer: libdrm-devel Mesa-libGL-devel libglvnd-devel libkms-devel Mesa-libEGL-devel libva-devel libdbusmenu-qt5-devel
+
+# required after SR#226419
+Prefer: typelib-1_0-Gst-1_0
+
+# required for latest Mesa
+Prefer: Mesa-libGLESv2-devel Mesa-libGLESv1_CM-devel
+
+# not sure why we need those
+Prefer: libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel
+
+# required after MU#16450 (gnutls)
+Prefer: libgnutls-devel
+
+# required after SR#228340
+Prefer: systemd-sysvinit
+
+# required after SR#227910 (alsa) and SR#228076 (pulseaudio)
+Prefer: alsa-devel libpulse-devel
+
+# required after SR#227917 (kernel-firmware)
+Prefer: kernel-firmware
+
+# required after SR#229310
+Prefer: systemd-default-settings-branding-SLE
+
+Prefer: -libMagick++-devel-32bit -ImageMagick-devel-32bit -pciutils-devel-32bit
+Prefer: -libgbm-devel-32bit -device-mapper-devel-32bit
+
+# required after SR#230365 and SR#230366
+Prefer: plymouth-branding-SLE
+
+# required after SR#228415
+Ignore: !pango-devel:cairo-devel
+
+# required after SR#228071
+Substitute: kmod-compat kmod
+# replacing module-init-tools
+Prefer: -kmod-compat
+
+# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190)
+Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit
+Substitute: postfix-lmdb postfix
+
+# jsc#SLE-17030
+Ignore: postgresql12-devel-mini:this-is-only-for-build-envs
+Ignore: postgresql13-devel-mini:this-is-only-for-build-envs
+Prefer: postgresql13-devel-mini postgresql12-devel-mini
+
+# needed after SR#236147
+Prefer: -mpg123-devel-32bit
+
+# Prefer coreutils over coreutils-single (SR#236655, bsc#1182550, jsc#SLE-13520, jsc#SLE-13756)
+Prefer: -coreutils-single
+
+# From Fabian Vogt on 2021023
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+# COMMON END common part
+
+# due to libreoffice
+Prefer: -sane-backends-devel-32bit
+
+Prefer: -libX11-devel-32bit
+
+# needed for latest Kiwi (sr#238860)
+Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires
+Conflict: python3-kiwi:libsystemd0-mini
+
+# needed for MU#18655
+Prefer: -python3-vsts
+
+# due to MU#19157
+Prefer: -libboost_regex_legacy
+
+# define a prefix for all package builds in SLE 15 SP3 to handle migration of packages
+# with identical version but lower release version than in a preceding codestream
+# Marcus Meissner 20220117
+Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT>
+
+
+# From Fabian Vogt on 20210913 ... patterns-base-fips temporary
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips !systemd-mini-container
+
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips !systemd-mini-container
+
+# after secondary icu version release Marcus 20211214
+
+Prefer: libicu-devel
+
+
+# gboiko, 20220202 fixing the following unresolvable:
+# have choice for libwbclient.so.0()(64bit) needed by cifs-utils: libwbclient0 samba-client-libs
+Prefer: samba-client-libs samba-devel
+
+# BEGIN RUST STUFF
+Prefer: cargo1.58 cargo1.57
+
+# Define the architectures in which Rust (and Rust crates) are available
+# NOTE: Keep this in sync with rust-srpm-macros!
+%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le riscv64 s390x
+%define rust_tier1_arches x86_64 aarch64
+
+Macros:
+%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le riscv64 s390x
+%rust_tier1_arches x86_64 aarch64
+:Macros
+
+# END RUST STUFF
+
+# COMMON BEGIN common part
+%define sle_version 150400
+Macros:
+%sle_version 150400
+:Macros
+
+# define a prefix for all package builds in SLE 15 SP4 to handle migration of packages
+# with identical version but lower release version than in a preceding codestream
+Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT>
+
+Prefer: -python3-cairo-devel -python2-cairo-devel -python3-gobject2-devel
+Prefer: -keyutils-devel-32bit -gtk4-devel-32bit
+
+# needed due to SR#249037
+Prefer: -libgcrypt-devel-32bit
+
+# from Factory: PHP requires php-sapi, which can be provided by multiple packages. We prefer -cli, related to the specific PHP version
+# needed due to SR#249799
+Prefer: php8:php8-cli
+
+# needed after php7 update (SR#255237)
+Prefer: php7:php7-cli
+
+# required due to php-composer2 SR#263267
+Prefer: -php7
+
+# needed due to libxml2 (SR#255607)
+Prefer: -python3-libxml2-python
+Substitute: python3-libxml2-python python3-libxml2
+
+# required after SR#249636
+Prefer: -libavcodec-devel -libavfilter-devel -libavformat-devel -libavutil-devel
+
+# required after luajit SR#255872
+Prefer: -lua51-luajit-devel
+
+# required after zstd SR#256594
+Prefer: -libzstd-devel-32bit
+
+# required due to libsoup2 SR#256752
+Prefer: -libsoup2-devel-32bit
+
+Prefer: java-17-openjdk-devel java-17-openjdk java-17-openjdk-headless java-17-openjdk-javadoc
+
+# required due to systemd SR#258723
+Prefer: -libfdisk-devel-32bit
+
+# required after libpcap SR#249500
+# required due to umockdev SR#259947
+Prefer: -libpcap-devel-32bit
+
+# must be removed after fix for bsc#1193711 is merged
+# can also be removed in case bsc#1194749 is fully fixed
+Support: python-rpm-macros
+
+# required for suseconnect-ng replacing SUSEConnect and zypper-migration-plugin
+Prefer: -SUSEConnect
+Prefer: -zypper-migration-plugin
+
+# IBS is preferring literal matches over provides, therefore substituting with suseconnect-ng
+Substitute: SUSEConnect suseconnect-ng
+Substitute: zypper-migration-plugin suseconnect-ng
+
+# Fix fot Qt stack update
+Prefer: -libqt5-qtremoteobjects-devel-32bit
+Prefer: -libqt5-qtspeech-devel-32bit
+Prefer: -xcb-util-cursor-devel-32bit
+
+# from Factory:
+# pipewire has a jack compatible implementation - but for now we prefer the real jack
+Prefer: -pipewire-libjack-0_3-devel libjack0
+
+# required due to libyui SR#263810
+Prefer: -libyui-ncurses15 -libyui-ncurses-pkg15 -libyui-ncurses-rest-api15 -libyui-qt15 -libyui-qt-graph15 -libyui-qt-pkg15 -libyui-qt-rest-api15
+
+# required due to samba SR#262961
+Prefer: -libsmbclient0 -libwbclient0 -libsmbclient-devel -libwbclient-devel -samba-devel-32bit -libndr-krb5pac-devel -libndr-nbt-devel
+
+# required due to liburing2 SR#263841
+Prefer: -liburing2-devel
+
+# required due to php-composer2 SR#263267
+Prefer: -php7
+
+# required for systemd SR#263844
+Substitute: libudev-devel systemd-devel
+Substitute: libudev-mini-devel systemd-mini-devel
+Prefer: -libudev-mini-devel
+Prefer: -libudev-devel
+Prefer: -libudev-devel-32bit
+
+# required for some Public Cloud and JeOS flavours to correctly resolve the zypper-lifecycle-plugin
+# dependency on /usr/bin/ruby, as ruby2.5 isn't pulled in by SUSEConnect anymore.
+FileProvides: /usr/bin/ruby ruby2.5
+
+%define skip_python2 1
+%define _without_python2 1
+
+Macros:
+## PYTHON MACROS BEGIN
+# order of %pythons is important: The last flavor overrides any operation on conflicting files and definitions during expansions,
+# making it the "default" in many cases --> keep the primary python3 provider at the end.
+%pythons %{?!skip_python3:python3}
+%add_python() %{expand:%%define pythons %1 %pythons}
+
+%_without_python2 1
+:Macros
+
+Prefer: -python -python-base
+
+# IBS is pulling in the outdated txt2tags instead of python3-txt2tags to build thunderbolt-user-space (bsc#1196688)
+Substitute: txt2tags python3-txt2tags
+
+# required due to bash SR#265536
+FileProvides: /bin/bash bash
+FileProvides: /bin/sh bash-sh busybox-sh
+Prefer: bash-sh
+Preinstall: bash bash-sh
+Prefer: -busybox
+
+# required for openblas (SR#269449)
+Prefer: -openblas-devel
+Substitute: openblas-devel libopenblas_pthreads-devel
+
+### from SUSE:SLE-15-SP4:Update
+%define _repository pool-leap-15.5
+Prefer: -python3-cairo
+
+#request by meissner 2022-09-08
+Prefer: libdebuginfod1-dummy
+
+#request by dmueller 2022-10-11
+FileProvides: /usr/sbin/nologin util-linux
+FileProvides: /usr/bin/perl perl
+
+Patterntype: rpm-md ymp
+
+# COMMON BEGIN common part
+%define sle_version 150500
+Macros:
+%sle_version 150500
+:Macros
+
+# define a prefix for all package builds in SLE 15 SP4 to handle migration of packages
+# with identical version but lower release version than in a preceding codestream
+Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT>
+
+Prefer: -libasan6-gcc10
+
+# required for libvirt 8.7 (bsc#1203512)
+FileProvides: /usr/bin/lzop lzop
+
+# Update of pacemaker and rename of libraries in SR#279289
+Prefer: -libpacemaker-devel
+Prefer: -libpacemaker3
+# Update of cluster-glue and rename of libraries in SR#279338
+Prefer: -libglue2
+
+# fix build dependency for resource-agents, as IBS prefers the literal match (bsc#1203744)
+Substitute: libglue-devel cluster-glue-devel
+
+# resolve choice for split in libpolkit0 (bsc#1191781)
+Prefer: -libpolkit0
+
+Release: bp155.<CI_CNT>.<B_CNT>
+
+Patterntype: rpm-md ymp
+
+# whenever something (rpmlint-mini!) wants rpmlint we also install
+# our extra policy check
+#Substitute: rpmlint rpmlint rpmlint-backports rpmlint-backports-data
+
+# rpmlint-backports-data is only available for SLE architectures
+%ifarch x86_64 ppc64le s390x aarch64
+Support: rpmlint-backports
+%endif
+Support: brp-check-suse
+
+# Enable ccache for chromium tensorflow{2}
+BuildFlags: useccache:chromium
+BuildFlags: useccache:nodejs-electron
+BuildFlags: useccache:ghc
+
+BuildFlags: useccache:tensorflow:hpc
+BuildFlags: useccache:tensorflow:hpc-openmpi2
+BuildFlags: useccache:tensorflow:lite
+BuildFlags: useccache:tensorflow:standard
+
+BuildFlags: useccache:tensorflow2:hpc
+BuildFlags: useccache:tensorflow2:hpc-openmpi2
+BuildFlags: useccache:tensorflow2:lite
+BuildFlags: useccache:tensorflow2:standard
+
+# FileProvides: /usr/bin/python2 python2-base
+FileProvides: /sbin/pidof sysvinit-tools
+
+Prefer: rpm -rpm-ndb
+# bsc#1182698
+Preinstall: rpm-config-SUSE
+
+# need this until snpashot resync, maxlin 2022-03-18
+# Preinstall: !bash-sh
+
+# prefer coreutils over coreutils-single
+Prefer: coreutils
+
+# Help with the switch to the gcc7 provided libs
+# Prefer: -libstdc++6-gcc7 -libtsan0-gcc7 -libgomp1-gcc7 -libgcc_s1-gcc7 -libatomic1-gcc7 -libcilkrts5-gcc7 -libitm1-gcc7
+# Prefer: -liblsan0-gcc7 -libmpx2-gcc7 -libubsan0-gcc7
+
+Prefer: yast2-schema-default
+
+FileProvides: /usr/bin/pkexec pkexec
+
+# Help with the switch to the gcc9 provided libs:
+# Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5
+
+# Imagemagick now has 2 configs
+Prefer: ImageMagick-config-7-SUSE
+
+# man uses cron to update the DB normally, but we don't care for that in the build system
+Ignore: man:cron
+
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: erlang-rebar-obs:this-is-only-for-build-envs
+Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs
+Ignore: jdk-bootstrap:this-is-only-for-build-envs
+Ignore: libsystemd0-mini:this-is-only-for-build-envs
+Ignore: libudev-mini1:this-is-only-for-build-envs
+Ignore: libunbound-devel-mini:this-is-only-for-build-envs
+Ignore: systemd-mini:this-is-only-for-build-envs
+Ignore: udev-mini:this-is-only-for-build-envs
+Ignore: curl-mini:this-is-only-for-build-envs
+Ignore: libcurl-mini-devel:this-is-only-for-build-envs
+Ignore: libcurl4-mini:this-is-only-for-build-envs
+Ignore: ghc-bootstrap:this-is-only-for-build-envs
+Ignore: ghc-bootstrap-helpers:this-is-only-for-build-envs
+Ignore: cmake-mini:this-is-only-for-build-envs
+
+# Cmake exists as a -mini flavor, which is not linked against curl.
+Prefer: cmake-mini
+
+# We have multiple nodejs versions in the repo - prefer version -default (from meta package)
+Prefer: nodejs-default nodejs-devel-default npm-default
+
+# Fix build of python-inspektor
+Prefer: python2-configparser
+
+# Fix build for packages depending on rust since old version rust-std (1.24.1)
+# instead of current version in SLE (rust-std-static 1.31.1) was used for builds
+Substitute: rust-std rust
+Substitute: rust-std-static rust
+
+# multiple rust and cargo does exist
+Prefer: -cargo1.53 -cargo1.54 -cargo1.55 -cargo1.56
+
+# libmariadb naming obosletes libmysqld naming but libmysqld binaries has still appeared
+Substitute: libmysqld-devel libmariadbd-devel
+
+# requested by Stefan Weiberg on 2022/09/28 - copy from IBS
+# fix build dependency for resource-agents, as IBS prefers the literal match (bsc#1203744)
+Substitute: libglue-devel cluster-glue-devel
+
+Prefer: libasan6
+
+# have choice for golang(API) = 1.18: go1.18 go1.18-openssl
+Prefer: -go1.18-openssl
+
+# have choice for perl(Term::ReadLine::Gnu): perl-Term-ReadLine-Gnu perl-TermReadLine-Gnu
+Prefer: perl-Term-ReadLine-Gnu
+
+# required for openblas (SR#269449)
+Prefer: -openblas-devel
+Substitute: openblas-devel libopenblas_pthreads-devel
+
+# For 32bit stuff
+Support: perl build-mkbaselibs
+Prefer: build-mkbaselibs
+
+# until this can be fixed in rpm - maxlin
+Support: python-rpm-macros
+
+# Directly copied from Leap
+Prefer: openmpi-config
+Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 libnetcdf11 netcdf-devel netcdf-devel-data -libnetcdf13-openmpi -libnetcdf13-openmpi2
+Prefer: -libnetcdf15-openmpi -libnetcdf15-openmpi2
+Prefer: libnetcdf18
+Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-101-openmpi -libhdf5-101-mvapich2 -libhdf5_hl101-openmpi libhdf5_hl100 -libhdf5-103-openmpi1 -libhdf5-103-mvapich2 -libhdf5_hl103-openmpi -libhdf5_cpp103-openmpi -libhdf5_cpp103-openmpi1 -libhdf5_cpp103-mvapich2 -libhdf5-103-openmpi2 -libhdf5-103-openmpi3 -libhdf5-103-openmpi4 -libhdf5_cpp103-openmpi2 -libhdf5_cpp103-openmpi3 -libhdf5_cpp103-openmpi4
+Prefer: -hdf5-1_8-devel
+Prefer: -libvtk1-openmpi libvtk1-openmpi2
+
+# PHP requires php-sapi, which can be provided by multiple packages. We prefer -cli, related to the specific PHP version
+%define php_pref php7
+Prefer: %{php_pref}
+Prefer: %{php_pref}-cli
+Prefer: %{php_pref}-devel
+Prefer: %{php_pref}-pear
+Prefer: %{php_pref}-tokenizer
+Prefer: apache2-mod_%{php_pref}
+Prefer: php7:php7-cli
+Prefer: php8:php8-cli
+
+# do not prefer php7-test
+Prefer: -php7-test
+
+# go exists in mutliple versions by now - we prefer the 'unversioned package' - not true anymore
+# for go version greater than 1.13, let's not to prefer older ones
+# go1.15 is the default by patchinfo.18422
+Prefer: go -go1.12 -go1.13 -go1.14 -go1.15 -go1.16
+
+# Have choice for vtk-java/vtk-tcl/python3-vtk needed by vtk-devel
+Prefer: vtk-java vtk-tcl python3-vtk
+
+# have choice for mingw32-unistd-pthread-devel needed by mingw32-headers: mingw32-headers-dummy-pthread mingw32-winpthreads-devel
+Prefer: -mingw64-headers-dummy-pthread -mingw32-headers-dummy-pthread
+
+# Ruby stuff - quite a few packages exist in multiple versions in the distro; in each case, the Preference is on the 'unversioned' package
+Prefer: ruby2.5-rubygem-tilt
+Prefer: ruby2.5-rubygem-mail
+Prefer: ruby2.5-rubygem-addressable
+Prefer: ruby2.5-rubygem-thor
+Prefer: ruby2.5-rubygem-tzinfo
+
+# in doubt, take higher versions
+Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4
+Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3
+Prefer: -rubygem-json_pure-1_5
+Prefer: -ruby2.4-rubygem-fast_gettext-1_1 -ruby2.4-rubygem-listen-3_0 -ruby2.4-rubygem-nokogiri-1_6 -ruby2.4-rubygem-i18n-0_6 -ruby2.4-rubygem-ruby_dep-1_3 -ruby2.4-rubygem-childprocess-0_6
+Prefer: -ruby2.4-rubygem-mime-types-1
+Prefer: -ruby2.5-rubygem-rspec-2_14
+Prefer: -ruby2.5-rubygem-mime-types-1
+Prefer: -ruby2.5-rubygem-rb-fsevent
+Prefer: -ruby2.5-rubygem-bcrypt_pbkdf
+
+# have choice for rubygem(ruby:2.5.0:fast_gettext) < 3.0 needed by yast2-ruby-bindings: ruby2.5-rubygem-fast_gettext ruby2.5-rubygem-fast_gettext-1.1
+Prefer: -ruby2.5-rubygem-fast_gettext-1.1
+# have choice for rubygem(ruby:2.5.0:sass-rails) >= 5.0.1: ruby2.5-rubygem-sass-rails ruby2.5-rubygem-sass-rails-5.1
+Prefer: -ruby2.5-rubygem-sass-rails-5.1
+
+# we have python3 and python39
+Prefer: python3 -python39 -python -python-base
+
+# have choice: python2-setuptools python2-setuptools-test python2-setuptools-wheel
+Prefer: python2-setuptools
+Prefer: python3-setuptools
+
+# python-msgpack-python was renamed to python-msgpack with 0.5 as a single-spec package (provides/obsoletes in place)
+Prefer: python2-msgpack python3-msgpack
+
+Prefer: python2-pycryptodome
+
+# There is python3-Django and python3-Django1 - as usual, we favor the unversioned one
+Prefer: python3-Django
+
+# python3-prompt_toolkit vs python3-prompt_toolkit1
+Prefer: python3-prompt_toolkit
+
+# multiple pytest version so prefers the unversioned one
+Prefer: python3-pytest python3-pytest4 python3-pytest5
+Prefer: python2-pytest python2-pytest4 python2-pytest5
+
+Prefer: python2-subprocess32
+
+Prefer: python2-libxml2
+Prefer: python3-libxml2
+
+# Enchant has multiple backends to chose from, make a decision for OBS
+Prefer: enchant-1-backends
+Prefer: enchant-2-backend-hunspell
+
+# pipewire has a jack compatible implementation - but for now we prefer the real jack otherwise some apps fails to build eg. octave
+Prefer: -pipewire-libjack-0_3-devel libjack0
+
+# have choice for html2text
+Prefer: -python3-html2text
+
+# have choice for python-wxWidgets >= 2.8 needed by grass: python-wxWidgets-3_0 python3-wxPython
+Prefer: python3-wxPython
+
+# OpenSceneGraph exists as 'latest' and a 3.4 compat package. If nothing is specified, we want latest
+Prefer: libOpenSceneGraph-devel libOpenThreads-devel
+
+# once libmusicbrainz updated to ver. 5 then switch it to libmusicbrainz-devel
+Prefer: libmusicbrainz5-devel
+
+
+# have choice for pkgconfig(msgpack): msgpack-c-devel msgpack-devel
+Prefer: -msgpack-devel
+
+# have chouce for python3-sip python3-sip4
+Prefer: python3-sip
+Prefer: -python3-sip4
+
+Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis
+
+Prefer: rhino:xmlbeans-mini
+Prefer: k9s:go1.14
+
+Prefer: libuna-mini-devel libuna1-mini
+
+# have choice for perl(Math::BigInt) >= 1.999808: amanda perl-Math-BigInt
+Prefer: perl-Math-BigInt
+
+# hwdata vs pciutils-ids
+Prefer: -pciutils-ids
+Prefer: hwdata
+
+# have choice for tensorflow: tensorflow tensorflow2 tensorflow2_2_1_0-gnu-hpc tensorflow2_2_1_0-gnu-mvapich2-hpc tensorflow2_2_1_0-gnu-openmpi2-hpc
+Prefer: tensorflow2
+
+# have choice for pkgconfig(libhs): hyperscan-devel vectorscan-devel. hyperscan is for x86 only, prefer that where possible (for now).
+Prefer: hyperscan-devel
+
+# have choice for (gnome-session or budgie-desktop) needed by gnome-shell: budgie-desktop gnome-session
+Prefer: -budgie-desktop
+
+# have choice for systemd-default-settings-branding needed by systemd:
+# systemd-default-settings-branding-SLE systemd-default-settings-branding-openSUSE systemd-default-settings-branding-upstream
+Prefer: systemd-default-settings-branding-SLE
+
+# have choice for typelib(GWeather) needed by gnome-shell: typelib-1_0-GWeather-3_0 typelib-1_0-GWeather-4_0
+Prefer: typelib-1_0-GWeather-3_0
+
+# Do not prefer 32bit devel
+Prefer: -ImageMagick-devel-32bit
+Prefer: -bluez-devel-32bit
+Prefer: -libgnutls-devel-32bit
+Prefer: -libMagick++-devel-32bit
+Prefer: -libQt5Concurrent-devel-32bit
+Prefer: -libQt5Core-devel-32bit
+Prefer: -libQt5DBus-devel-32bit
+Prefer: -libQt5Gui-devel-32bit
+Prefer: -libQt5Network-devel-32bit
+Prefer: -libQt5OpenGL-devel-32bit
+Prefer: -libQt5OpenGLExtensions-devel-static-32bit
+Prefer: -libQt5PrintSupport-devel-32bit
+Prefer: -libQt5Sql-devel-32bit
+Prefer: -libQt5Test-devel-32bit
+Prefer: -libQt5Widgets-devel-32bit
+Prefer: -libQt5Xml-devel-32bit
+Prefer: -libpackagekit-glib2-devel-32bit
+Prefer: -libvirt-devel-32bit
+Prefer: -typelib-1_0-Gst-1_0-32bit
+Prefer: -Mesa-libGL-devel-32bit
+Prefer: -Mesa-libGLESv2-devel-32bit
+Prefer: -Mesa-libGLESv1_CM-devel-32bit
+Prefer: -Mesa-libGL-devel-32bit
+Prefer: -Mesa-libEGL-devel-32bit
+Prefer: -alsa-devel-32bit
+Prefer: -libdrm-devel-32bit
+Prefer: -pciutils-devel-32bit
+Prefer: -libSDL2_image-devel-32bit
+Prefer: -libpulse-devel-32bit
+Prefer: -libva-devel-32bit
+Prefer: -libva-gl-devel-32bit
+Prefer: -libdbusmenu-qt5-devel-32bit
+Prefer: -libgbm-devel-32bit
+Prefer: -libpolkit-qt5-1-devel-32bit
+Prefer: -audit-devel-32bit
+Prefer: -libqt5-qtspeech-devel-32bit
+Prefer: -libkms-devel-32bit
+Prefer: -gdk-pixbuf-devel-32bit
+Prefer: -papi-devel-32bit
+Prefer: -mpg123-devel-32bit
+Prefer: -libOSMesa-devel-32bit
+Prefer: -libSDL_ttf-devel-32bit
+Prefer: -libSDL2_ttf-devel-32bit
+Prefer: -libSDL_mixer-devel-32bit
+Prefer: -libSDL2_mixer-devel-32bit
+Prefer: -libSDL_image-devel-32bit
+Prefer: -libSDL_net-devel-32bit
+Prefer: -libSDL2_net-devel-32bit
+Prefer: -libSDL_gfx-devel-32bit
+Prefer: -libSDL2_gfx-devel-32bit
+Prefer: -muparser-devel-32bit
+Prefer: -xcb-util-cursor-devel-32bit
+Prefer: -libbotan-devel-32bit
+Prefer: -dirac-devel-32bit
+Prefer: -libavc1394-devel-32bit
+Prefer: -zvbi-devel-32bit
+Prefer: -libcmocka-devel-32bit
+Prefer: -libstatgrab-devel-32bit
+Prefer: -libqt5-qtnetworkauth-devel-32bit
+Prefer: -cairomm-devel-32bit
+Prefer: -libqt5-qtscxml-devel-32bit
+Prefer: -phonon4qt5-devel-32bit
+Prefer: -libQt5WebKit5-devel-32bit
+Prefer: -libQt5WebKitWidgets-devel-32bit
+Prefer: -libsmartcols-devel-32bit
+Prefer: -sane-backends-devel-32bit
+Prefer: -libX11-devel-32bit
+Prefer: -libopenssl-1_0_0-devel-32bit
+Prefer: -libgcrypt-devel-32bit
+Prefer: -keyutils-devel-32bit
+Prefer: -gtk4-devel-32bit
+Prefer: -ocl-icd-devel-32bit
+Prefer: -libGLw-devel-32bit
+Prefer: -libzstd-devel-32bit
+Prefer: -libsoup2-devel-32bit
+Prefer: -libpcap-devel-32bit
+Prefer: -libqt5-qtremoteobjects-devel-32bit
+Prefer: -libqt5-qtsensors-devel-32bit
+Prefer: -libudev-devel-32bit
+#have choice for librpm.so.8 needed by libsnmp30-32bit: rpm-32bit rpm-ndb-32bit, have choice for librpmio.so.8 needed by libsnmp30-32bit: rpm-32bit rpm-ndb-32bit, have choice for libnssckbi.so needed by mozilla-nss-32bit: mozilla-nss-certs-32bit p11-kit-nss-trust-32bit
+Prefer: -rpm-ndb-32bit
+Prefer: -p11-kit-nss-trust-32bit
+
+# wine comes in various flavors by now, we pick the unflavored ones
+Prefer: wine-32bit wine-devel-32bit wine-devel
+
+Prefer: -ruby2.4-rubygem-fast_gettext-1_1 -ruby2.4-rubygem-listen-3_0 -ruby2.4-rubygem-nokogiri-1_6 -ruby2.4-rubygem-i18n-0_6 -ruby2.4-rubygem-ruby_dep-1_3 -ruby2.4-rubygem-childprocess-0_6
+Prefer: -ruby2.4-rubygem-mime-types-1
+Prefer: -ruby2.5-rubygem-rspec-2_14
+Prefer: -ruby2.5-rubygem-mime-types-1
+
+Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4 -libnetcdf13-openmpi libnetcdf11 netcdf-devel netcdf-devel-data
+
+# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel
+Prefer: libmysqlclient-devel
+
+# have choice for perl(Math::BigInt) >= 1.999808: amanda perl-Math-BigInt
+Prefer: perl-Math-BigInt
+
+# have choice for pkgconfig(catch2): Catch2-2-devel Catch2-devel
+Prefer: -Catch2-2-devel
+
+Prefer: subunit-filters -python2-python-subunit
+
+# have choice for PackageKit-backend needed by PackageKit: PackageKit-backend-dnf PackageKit-backend-zypp
+Prefer: PackageKit-backend-zypp
+
+# We have multiple versions of ffmpeg available, the preferred one is ffmpeg4 from Backports instead of ffmpeg3 from SLE
+# Prefer: ffmpeg-4-libavcodec-devel ffmpeg-4-libavformat-devel ffmpeg-4-libavutil-devel ffmpeg-4-libswscale-devel ffmpeg-4-libavdevice-devel
+# Prefer: -ffmpeg-private-devel -libavcodec-devel -libavformat-devel -libavutil-devel -libswscale-devel -libavdevice-devel -libavfilter-devel
+# ffmpeg-3 and ffmpeg-4 handling in 15.2
+Prefer: libvpx-devel
+Prefer: ffmpeg-3-libavcodec-devel ffmpeg-3-libavdevice-devel ffmpeg-3-libavfilter-devel ffmpeg-3-libavformat-devel ffmpeg-3-libavresample-devel ffmpeg-3-libavutil-devel ffmpeg-3-libpostproc-devel ffmpeg-3-libswresample-devel ffmpeg-3-libswscale-devel ffmpeg-3-private-devel
+Prefer: -ffmpeg3-devel
+Substitute: ffmpeg3-devel ffmpeg-3-libavcodec-devel
+Prefer: -libavcodec-devel -libavdevice-devel -libavfilter-devel -libavformat-devel -libavresample-devel -libavutil-devel -libpostproc-devel -libswresample-devel -libswscale-devel -ffmpeg-private-devel
+# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg
+Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel
+
+# have choice for libffi
+Prefer: libffi7
+
+# We have opencv and opencv3 - as usual, the unversioned one should win
+Prefer: opencv-devel
+
+# llvm exists in multiple versions
+Prefer: libclang13 libc++1 libc++abi1 libc++-devel libc++abi-devel
+
+# have choice for pkgconfig(smbclient): libsmbclient-devel samba-devel
+Prefer: samba-devel
+# it doesn't work well enough
+Substitute: libsmbclient-devel samba-devel
+Substitute: libwbclient-devel samba-devel
+
+# LUA namespace migration - slowly moving to the new names (keep ports in mind!)
+# lua, lua51, lua52 and lua53 all provide 'lua'; version 5.3 is the 'target'; lua will be deleted in the future
+Prefer: lua53 lua51 lua52 lua
+Prefer: liblua5_3-5 liblua5_1-5 liblua5_2-5
+Prefer: lua53-devel lua51-devel lua52-devel
+Prefer: libtolua++-5_3-devel libtolua++-5_1-devel libtolua++-5_2-devel
+Prefer: -liblua5_3 -liblua5_1 -liblua5_2
+
+# required for systemd SR#263844
+Substitute: libudev-devel systemd-devel
+Substitute: libudev-mini-devel systemd-mini-devel
+Prefer: -libudev-mini-devel
+
+# SLE product and SLE-Module-Development-Tools-OBS module providing different versions
+Prefer: libgnome-desktop-3-18
+Prefer: libgnomekbd8
+Prefer: typelib-1_0-Gspell-1
+
+# python-cairo vs python-pycairo
+Prefer: python3-pycairo python2-pycairo
+Prefer: python3-pycairo-devel python2-pycairo-devel
+Prefer: python-pycairo-common-devel
+
+Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver
+
+Preinstall: liblua5_3-5
+
+# required after luajit SR#255872
+Prefer: luajit-devel
+#Prefer: -lua51-luajit-devel
+Substitute: lua51-luajit-devel luajit-devel
+
+# needed due to libxml2 (SR#255607)
+Prefer: -python3-libxml2-python -python2-libxml-python
+Substitute: python2-libxml2-python python2-libxml2
+Substitute: python3-libxml2-python python3-libxml2
+
+# Default to Java 11
+Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless
+# Prefer java 8 than java 9 or 10
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+Prefer: java-17-openjdk-devel java-17-openjdk java-17-openjdk-headless java-17-openjdk-javadoc
+# Fall back to Java 10, if there was no java 11 option
+Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless
+# Fall back to Java 9, if there was no java 10 option
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+# And then fall back to java 7 if needed
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+# And then fall back to java 7 bootstrap if needed
+# Prefer: java-1_7_0-bootstrap java-1_7_0-bootstrap-devel java-1_7_0-bootstrap-javadoc java-1_7_0-bootstrap-headless
+Substitute: java2-devel-packages java-devel
+
+# Needed for maven (jsc#SLE-8786)
+Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm
+Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel
+Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap
+Prefer: xml-commons-apis xml-commons-resolver
+Prefer: log4j12-mini
+Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap
+Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap
+Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap
+Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap
+Prefer: bsh2
+Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap
+Prefer: apache-commons-net
+Prefer: gradle groovy-lib eclipse-swt gpars
+
+# have choice for perl(Perl::Critic::Freenode): perl-Perl-Critic-Community perl-Perl-Critic-Freenode
+Prefer: -perl-Perl-Critic-Freenode
+
+# FFMPEG conflict with FFMPEG-5, prefer ffmpeg version from SLE
+Prefer: ffmpeg
+
+# libglfw3 over libglfw3-wayland
+Prefer: libglfw3
+
+# have choice for texlive-genmisc texlive-random
+# have choice for texlive-genmisc texlive-nth
+Prefer: -texlive-genmisc
+
+# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190)
+Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit
+Substitute: postfix-lmdb postfix
+
+# required after IBS SR#228071
+Substitute: kmod-compat kmod
+# replacing module-init-tools
+Prefer: -kmod-compat
+
+# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190)
+Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit
+Substitute: postfix-lmdb postfix
+
+# Conflict with postgresql13-devel-mini
+# Prefer: libpq5
+
+# jsc#SLE-17030
+Ignore: postgresql12-devel-mini:this-is-only-for-build-envs
+Ignore: postgresql13-devel-mini:this-is-only-for-build-envs
+Ignore: postgresql14-devel-mini:this-is-only-for-build-envs
+Prefer: -postgresql13-devel-mini -postgresql12-devel-mini
+Prefer: postgresql14-devel-mini
+
+# required due to liburing2 SR#263841
+Prefer: liburing2-devel -liburing-devel
+
+# unversioned postgresql
+Prefer: postgresql postgresql-server postgresql-devel postgresql-server-devel
+
+# required to workaround libwayland-egl-devel/libwaylang-egl1 issue between Mesa(SUSE:SLE-15:Update) and wayland(SUSE:SLE-15-SP2:GA)
+Substitute: libwayland-egl-devel wayland-devel
+
+# xerces-j2-xml-apis/resolver has been obsoleted but in SP0
+Substitute: xerces-j2-xml-apis xml-commons-apis
+Substitute: xerces-j2-xml-resolver xml-commons-resolver
+
+# have choice for python3-Sphinx >= 1.0.1: python3-Sphinx python3-Sphinx_4_2_0
+Prefer: python3-Sphinx
+
+# have choice for systemd-container needed by libvirt-daemon-driver-qemu: systemd-container systemd-mini-container
+Prefer: systemd-mini-container
+
+# ECO-3147 added a new package which opened several installation choices
+Prefer: -libboost_atomic_legacy -libboost_container_legacy -libboost_context_legacy -libboost_coroutine_legacy -libboost_system_legacy -libboost_thread_legacy -libboost_date_time_legacy
+Prefer: -libboost_fiber_legacy -libboost_filesystem_legacy -libboost_graph_legacy -libboost_iostreams_legacy -libboost_locale_legacy -libboost_log_legacy -libboost_math_legacy
+Prefer: -libboost_program_options_legacy -libboost_random_legacy -libboost_regex_legacy -libboost_serialization_legacy -libboost_signals_legacy -libboost_stacktrace_legacy
+Prefer: -libboost_test_legacy -libboost_timer_legacy -libboost_type_erasure_legacy -libboost_wave_legacy
+
+# IBS is pulling in the outdated txt2tags instead of python3-txt2tags to build thunderbolt-user-space (bsc#1196688)
+Substitute: txt2tags python3-txt2tags
+
+# svrcore has been merged to 389-ds
+Substitute: svrcore-devel 389-ds-devel
+
+# qhull-devel (SLE) and qhull_r-devel
+Substitute: qhull-devel qhull_r-devel
+
+# openSUSE -> SLE magic so many environments can work
+Substitute: desktop-data-openSUSE-extra desktop-data-SLE-extra
+Substitute: desktop-data-openSUSE desktop-data-SLE
+Substitute: openSUSE-release sles-release
+Substitute: wallpaper-branding-openSUSE wallpaper-branding-SLE
+
+
+%ifarch s390x
+Substitute: glibc-devel-32bit
+Substitute: glibc-32bit
+Substitute: glibc-devel-static-32bit
+Substitute: gcc-32bit
+Substitute: gcc-ada-32bit
+Substitute: gcc-c++-32bit
+%endif
+
+
+%define skip_python2 1
+%define _without_python2 1
+
+Macros:
+## PYTHON MACROS BEGIN
+# order of %pythons is important: The last flavor overrides any operation on conflicting files and definitions during expansions,
+# making it the "default" in many cases --> keep the primary python3 provider at the end.
+%pythons %{?!skip_python3:python3}
+%add_python() %{expand:%%define pythons %1 %pythons}
+
+# requested by Scott
+%python_module_iter(a:) %{expand:%%define python %{-a*}} ( %python-%args ) %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}%%{?python_module_iter_%1}}
+# pseudo-undefine for obs: reset for the next expansion within the next call of python_module
+%python_module_iter_STOP %global python %%%%python
+%python_module() %{?!python_module_lua:%{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}}}%{?python_module_lua:%python_module_lua %{**}}
+
+%skip_python2 1
+%_without_python2 1
+:Macros
+
+
+# END PYTHON STUFF
+
+%define is_opensuse 1
+%define is_backports 1
+# I doubt this should set to 1 - maxlin
+# %define _with_mono 1
+
+Macros:
+%is_opensuse 1
+%is_backports 1
+%opensuse_bs 1
+# define which llvm package builds the system libraries
+%product_libs_llvm_ver 15
+:Macros
+
+### from openSUSE:Leap:15.5
+%define _repository standard
+
+Macros:
+%distribution openSUSE:Leap:15.5
+:Macros
+
+
+Release: <CI_CNT>.<B_CNT> spec:lp155.<CI_CNT>.<B_CNT>
+
+# uncomment before RC phase to get aaa_base-malloccheck etc.
+# make sure to rebuild patterns-base and skelcd-openSUSE
+%define _with_betatest 1
+Macros:
+%_with_betatest 1
+:Macros
+
+#
+# product building setup
+#
+#Substitute: kiwi-packagemanager:instsource product-builder-plugin-openSUSE
+Substitute: kiwi-packagemanager:instsource product-builder-plugin-Tumbleweed
+
+# debug tools for local osc debugging
+Substitute: obs:cli_debug_packages gdb vim strace less rzsz
+
+# do not pull rpmlint-Factory-strict unless openSUSE:Leap:15.3
+# not sure this would work as my expectation - maxlin
+Support: !rpmlint-Factory-strict
+
+# temporary for bootstrap
+# Support: !rpmlint-mini !rpmlint-Factory !rpmlint-Factory-strict
+
+Support: !rpmlint-backports
+Support: perl build-mkbaselibs
+Prefer: build-mkbaselibs
+Support: brp-check-suse
+Support: post-build-checks rpmlint-Factory
+
+# bsc#1182698
+Preinstall: rpm-config-SUSE
+
+FileProvides: /usr/bin/pkexec pkexec
+
+# comment out lines below for docker images
+# Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gettext-runtime-mini !postgresql13-devel-mini
+# Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gettext-runtime-mini !postgresql13-devel-mini
+# Substitute: kiwi python3-kiwi
+
+Substitute: build-packages:iso !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !postgresql13-devel-mini
+
+### required change for opensuse-leap-dnf-image
+# Workaround obs-build substitution error by requesting both for either unsatisfied provides
+Substitute: kiwi-packagemanager:dnf dnf microdnf
+Substitute: kiwi-packagemanager:microdnf microdnf dnf
+# For microdnf glib2 stuff
+Prefer: libgio-2_0-0:dbus-1
+
+Prefer: libasan6
+
+Prefer: -SLES_BCL-release -SLES_SAP-release -SLE_HPC-release -SLE_RT-release -SUSE-Manager-Proxy-release -SUSE-Manager-Retail-Branch-Server-release -SUSE-Manager-Server-release -sled-release -unified-installer-release
+
+### Branding related preferences
+Prefer: distribution-logos-openSUSE-Leap
+Prefer: awesome:awesome-branding-upstream
+Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE
+Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream
+Prefer: enlightenment-theme-upstream
+Prefer: fcitx:fcitx-branding-openSUSE
+Prefer: gdm:gdm-branding-upstream
+Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse
+Prefer: glib2:glib2-branding-upstream
+Prefer: gnome-panel:gnome-panel-branding-upstream
+Prefer: gnome-session:gconf2-branding-openSUSE
+Prefer: gnome-session:gnome-session-branding-openSUSE
+Prefer: icewm-theme-branding
+Prefer: kdm:kdm-branding-upstream
+Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream
+Prefer: libgio-2_0-0:gio-branding-upstream
+Prefer: libglib-2_0-0:glib2-branding-upstream
+Prefer: libpurple-branding-upstream
+Prefer: libreoffice:libreoffice-branding-upstream
+Prefer: libsocialweb:libsocialweb-branding-upstream
+Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream
+Prefer: lxde-common:lxde-common-branding-openSUSE
+Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream
+Prefer: NetworkManager:NetworkManager-branding-openSUSE
+Prefer: PackageKit:PackageKit-branding-upstream
+Prefer: plasma5-desktop:plasma5-desktop-branding-upstream
+Prefer: plasma5-workspace:plasma5-workspace-branding-upstream
+Prefer: sddm:sddm-branding-upstream
+Prefer: wallpaper-branding-openSUSE
+# Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream
+# Prefer: xfce4-settings:xfce4-settings-branding-upstream
+# Prefer: xfdesktop:xfdesktop-branding-upstream
+# Prefer: libxfce4ui:libxfce4ui-branding-upstream
+# Prefer: libexo-1-0:libexo-1-0-branding-upstream
+# Prefer: libgarcon-1-0:libgarcon-branding-upstream
+# Prefer: libgarcon-data:libgarcon-branding-upstream
+# Prefer: exo-data:exo-branding-upstream
+Prefer: exo-data:exo-branding-openSUSE
+Prefer: libexo-1-0:libexo-1-0-branding-openSUSE
+Prefer: libgarcon-1-0:libgarcon-branding-openSUSE
+Prefer: libgarcon-data:libgarcon-branding-openSUSE
+Prefer: libxfce4ui:libxfce4ui-branding-openSUSE
+Prefer: xfce4-notifyd:xfce4-notifyd-branding-openSUSE
+Prefer: xfce4-settings:xfce4-settings-branding-openSUSE
+Prefer: xfdesktop:xfdesktop-branding-openSUSE
+Prefer: yast2-branding-openSUSE
+Prefer: yast2-qt:yast2-qt-branding-openSUSE
+Prefer: yast2-theme-openSUSE
+Prefer: gnome-menus:gnome-menus-branding-openSUSE
+
+Prefer: openSUSE-build-key
+Prefer: -suse-build-key
+Prefer: openSUSE-release:openSUSE-release-mini
+Prefer: -sles-release -gio-branding-SLE
+Prefer: openSUSE-EULAs
+
+# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW)
+Prefer: dummy-release
+
+# There are multiple PK backends available. Favor the openSUSE own zypp backend
+Prefer: PackageKit-backend-zypp
+
+# Revert SLE change
+Ignore: !pciutils:pciutils-ids
+
+# Prefer hwdata than pciutils-ids
+Prefer: -pciutils-ids
+Prefer: hwdata
+
+# Obsoleted by gnome-tweaks
+Prefer: -gnome-tweak-tool
+Prefer: -desktop-data-SLE
+
+# 32bit devel package
+Prefer: -libgnutls-devel-32bit
+Prefer: -typelib-1_0-Gst-1_0-32bit
+Prefer: -bluez-devel-32bit
+Prefer: -gdk-pixbuf-devel-32bit
+
+# required after IBS SR#228071
+Substitute: kmod-compat kmod
+# replacing module-init-tools
+Prefer: -kmod-compat
+
+# kubernetes1.18-kubeadm vs kubernetes1.17-kubeadm on kubernetes-kubeadm-provider
+Prefer: kubernetes1.18-kubeadm
+
+# jsc#SLE-17030
+Ignore: postgresql12-devel-mini:this-is-only-for-build-envs
+Ignore: postgresql13-devel-mini:this-is-only-for-build-envs
+Prefer: postgresql13-devel-mini postgresql12-devel-mini
+
+# Undo SLE specific preference
+Prefer: systemd-presets-branding-openSUSE -systemd-presets-branding-SLE -systemd-presets-branding-CAASP
+Prefer: systemd-default-settings-branding-openSUSE -systemd-default-settings-branding-SLE
+Prefer: plymouth-branding-openSUSE -plymouth-branding-SLE
+Prefer: PackageKit-branding-openSUSE -PackageKit-branding-SLE
+
+# bsc#1204657
+Prefer: distribution-logos-openSUSE-icons -systemd-icon-branding-openSUSE
+Substitute: systemd-icon-branding-openSUSE distribution-logos-openSUSE-icons
+
+# Undo these Substitles from Backports
+Substitute: desktop-data-openSUSE-extra desktop-data-openSUSE-extra
+Substitute: desktop-data-openSUSE desktop-data-openSUSE
+Substitute: openSUSE-release openSUSE-release
+Substitute: wallpaper-branding-openSUSE wallpaper-branding-openSUSE
+
+# Reverse these Substitles from Backports
+Substitute: desktop-data-SLE-extra desktop-data-openSUSE-extra
+Substitute: desktop-data-SLE desktop-data-openSUSE
+Substitute: sles-release openSUSE-release
+Substitute: wallpaper-branding-SLE wallpaper-branding-openSUSE
+
+# Prefer coreutils over coreutils-single
+Prefer: -coreutils-single
+
+
+%define suse_version 1500
+%define sle_version 150500
+%define is_opensuse 1
+
+Macros:
+%suse_version 1500
+%sle_version 150500
+%is_opensuse 1
+%is_backports 0
+
+# define which llvm package builds the system libraries
+%product_libs_llvm_ver 15
+
+%sles_version 0
+%_vendor suse
+:Macros
+
+
+Macros:
+%_obs_cpu_flag_exclude yes
+
diff --git a/configs/sle15.0.conf b/configs/sle15.0.conf
new file mode 100755
index 0000000..5f844dd
--- /dev/null
+++ b/configs/sle15.0.conf
@@ -0,0 +1,884 @@
+
+%define gcc_version 7
+
+Substitute: kiwi python3-kiwi
+
+Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15
+Substitute: system-packages:kiwi-product product-builder
+Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper
+
+%ifarch s390
+Substitute: valgrind
+Substitute: valgrind-devel
+Substitute: pkgconfig(valgrind)
+%endif
+%ifarch s390 s390x
+Substitute: libunwind-devel
+Substitute: pkgconfig(libunwind)
+%endif
+
+%ifarch s390 s390x
+Ignore: libsensors4-devel
+%endif
+
+%define _without_mono 1
+Macros:
+%_without_mono 1
+:Macros
+
+Prefer: rpm
+Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel
+Prefer: -liblua5_3 -liblua5_1 -liblua5_2
+
+Preinstall: aaa_base attr bash coreutils diffutils
+Preinstall: filesystem fillup glibc grep
+Preinstall: libbz2-1 libgcc_s1 libncurses6 pam
+Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1
+Preinstall: liblzma5 libcap2 libacl1 libattr1
+Preinstall: libpopt0 libelf1 liblua5_3-5
+Preinstall: libpcre1
+
+Runscripts: aaa_base
+
+Prefer: libdb-4_8-devel
+Prefer: cdrkit-cdrtools-compat genisoimage
+VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1
+VMinstall: kernel-obs-build
+VMInstall: iproute2
+
+FileProvides: /bin/csh tcsh
+FileProvides: /bin/logger util-linux-systemd
+FileProvides: /sbin/netconfig sysconfig-netconfig
+FileProvides: /sbin/setcap libcap-progs
+FileProvides: /usr/bin/csh tcsh
+FileProvides: /usr/bin/docbook2man docbook-utils
+FileProvides: /usr/bin/eu-nm elfutils
+FileProvides: /usr/bin/fipscheck fipscheck
+FileProvides: /usr/bin/killall psmisc
+FileProvides: /usr/bin/mimencode metamail
+FileProvides: /usr/bin/mkisofs cdrkit-cdrtools-compat
+FileProvides: /usr/bin/pkg-config pkg-config
+FileProvides: /usr/bin/python python-base
+FileProvides: /usr/bin/setfacl acl
+FileProvides: /usr/bin/sg_inq sg3_utils
+FileProvides: /usr/bin/tput ncurses-utils
+FileProvides: /usr/bin/xmllint libxml2-tools
+FileProvides: /usr/bin/Xvfb xorg-x11-server
+FileProvides: /usr/sbin/groupadd shadow
+FileProvides: /usr/sbin/lockdev lockdev
+FileProvides: /usr/sbin/useradd shadow
+FileProvides: /usr/sbin/usermod shadow
+
+Required: rpm-build
+# Build all packages with -pie enabled
+Required: gcc-PIE
+
+# the basic stuff
+Support: perl
+Support: brp-check-suse post-build-checks rpmlint-Factory
+
+### Branding related preferences
+Prefer: awesome:awesome-branding-upstream
+Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE
+Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream
+Prefer: enlightenment-theme-upstream
+Prefer: exo-data:exo-branding-upstream
+Prefer: fcitx:fcitx-branding-openSUSE
+Prefer: gdm:gdm-branding-upstream
+Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse
+Prefer: glib2:glib2-branding-upstream
+Prefer: gnome-panel:gnome-panel-branding-upstream
+Prefer: gnome-session:gconf2-branding-openSUSE
+Prefer: gnome-session:gnome-session-branding-openSUSE
+Prefer: icewm-theme-branding
+Prefer: kde4-kdm:kde4-kdm-branding-upstream
+Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream
+Prefer: kdelibs4-branding:kdelibs4-branding-upstream
+Prefer: kdelibs4:kdelibs4-branding-upstream
+Prefer: kdm:kdm-branding-upstream
+Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream
+Prefer: libexo-1-0:libexo-1-0-branding-upstream
+Prefer: libgarcon-1-0:libgarcon-branding-upstream
+Prefer: libgarcon-data:libgarcon-branding-upstream
+Prefer: libgio-2_0-0:gio-branding-upstream
+Prefer: libglib-2_0-0:glib2-branding-upstream
+Prefer: libpurple-branding-upstream
+Prefer: libreoffice:libreoffice-branding-upstream
+Prefer: libsocialweb:libsocialweb-branding-upstream
+Prefer: libxfce4ui:libxfce4ui-branding-upstream
+Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream
+Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream
+Prefer: NetworkManager-branding-upstream
+Prefer: PackageKit:PackageKit-branding-upstream
+Prefer: plasma5-desktop:plasma5-desktop-branding-upstream
+Prefer: plasma5-workspace:plasma5-workspace-branding-upstream
+Prefer: sddm:sddm-branding-upstream
+Prefer: systemd-presets-branding-SLE
+Prefer: wallpaper-branding-openSUSE
+Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream
+Prefer: xfce4-settings:xfce4-settings-branding-upstream
+Prefer: xfdesktop:xfdesktop-branding-upstream
+Prefer: yast2-branding-openSUSE
+Prefer: yast2-qt:yast2-qt-branding-openSUSE
+Prefer: yast2-theme-openSUSE
+
+# Build cycle handling - prefer -mini packages were possible, break deps as needed
+
+Conflict: krb5-devel:krb5-mini
+Conflict: krb5:krb5-mini-devel
+Prefer: gettext-tools-mini gettext-runtime-mini
+Prefer: ghostscript-mini
+Prefer: krb5-mini-devel:krb5-mini
+Prefer: krb5-mini krb5-mini-devel
+Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo
+Prefer: libunbound-devel-mini
+Prefer: log4j-mini
+Prefer: systemd-mini-devel:systemd-mini
+Prefer: systemd-mini systemd-mini-devel libsystemd0-mini
+Prefer: udev-mini libcom_err2-mini libext2fs2-mini
+Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel
+
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: erlang-rebar-obs:this-is-only-for-build-envs
+Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs
+Ignore: jdk-bootstrap:this-is-only-for-build-envs
+Ignore: libsystemd0-mini:this-is-only-for-build-envs
+Ignore: libudev-mini1:this-is-only-for-build-envs
+Ignore: libunbound-devel-mini:this-is-only-for-build-envs
+Ignore: systemd-mini:this-is-only-for-build-envs
+Ignore: udev-mini:this-is-only-for-build-envs
+Ignore: curl-mini:this-is-only-for-build-envs
+Ignore: libcurl-mini-devel:this-is-only-for-build-envs
+Ignore: libcurl4-mini:this-is-only-for-build-envs
+
+# Ring0 packages should not pull in 'info' - making the base VM smaller
+Ignore: binutils:info
+Ignore: bison:info
+Ignore: coreutils:info
+Ignore: cpio:info
+Ignore: diffutils:info
+Ignore: findutils:info
+Ignore: flex:info
+Ignore: gawk:info
+Ignore: gettext-runtime:info
+Ignore: gettext-tools:info
+Ignore: grep:info
+Ignore: groff:info
+Ignore: gzip:info
+Ignore: help2man:info
+Ignore: libgcrypt-devel:info
+Ignore: m4:info
+Ignore: make:info
+Ignore: sed:info
+Ignore: tar:info
+Ignore: util-linux:info
+Ignore: which:info
+
+# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system
+Ignore: Mesa:Mesa-dri
+Ignore: Mesa:Mesa-gallium
+
+# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems
+Conflict: kiwi:curl-mini
+Conflict: kiwi:libudev-mini1
+Conflict: kiwi:systemd-mini
+
+# udev: -full and -mini packages don't mingle well
+Prefer: libudev1:udev
+Conflict: libudev1:udev-mini
+Conflict: udev:libudev-mini1
+
+# systemd: -full and -mini packages don't mingle well
+Conflict: systemd:libsystemd0-mini
+Conflict: systemd-mini-devel:systemd
+
+# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl
+Prefer: -curl-mini -libcurl-mini-devel -libcurl4-mini
+
+#Prefer: -openSUSE-build-key
+# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs)
+Prefer: postfix
+# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal)
+
+# prefer the PHP5 variants over PHP7
+Prefer: php5-ctype
+Prefer: php5-devel
+Prefer: php5-dom
+Prefer: php5-ftp
+Prefer: php5-gd
+Prefer: php5-gettext
+Prefer: php5-mbstring
+Prefer: php5-pear
+Prefer: php5-pear-Archive_Tar
+Prefer: php5-pear-Horde
+Prefer: php5 php5-json
+Prefer: php5-tokenizer
+Prefer: php5-zip
+
+# go exists in mutliple versions by now - we prefer the 'unversioned package'
+Prefer: go
+
+# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one'
+Prefer: python2-pep8 python3-pep8
+
+# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl
+Prefer: perl
+
+# Assist migration to python-pycups (python3-cups is going to be removed)
+Prefer: python3-pycups python-pycups
+
+# Apache requires a MPM - we pick prefork
+Prefer: apache2:apache2-prefork
+
+# for symbol syslog (syslogd is best as it has the least dependencies)
+Prefer: syslogd
+
+# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt
+Prefer: star-rmt
+
+# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon;
+Prefer: notification-daemon
+
+# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW)
+Prefer: dummy-release
+
+# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version
+Prefer: -nodejs4
+
+# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original'
+Prefer: libpulse0-32bit
+
+# do not used openmpi variant to build against netcdf
+Prefer: netcdf-devel
+
+# Below list still needs to be reviewed
+
+Prefer: xorg-x11-Xvnc:icewm
+Prefer: cracklib-dict-small
+Prefer: libstdc++6 libgcc_s1 libquadmath0
+Prefer: libstdc++6-32bit libstdc++6-64bit
+Prefer: libstdc++6-x86
+Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit
+%ifarch s390x
+Prefer: -libstdc++41
+%endif
+Prefer: syslog-service
+Prefer: poppler-tools
+Prefer: libjpeg8-devel libjpeg-turbo
+Prefer: microcode_ctl:kernel-default
+Prefer: gnu-jaf yast2-control-center-qt
+Prefer: vim-normal myspell-american wine
+Prefer: amarok:amarok-xine
+Prefer: kdenetwork3-vnc:tightvnc
+Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api
+Prefer: -dbus-1-nox11
+Prefer: -servletapi3 -servletapi4 -servletapi5
+Prefer: icewm-lite
+Prefer: yast2-ncurses-pkg
+Prefer: monodevelop: mono-addins
+Prefer: texlive-xmltex texlive-tools texlive-jadetex
+Prefer: libesd-devel:esound
+Prefer: libesd0:esound-daemon
+Prefer: package-lists-openSUSE-KDE-cd: esound-daemon
+Prefer: librest-0_7-0
+
+Prefer: rhino:xmlbeans-mini
+Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail
+Prefer: mx4j:log4j-mini
+
+Prefer: rpcbind eclipse-source
+Prefer: libcdio_cdda0 libcdio_paranoia0
+Prefer: boo tog-pegasus
+Prefer: sysvinit(network) wicked-service
+Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd
+Prefer: kdebase4-openSUSE:kdebase4-workspace
+Prefer: ant:xerces-j2
+Prefer: dhcp-client:dhcp
+Prefer: libGLw1
+# provides typelib(St)
+Prefer: -cinnamon
+Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es
+Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el
+Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl
+Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da
+Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb
+Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar
+Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr
+Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el
+Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs
+Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu
+Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv
+Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar
+Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr
+Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el
+Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs
+Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu
+Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv
+Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar
+Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr
+Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el
+Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru
+Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da
+Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv
+Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar
+Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++
+Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g
+Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links
+Prefer: -python-setuptools
+Prefer: -kdenetwork3-InstantMessenger
+Prefer: -icc-profiles
+Prefer: vala
+# in doubt, take xerces
+Prefer: -crimson
+# in doubt, take higher versions
+Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4
+Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3
+Prefer: -rubygem-json_pure-1_5
+Prefer: geronimo-servlet-2_4-api
+Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi
+# python-scimpy: have choice for fftw-devel: fftw3-devel fftw3_3_3_6-gnu-hpc-devel fftw3_3_...
+Prefer: fftw3-devel
+# prefer the small systemd for building
+Prefer: star
+Prefer: xmlgraphics-commons:apache-commons-io
+# the -32bit stuff provides things it shouldn't (hopefully temporary)
+Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit
+Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit
+Prefer: postgresql postgresql-server postgresql-devel
+Prefer: -unzip-rcc
+Prefer: -primus -primus-32bit
+Prefer: -staging-build-key
+Prefer: -sssd-wbclient
+Prefer: -clutter-gst-devel
+Prefer: -opencv-qt5-devel
+# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg
+Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel
+Prefer: -ffmpeg2-devel -python-configparser2
+# as long as kactivities4 exists and is provided
+Prefer: kactivities5
+# oxygen5-icon-theme osboletes oxygen-icon-theme
+Prefer: oxygen5-icon-theme
+Prefer: npm6
+
+# kernel bug (coolo)
+Prefer: kernel-default-devel
+
+# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel
+# Prefer: libmariadb-devel
+Prefer: libmysqlclient-devel
+
+Prefer: wxWidgets-3_0-devel
+Prefer: libopenssl-devel
+
+Prefer: -NX -xaw3dd -db43
+Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis
+Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit
+Prefer: libffi-devel
+Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0
+Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit
+Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit
+Prefer: libgcc_s1-x86 libgcj_bc1
+Prefer: libgomp1 libgomp1-32bit libgomp1-64bit
+Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit
+Prefer: libobjc4 libgfortran3 libquadmath0
+Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini
+Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel
+Prefer: -seamonkey
+Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2
+Prefer: libopenal0-soft openal-soft -lsb-buildenv
+Prefer: -libevent
+Prefer: gnu-crypto libusb-compat-devel
+Prefer: libusb-0_1-4
+Prefer: libreoffice:xerces-j2
+Prefer: k3b:libdvdread4
+Prefer: glibc-devel
+Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4
+Prefer: NetworkManager:dhcp-client
+Prefer: kdebase3-SuSE:kdebase3
+Prefer: pcre-tools
+Prefer: libpopt0 makeinfo
+Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2
+Prefer: libgnome-keyring-devel
+Prefer: gnome-keyring-32bit
+Prefer: linux-glibc-devel
+Prefer: squid sysvinit
+Prefer: libpng16-compat-devel
+Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0
+Prefer: python3-docutils
+Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client
+#needed because new xml-commons package
+Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis
+Prefer: xmlgraphics-fop:xerces-j2
+Prefer: cogl-devel
+Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage
+Prefer: libpsm2-compat
+# choice p11-kit-nss-trust
+Prefer: mozilla-nss-certs
+# amarok dependency resolution
+Prefer: phonon-backend-gstreamer
+# replacing mkinitrd
+Prefer: dracut
+# replacing module-init-tools
+Prefer: kmod-compat
+# Temporary
+Prefer: oxygen5-cursors
+# Temporary
+Prefer: -perl-App-cpanminus
+# libmediaart is prepared for a larger update; for now favor mediaart-1.0
+Prefer: -typelib-1_0-MediaArt-2_0
+Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0
+Prefer: -python-atspi
+Prefer: gettext-its-gtk3 gtk3-schema
+# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory
+Prefer: ghostscript-devel
+# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it
+Prefer: libotf-devel
+
+Ignore: installation-images-openSUSE:cracklib-dict-full
+Ignore: systemd-sysvinit:systemd
+Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome
+Ignore: cracklib:cracklib-dict
+Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev
+Ignore: sysvinit:mingetty
+Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel
+Ignore: libgcj43,libstdc++43-devel
+Ignore: libgcj44,libstdc++44-devel
+Ignore: libgcj45,libstdc++45-devel
+Ignore: libgcj46,libstdc++46-devel
+Ignore: libgcj47,libstdc++47-devel
+Ignore: librtas:util-linux
+Ignore: pwdutils:openslp
+Ignore: rpm:suse-build-key,build-key
+Ignore: cloud-init:cloud-init-config
+# python-pyudev requires libudev1 in normal situations
+Ignore: python-pyudev:libudev1
+Ignore: python-SPARQLWrapper:python-rdflib
+Ignore: python3-SPARQLWrapper:python3-rdflib
+Ignore: bind-utils:bind-libs
+Ignore: portmap:syslogd
+Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng
+Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video
+Ignore: apache2:logrotate
+Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis
+Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper
+Ignore: kdelibs3-devel:libvorbis-devel
+Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb
+Ignore: kdebase3-SuSE:release-notes
+Ignore: jack:alsa,libsndfile
+Ignore: libxml2-devel:readline-devel
+Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration
+Ignore: libgda:file_alteration
+Ignore: gnutls:lzo,libopencdk
+Ignore: gnutls-devel:lzo-devel,libopencdk-devel
+Ignore: pango:cairo,glitz,libpixman,libpng
+Ignore: pango-devel:cairo-devel
+Ignore: cairo-devel:libpixman-devel
+Ignore: libgnomeprint:libgnomecups
+Ignore: libgnomeprintui:libgnomecups
+Ignore: orbit2-devel:indent
+Ignore: qt3:libmng
+Ignore: qt-sql:qt_database_plugin
+Ignore: libgnomecanvas-devel:glib-devel
+Ignore: libgnomeui:gnome-icon-theme,shared-mime-info
+Ignore: scrollkeeper:docbook_4
+Ignore: gnome-desktop:libgnomesu,startup-notification
+Ignore: python-devel:python-tk
+Ignore: libgtk-3-0:adwaita-icon-theme
+Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg
+Ignore: samba-libs:krb5
+Ignore: libbonoboui:gnome-desktop
+Ignore: libxfce4ui-1-0:exo-tools
+Ignore: docbook_4:iso_ent,xmlcharent
+Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification
+Ignore: docbook-xsl-stylesheets:xmlcharent
+Ignore: liby2util-devel:libstdc++-devel,openssl-devel
+Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2
+Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils
+Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel
+Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel
+Ignore: yast2-devtools:libxslt
+Ignore: yast2-iscsi-lio-server:lio-utils
+Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation
+Ignore: yast2-bootloader:bootloader-theme
+Ignore: yast2-packager:yast2-x11,libyui_pkg
+Ignore: autoyast2:yast2-schema
+# not during build
+Ignore: yui_backend
+Ignore: yast2-x11:sax2-libsax-perl
+Ignore: yast2-network:yast2-inetd
+Ignore: openslp-devel:openssl-devel
+Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed
+Ignore: texlive-bin:ghostscript-x11
+Ignore: texlive-bin-omega:ghostscript-x11
+Ignore: yast2-country:yast2-trans-stats
+Ignore: tpb:tpctl-kmp
+Ignore: tpctl:tpctl-kmp
+Ignore: zaptel:zaptel-kmp
+Ignore: mkinitrd:pciutils
+Ignore: pciutils:pciutils-ids
+Ignore: postfix:iproute2
+Ignore: aaa_base:systemd
+Ignore: gpm:systemd
+Ignore: openssh:systemd
+Ignore: cronie:systemd
+Ignore: systemd:kbd
+Ignore: systemd:kmod
+Ignore: systemd:systemd-presets-branding
+Ignore: systemd:dbus-1
+Ignore: systemd:pam-config
+Ignore: systemd:udev
+Ignore: pesign:systemd
+Ignore: logrotate:cron
+Ignore: texlive-filesystem:cron
+Ignore: xinit:xterm
+Ignore: xdm:xterm
+Ignore: gnome-control-center:gnome-themes-accessibility
+
+
+Ignore: man:groff-full
+Ignore: git-core:rsync
+Ignore: apache2:systemd
+Ignore: icewm-lite:icewm
+Ignore: cluster-glue:sudo
+Ignore: libgcc:glibc-32bit
+Ignore: libgcc41:glibc-32bit
+Ignore: libgcc42:glibc-32bit
+Ignore: libgcc43:glibc-32bit
+Ignore: libgcc44:glibc-32bit
+Ignore: libgcc45:glibc-32bit
+Ignore: libgcc46:glibc-32bit
+Ignore: libgcc47:glibc-32bit
+Ignore: libstdc++:glibc-32bit
+Ignore: libstdc41++:glibc-32bit
+Ignore: libstdc42++:glibc-32bit
+Ignore: libstdc43++:glibc-32bit
+Ignore: libstdc44++:glibc-32bit
+Ignore: libstdc45++:glibc-32bit
+Ignore: libstdc46++:glibc-32bit
+Ignore: libstdc47++:glibc-32bit
+Ignore: ncurses-32bit
+
+Ignore: susehelp:susehelp_lang,suse_help_viewer
+Ignore: mailx:smtp_daemon
+Ignore: cron:smtp_daemon
+Ignore: hotplug:syslog
+Ignore: pcmcia:syslog
+Ignore: openct:syslog
+Ignore: postfix:sysvinit(syslog)
+Ignore: cups:sysvinit(syslog)
+Ignore: jython:servlet
+Ignore: ispell:ispell_dictionary,ispell_english_dictionary
+Ignore: aspell:aspel_dictionary,aspell_dictionary
+Ignore: smartlink-softmodem:kernel,kernel-nongpl
+Ignore: libreoffice-de:myspell-german-dictionary
+Ignore: libreoffice:libreoffice-i18n
+Ignore: libreoffice:libreoffice-icon-themes
+Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any
+Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl
+Ignore: perl-Log-Log4perl:rrdtool
+
+Ignore: simias:mono(log4net)
+Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php
+
+Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver
+Ignore: xdg-menu:desktop-data
+Ignore: nessus-libraries:nessus-core
+Ignore: evolution:yelp
+Ignore: e17:e17-branding e17:e17-theme
+
+Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp)
+Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp)
+
+Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4)
+Ignore: libcdio:libcddb.so.2
+
+Ignore: coreutils:coreutils-lang
+Ignore: cpio:cpio-lang
+Ignore: glib2:glib2-lang
+Ignore: gtk2:gtk2-lang
+Ignore: gtk:gtk-lang
+Ignore: atk:atk-lang
+Ignore: MozillaThunderbird:pinentry-dialog
+Ignore: seamonkey:pinentry-dialog
+Ignore: pinentry:pinentry-dialog
+Ignore: gpg2:gpg2-lang
+Ignore: util-linux:util-linux-lang
+Ignore: suseRegister:distribution-release
+Ignore: compiz:compiz-decorator
+Ignore: icecream:gcc-c++
+Ignore: no
+Ignore: package
+Ignore: provides
+Ignore: j9vm/libjvm.so()(64bit)
+Ignore: kdepim3:suse_help_viewer
+Ignore: kdebase3-SuSE:kdebase3-SuSE-branding
+Ignore: kio_sysinfo:kdebase3-SuSE-branding
+Ignore: gnome-menus:gnome-menus-branding
+Ignore: epiphany:epiphany-branding
+Ignore: gnome-control-center:gnome-control-center-branding
+Ignore: phonon:phonon-backend
+Ignore: openwbem-devel
+Ignore: MozillaFirefox:MozillaFirefox-branding
+Ignore: yast2:yast2-branding
+Ignore: plymouth:plymouth-branding
+Ignore: plymouth:suspend
+Ignore: yast2-qt:yast2-branding
+Ignore: yast2-theme-SLE:yast2-branding
+Ignore: yast2-registration:yast2-registration-branding
+Ignore: compiz:compiz-branding
+Ignore: texlive:perl-Tk texlive-bin:perl-Tk
+Ignore: xfce4-desktop:xfce4-desktop-branding
+Ignore: xfce4-panel:xfce4-panel-branding
+Ignore: xfce4-session:xfce4-session-branding
+Ignore: kdebase4-runtime:kdebase4-runtime-branding
+Ignore: kwin:kdebase4-workspace-branding
+Ignore: transmission-common:transmission-ui
+Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd
+Ignore: mkinitrd:sbin_init samba-client:cifs-utils
+Ignore: opensc:pinentry
+Ignore: gpg2:pinentry
+Ignore: NetworkManager:dhcp
+Ignore: NetworkManager:iproute2
+# sysconfig requires it at runtime, not buildtime
+Ignore: sysconfig:dbus-1
+Ignore: sysconfig:procps
+Ignore: sysconfig:iproute2
+Ignore: sysconfig-network:iproute2
+Ignore: sysconfig:tunctl
+Ignore: sysconfig:sysvinit(network)
+# no build dependencies
+Ignore: libksuseinstall1:yast2-packager
+Ignore: libksuseinstall1:zypper
+Ignore: syslog-service:logrotate
+Ignore: libglue-devel:cluster-glue
+Ignore: libqca2:gpg2
+Ignore: NetworkManager:wpa_supplicant
+Ignore: NetworkManager:dhcp-client
+Ignore: openSUSE-release:product_flavor(openSUSE)
+Ignore: libgio-2_0-0:dbus-1-x11
+Ignore: weather-wallpaper:inkscape
+Ignore: libgamin-1-0:gamin-server
+Ignore: libfam0-gamin:gamin-server
+Ignore: python3:python3-pip
+Ignore: avahi:sysvinit(network)
+Ignore: cluster-glue:sysvinit(network)
+Ignore: dracut:systemd-sysvinit
+# actually a workaround for installation-images requiring
+# gettext-runtime-mini and getting conflict because systat
+# requires gettext (which is only provided by !-mini)
+Ignore: saptune:sysstat
+
+Macros:
+# RUBY - UNVERSIONED STUFF
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in the
+# prjconf aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}}
+%rubygemsSTOP() %nil
+%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*}
+%rubygemsxxSTOP(a:) %{-a*}) %*
+
+%rubySTOP() %nil
+%rubyxSTOP() %*
+
+%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}}
+
+%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}}
+
+%rubydevelSTOP() %nil
+%rubydevelxSTOP() %*
+#
+
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in
+# ruby2.5 aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}}
+%rubygemsxruby25() %{expand:%%{rubygemsx%*}}
+
+%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}}
+%rubyxruby25() %{expand:%%{rubyx%*}}
+
+%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}}
+%rubydevelxruby25() %{expand:%%{rubydevelx%*}}
+
+
+### Things to define default ruby stuff for the distro
+%rb_default_ruby ruby25
+%rb_default_ruby_suffix ruby2.5
+%rb_default_ruby_abi ruby:2.5.0
+:Macros
+
+Macros:
+%rb_build_ruby_abis ruby:2.5.0
+%rb_build_versions ruby25
+
+%_with_ruby25 1
+:Macros
+
+%define rb_default_ruby ruby25
+%define rb_default_ruby_suffix ruby2.5
+%define rb_default_ruby_abi ruby:2.5.0
+
+%define rb_build_ruby_abis ruby:2.5.0
+%define rb_build_versions ruby25
+
+%define _with_ruby25 1
+
+Prefer: -ruby-stdlib
+Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm
+Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus
+Prefer: %{rb_default_ruby_suffix}-rubygem-yard
+Prefer: %{rb_default_ruby_suffix}-rubygem-rspec
+Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake
+Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah
+Prefer: %{rb_default_ruby_suffix}-rubygem-inifile
+Prefer: %{rb_default_ruby_suffix}-rubygem-bundler
+Prefer: %{rb_default_ruby_suffix}-rubygem-sass
+Prefer: %{rb_default_ruby_suffix}-rubygem-cfa
+Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types
+
+# END RUBY STUFF
+
+# PYTHON STUFF
+
+Macros:
+%pythons %{?!skip_python2:python2} %{?!skip_python3:python3}
+
+# This method for generating python_modules gets too deep to expand at about 5 python flavors.
+# It is replaced by a Lua macro in macros.lua
+# However, OBS has a much higher expansion depth, so this works fine.
+%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}}
+%python_module_iter_STOP stop
+%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}}
+
+%add_python() %{expand:%%define pythons %pythons %1}
+:Macros
+
+# END PYTHON STUFF
+
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+# Prefer java 8 if java 9 was no option
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+# And then fall back to jaba 7 if needed
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+Substitute: java2-devel-packages java-devel
+
+%ifarch x86_64 ppc64 s390x sparc64
+Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit
+%else
+ %ifarch ppc sparc sparcv9
+Substitute: glibc-devel-32bit glibc-devel-64bit
+ %else
+Substitute: glibc-devel-32bit
+ %endif
+%endif
+
+%ifarch %ix86
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen
+%endif
+%ifarch ia64
+Substitute: kernel-binary-packages kernel-default kernel-debug
+%endif
+%ifarch x86_64
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen
+%endif
+%ifarch ppc
+Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3
+%endif
+%ifarch ppc64
+Substitute: kernel-binary-packages kernel-default kernel-ppc64
+%endif
+%ifarch s390
+Substitute: kernel-binary-packages kernel-s390
+%endif
+%ifarch s390x
+Substitute: kernel-binary-packages kernel-default
+%endif
+
+Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches
+# no longer needed according to Richard Biener
+# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector
+Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390x -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches
+# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops)
+Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+
+%ifarch armv7l armv7hl
+Target: armv7hl-suse-linux
+%endif
+
+Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection
+
+%define suse_version 1500
+%define sle_version 150000
+
+%define is_susecaasp 1
+%define is_susesap 1
+
+Macros:
+%suse_version 1500
+%sle_version 150000
+%is_susecaasp 1
+%is_susesap 1
+
+%insserv_prereq insserv sed
+%fillup_prereq fillup coreutils grep diffutils
+%suseconfig_fonts_prereq perl aaa_base
+%install_info_prereq info
+%kernel_module_package_buildreq kmod-compat kernel-syms
+%kernel_module_package_buildreqs kmod-compat kernel-syms
+
+%sles_version 0
+%do_profiling 1
+%_vendor suse
+
+# Reproducible builds
+%source_date_epoch_from_changelog Y
+
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 7
+# The following shlibs have latest versions built from GCC 6 sources
+%product_libs_gcc_ver_libasan3 6
+%product_libs_gcc_ver_libgo9 6
+%product_libs_gcc_ver_libgfortran3 6
+# reminded by richi 2017 4/3
+%product_libs_gcc_ver_libgcj_bc1 6
+# The following shlibs have been introduced with GCC 7
+%product_libs_gcc_ver_libmpxwrappers2 7
+%product_libs_gcc_ver_libmpx2 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libgfortran4 7
+%gcc_version 7
+
+%ext_info .gz
+%ext_man .gz
+
+%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+
+%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+:Macros
+
diff --git a/configs/sle15.1.conf b/configs/sle15.1.conf
new file mode 100755
index 0000000..5f844dd
--- /dev/null
+++ b/configs/sle15.1.conf
@@ -0,0 +1,884 @@
+
+%define gcc_version 7
+
+Substitute: kiwi python3-kiwi
+
+Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15
+Substitute: system-packages:kiwi-product product-builder
+Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper
+
+%ifarch s390
+Substitute: valgrind
+Substitute: valgrind-devel
+Substitute: pkgconfig(valgrind)
+%endif
+%ifarch s390 s390x
+Substitute: libunwind-devel
+Substitute: pkgconfig(libunwind)
+%endif
+
+%ifarch s390 s390x
+Ignore: libsensors4-devel
+%endif
+
+%define _without_mono 1
+Macros:
+%_without_mono 1
+:Macros
+
+Prefer: rpm
+Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel
+Prefer: -liblua5_3 -liblua5_1 -liblua5_2
+
+Preinstall: aaa_base attr bash coreutils diffutils
+Preinstall: filesystem fillup glibc grep
+Preinstall: libbz2-1 libgcc_s1 libncurses6 pam
+Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1
+Preinstall: liblzma5 libcap2 libacl1 libattr1
+Preinstall: libpopt0 libelf1 liblua5_3-5
+Preinstall: libpcre1
+
+Runscripts: aaa_base
+
+Prefer: libdb-4_8-devel
+Prefer: cdrkit-cdrtools-compat genisoimage
+VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1
+VMinstall: kernel-obs-build
+VMInstall: iproute2
+
+FileProvides: /bin/csh tcsh
+FileProvides: /bin/logger util-linux-systemd
+FileProvides: /sbin/netconfig sysconfig-netconfig
+FileProvides: /sbin/setcap libcap-progs
+FileProvides: /usr/bin/csh tcsh
+FileProvides: /usr/bin/docbook2man docbook-utils
+FileProvides: /usr/bin/eu-nm elfutils
+FileProvides: /usr/bin/fipscheck fipscheck
+FileProvides: /usr/bin/killall psmisc
+FileProvides: /usr/bin/mimencode metamail
+FileProvides: /usr/bin/mkisofs cdrkit-cdrtools-compat
+FileProvides: /usr/bin/pkg-config pkg-config
+FileProvides: /usr/bin/python python-base
+FileProvides: /usr/bin/setfacl acl
+FileProvides: /usr/bin/sg_inq sg3_utils
+FileProvides: /usr/bin/tput ncurses-utils
+FileProvides: /usr/bin/xmllint libxml2-tools
+FileProvides: /usr/bin/Xvfb xorg-x11-server
+FileProvides: /usr/sbin/groupadd shadow
+FileProvides: /usr/sbin/lockdev lockdev
+FileProvides: /usr/sbin/useradd shadow
+FileProvides: /usr/sbin/usermod shadow
+
+Required: rpm-build
+# Build all packages with -pie enabled
+Required: gcc-PIE
+
+# the basic stuff
+Support: perl
+Support: brp-check-suse post-build-checks rpmlint-Factory
+
+### Branding related preferences
+Prefer: awesome:awesome-branding-upstream
+Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE
+Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream
+Prefer: enlightenment-theme-upstream
+Prefer: exo-data:exo-branding-upstream
+Prefer: fcitx:fcitx-branding-openSUSE
+Prefer: gdm:gdm-branding-upstream
+Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse
+Prefer: glib2:glib2-branding-upstream
+Prefer: gnome-panel:gnome-panel-branding-upstream
+Prefer: gnome-session:gconf2-branding-openSUSE
+Prefer: gnome-session:gnome-session-branding-openSUSE
+Prefer: icewm-theme-branding
+Prefer: kde4-kdm:kde4-kdm-branding-upstream
+Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream
+Prefer: kdelibs4-branding:kdelibs4-branding-upstream
+Prefer: kdelibs4:kdelibs4-branding-upstream
+Prefer: kdm:kdm-branding-upstream
+Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream
+Prefer: libexo-1-0:libexo-1-0-branding-upstream
+Prefer: libgarcon-1-0:libgarcon-branding-upstream
+Prefer: libgarcon-data:libgarcon-branding-upstream
+Prefer: libgio-2_0-0:gio-branding-upstream
+Prefer: libglib-2_0-0:glib2-branding-upstream
+Prefer: libpurple-branding-upstream
+Prefer: libreoffice:libreoffice-branding-upstream
+Prefer: libsocialweb:libsocialweb-branding-upstream
+Prefer: libxfce4ui:libxfce4ui-branding-upstream
+Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream
+Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream
+Prefer: NetworkManager-branding-upstream
+Prefer: PackageKit:PackageKit-branding-upstream
+Prefer: plasma5-desktop:plasma5-desktop-branding-upstream
+Prefer: plasma5-workspace:plasma5-workspace-branding-upstream
+Prefer: sddm:sddm-branding-upstream
+Prefer: systemd-presets-branding-SLE
+Prefer: wallpaper-branding-openSUSE
+Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream
+Prefer: xfce4-settings:xfce4-settings-branding-upstream
+Prefer: xfdesktop:xfdesktop-branding-upstream
+Prefer: yast2-branding-openSUSE
+Prefer: yast2-qt:yast2-qt-branding-openSUSE
+Prefer: yast2-theme-openSUSE
+
+# Build cycle handling - prefer -mini packages were possible, break deps as needed
+
+Conflict: krb5-devel:krb5-mini
+Conflict: krb5:krb5-mini-devel
+Prefer: gettext-tools-mini gettext-runtime-mini
+Prefer: ghostscript-mini
+Prefer: krb5-mini-devel:krb5-mini
+Prefer: krb5-mini krb5-mini-devel
+Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo
+Prefer: libunbound-devel-mini
+Prefer: log4j-mini
+Prefer: systemd-mini-devel:systemd-mini
+Prefer: systemd-mini systemd-mini-devel libsystemd0-mini
+Prefer: udev-mini libcom_err2-mini libext2fs2-mini
+Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel
+
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: erlang-rebar-obs:this-is-only-for-build-envs
+Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs
+Ignore: jdk-bootstrap:this-is-only-for-build-envs
+Ignore: libsystemd0-mini:this-is-only-for-build-envs
+Ignore: libudev-mini1:this-is-only-for-build-envs
+Ignore: libunbound-devel-mini:this-is-only-for-build-envs
+Ignore: systemd-mini:this-is-only-for-build-envs
+Ignore: udev-mini:this-is-only-for-build-envs
+Ignore: curl-mini:this-is-only-for-build-envs
+Ignore: libcurl-mini-devel:this-is-only-for-build-envs
+Ignore: libcurl4-mini:this-is-only-for-build-envs
+
+# Ring0 packages should not pull in 'info' - making the base VM smaller
+Ignore: binutils:info
+Ignore: bison:info
+Ignore: coreutils:info
+Ignore: cpio:info
+Ignore: diffutils:info
+Ignore: findutils:info
+Ignore: flex:info
+Ignore: gawk:info
+Ignore: gettext-runtime:info
+Ignore: gettext-tools:info
+Ignore: grep:info
+Ignore: groff:info
+Ignore: gzip:info
+Ignore: help2man:info
+Ignore: libgcrypt-devel:info
+Ignore: m4:info
+Ignore: make:info
+Ignore: sed:info
+Ignore: tar:info
+Ignore: util-linux:info
+Ignore: which:info
+
+# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system
+Ignore: Mesa:Mesa-dri
+Ignore: Mesa:Mesa-gallium
+
+# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems
+Conflict: kiwi:curl-mini
+Conflict: kiwi:libudev-mini1
+Conflict: kiwi:systemd-mini
+
+# udev: -full and -mini packages don't mingle well
+Prefer: libudev1:udev
+Conflict: libudev1:udev-mini
+Conflict: udev:libudev-mini1
+
+# systemd: -full and -mini packages don't mingle well
+Conflict: systemd:libsystemd0-mini
+Conflict: systemd-mini-devel:systemd
+
+# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl
+Prefer: -curl-mini -libcurl-mini-devel -libcurl4-mini
+
+#Prefer: -openSUSE-build-key
+# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs)
+Prefer: postfix
+# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal)
+
+# prefer the PHP5 variants over PHP7
+Prefer: php5-ctype
+Prefer: php5-devel
+Prefer: php5-dom
+Prefer: php5-ftp
+Prefer: php5-gd
+Prefer: php5-gettext
+Prefer: php5-mbstring
+Prefer: php5-pear
+Prefer: php5-pear-Archive_Tar
+Prefer: php5-pear-Horde
+Prefer: php5 php5-json
+Prefer: php5-tokenizer
+Prefer: php5-zip
+
+# go exists in mutliple versions by now - we prefer the 'unversioned package'
+Prefer: go
+
+# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one'
+Prefer: python2-pep8 python3-pep8
+
+# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl
+Prefer: perl
+
+# Assist migration to python-pycups (python3-cups is going to be removed)
+Prefer: python3-pycups python-pycups
+
+# Apache requires a MPM - we pick prefork
+Prefer: apache2:apache2-prefork
+
+# for symbol syslog (syslogd is best as it has the least dependencies)
+Prefer: syslogd
+
+# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt
+Prefer: star-rmt
+
+# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon;
+Prefer: notification-daemon
+
+# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW)
+Prefer: dummy-release
+
+# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version
+Prefer: -nodejs4
+
+# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original'
+Prefer: libpulse0-32bit
+
+# do not used openmpi variant to build against netcdf
+Prefer: netcdf-devel
+
+# Below list still needs to be reviewed
+
+Prefer: xorg-x11-Xvnc:icewm
+Prefer: cracklib-dict-small
+Prefer: libstdc++6 libgcc_s1 libquadmath0
+Prefer: libstdc++6-32bit libstdc++6-64bit
+Prefer: libstdc++6-x86
+Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit
+%ifarch s390x
+Prefer: -libstdc++41
+%endif
+Prefer: syslog-service
+Prefer: poppler-tools
+Prefer: libjpeg8-devel libjpeg-turbo
+Prefer: microcode_ctl:kernel-default
+Prefer: gnu-jaf yast2-control-center-qt
+Prefer: vim-normal myspell-american wine
+Prefer: amarok:amarok-xine
+Prefer: kdenetwork3-vnc:tightvnc
+Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api
+Prefer: -dbus-1-nox11
+Prefer: -servletapi3 -servletapi4 -servletapi5
+Prefer: icewm-lite
+Prefer: yast2-ncurses-pkg
+Prefer: monodevelop: mono-addins
+Prefer: texlive-xmltex texlive-tools texlive-jadetex
+Prefer: libesd-devel:esound
+Prefer: libesd0:esound-daemon
+Prefer: package-lists-openSUSE-KDE-cd: esound-daemon
+Prefer: librest-0_7-0
+
+Prefer: rhino:xmlbeans-mini
+Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail
+Prefer: mx4j:log4j-mini
+
+Prefer: rpcbind eclipse-source
+Prefer: libcdio_cdda0 libcdio_paranoia0
+Prefer: boo tog-pegasus
+Prefer: sysvinit(network) wicked-service
+Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd
+Prefer: kdebase4-openSUSE:kdebase4-workspace
+Prefer: ant:xerces-j2
+Prefer: dhcp-client:dhcp
+Prefer: libGLw1
+# provides typelib(St)
+Prefer: -cinnamon
+Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es
+Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el
+Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl
+Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da
+Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb
+Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar
+Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr
+Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el
+Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs
+Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu
+Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv
+Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar
+Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr
+Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el
+Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs
+Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu
+Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv
+Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar
+Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr
+Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el
+Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru
+Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da
+Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv
+Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar
+Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++
+Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g
+Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links
+Prefer: -python-setuptools
+Prefer: -kdenetwork3-InstantMessenger
+Prefer: -icc-profiles
+Prefer: vala
+# in doubt, take xerces
+Prefer: -crimson
+# in doubt, take higher versions
+Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4
+Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3
+Prefer: -rubygem-json_pure-1_5
+Prefer: geronimo-servlet-2_4-api
+Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi
+# python-scimpy: have choice for fftw-devel: fftw3-devel fftw3_3_3_6-gnu-hpc-devel fftw3_3_...
+Prefer: fftw3-devel
+# prefer the small systemd for building
+Prefer: star
+Prefer: xmlgraphics-commons:apache-commons-io
+# the -32bit stuff provides things it shouldn't (hopefully temporary)
+Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit
+Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit
+Prefer: postgresql postgresql-server postgresql-devel
+Prefer: -unzip-rcc
+Prefer: -primus -primus-32bit
+Prefer: -staging-build-key
+Prefer: -sssd-wbclient
+Prefer: -clutter-gst-devel
+Prefer: -opencv-qt5-devel
+# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg
+Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel
+Prefer: -ffmpeg2-devel -python-configparser2
+# as long as kactivities4 exists and is provided
+Prefer: kactivities5
+# oxygen5-icon-theme osboletes oxygen-icon-theme
+Prefer: oxygen5-icon-theme
+Prefer: npm6
+
+# kernel bug (coolo)
+Prefer: kernel-default-devel
+
+# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel
+# Prefer: libmariadb-devel
+Prefer: libmysqlclient-devel
+
+Prefer: wxWidgets-3_0-devel
+Prefer: libopenssl-devel
+
+Prefer: -NX -xaw3dd -db43
+Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis
+Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit
+Prefer: libffi-devel
+Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0
+Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit
+Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit
+Prefer: libgcc_s1-x86 libgcj_bc1
+Prefer: libgomp1 libgomp1-32bit libgomp1-64bit
+Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit
+Prefer: libobjc4 libgfortran3 libquadmath0
+Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini
+Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel
+Prefer: -seamonkey
+Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2
+Prefer: libopenal0-soft openal-soft -lsb-buildenv
+Prefer: -libevent
+Prefer: gnu-crypto libusb-compat-devel
+Prefer: libusb-0_1-4
+Prefer: libreoffice:xerces-j2
+Prefer: k3b:libdvdread4
+Prefer: glibc-devel
+Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4
+Prefer: NetworkManager:dhcp-client
+Prefer: kdebase3-SuSE:kdebase3
+Prefer: pcre-tools
+Prefer: libpopt0 makeinfo
+Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2
+Prefer: libgnome-keyring-devel
+Prefer: gnome-keyring-32bit
+Prefer: linux-glibc-devel
+Prefer: squid sysvinit
+Prefer: libpng16-compat-devel
+Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0
+Prefer: python3-docutils
+Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client
+#needed because new xml-commons package
+Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis
+Prefer: xmlgraphics-fop:xerces-j2
+Prefer: cogl-devel
+Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage
+Prefer: libpsm2-compat
+# choice p11-kit-nss-trust
+Prefer: mozilla-nss-certs
+# amarok dependency resolution
+Prefer: phonon-backend-gstreamer
+# replacing mkinitrd
+Prefer: dracut
+# replacing module-init-tools
+Prefer: kmod-compat
+# Temporary
+Prefer: oxygen5-cursors
+# Temporary
+Prefer: -perl-App-cpanminus
+# libmediaart is prepared for a larger update; for now favor mediaart-1.0
+Prefer: -typelib-1_0-MediaArt-2_0
+Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0
+Prefer: -python-atspi
+Prefer: gettext-its-gtk3 gtk3-schema
+# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory
+Prefer: ghostscript-devel
+# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it
+Prefer: libotf-devel
+
+Ignore: installation-images-openSUSE:cracklib-dict-full
+Ignore: systemd-sysvinit:systemd
+Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome
+Ignore: cracklib:cracklib-dict
+Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev
+Ignore: sysvinit:mingetty
+Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel
+Ignore: libgcj43,libstdc++43-devel
+Ignore: libgcj44,libstdc++44-devel
+Ignore: libgcj45,libstdc++45-devel
+Ignore: libgcj46,libstdc++46-devel
+Ignore: libgcj47,libstdc++47-devel
+Ignore: librtas:util-linux
+Ignore: pwdutils:openslp
+Ignore: rpm:suse-build-key,build-key
+Ignore: cloud-init:cloud-init-config
+# python-pyudev requires libudev1 in normal situations
+Ignore: python-pyudev:libudev1
+Ignore: python-SPARQLWrapper:python-rdflib
+Ignore: python3-SPARQLWrapper:python3-rdflib
+Ignore: bind-utils:bind-libs
+Ignore: portmap:syslogd
+Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng
+Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video
+Ignore: apache2:logrotate
+Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis
+Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper
+Ignore: kdelibs3-devel:libvorbis-devel
+Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb
+Ignore: kdebase3-SuSE:release-notes
+Ignore: jack:alsa,libsndfile
+Ignore: libxml2-devel:readline-devel
+Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration
+Ignore: libgda:file_alteration
+Ignore: gnutls:lzo,libopencdk
+Ignore: gnutls-devel:lzo-devel,libopencdk-devel
+Ignore: pango:cairo,glitz,libpixman,libpng
+Ignore: pango-devel:cairo-devel
+Ignore: cairo-devel:libpixman-devel
+Ignore: libgnomeprint:libgnomecups
+Ignore: libgnomeprintui:libgnomecups
+Ignore: orbit2-devel:indent
+Ignore: qt3:libmng
+Ignore: qt-sql:qt_database_plugin
+Ignore: libgnomecanvas-devel:glib-devel
+Ignore: libgnomeui:gnome-icon-theme,shared-mime-info
+Ignore: scrollkeeper:docbook_4
+Ignore: gnome-desktop:libgnomesu,startup-notification
+Ignore: python-devel:python-tk
+Ignore: libgtk-3-0:adwaita-icon-theme
+Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg
+Ignore: samba-libs:krb5
+Ignore: libbonoboui:gnome-desktop
+Ignore: libxfce4ui-1-0:exo-tools
+Ignore: docbook_4:iso_ent,xmlcharent
+Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification
+Ignore: docbook-xsl-stylesheets:xmlcharent
+Ignore: liby2util-devel:libstdc++-devel,openssl-devel
+Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2
+Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils
+Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel
+Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel
+Ignore: yast2-devtools:libxslt
+Ignore: yast2-iscsi-lio-server:lio-utils
+Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation
+Ignore: yast2-bootloader:bootloader-theme
+Ignore: yast2-packager:yast2-x11,libyui_pkg
+Ignore: autoyast2:yast2-schema
+# not during build
+Ignore: yui_backend
+Ignore: yast2-x11:sax2-libsax-perl
+Ignore: yast2-network:yast2-inetd
+Ignore: openslp-devel:openssl-devel
+Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed
+Ignore: texlive-bin:ghostscript-x11
+Ignore: texlive-bin-omega:ghostscript-x11
+Ignore: yast2-country:yast2-trans-stats
+Ignore: tpb:tpctl-kmp
+Ignore: tpctl:tpctl-kmp
+Ignore: zaptel:zaptel-kmp
+Ignore: mkinitrd:pciutils
+Ignore: pciutils:pciutils-ids
+Ignore: postfix:iproute2
+Ignore: aaa_base:systemd
+Ignore: gpm:systemd
+Ignore: openssh:systemd
+Ignore: cronie:systemd
+Ignore: systemd:kbd
+Ignore: systemd:kmod
+Ignore: systemd:systemd-presets-branding
+Ignore: systemd:dbus-1
+Ignore: systemd:pam-config
+Ignore: systemd:udev
+Ignore: pesign:systemd
+Ignore: logrotate:cron
+Ignore: texlive-filesystem:cron
+Ignore: xinit:xterm
+Ignore: xdm:xterm
+Ignore: gnome-control-center:gnome-themes-accessibility
+
+
+Ignore: man:groff-full
+Ignore: git-core:rsync
+Ignore: apache2:systemd
+Ignore: icewm-lite:icewm
+Ignore: cluster-glue:sudo
+Ignore: libgcc:glibc-32bit
+Ignore: libgcc41:glibc-32bit
+Ignore: libgcc42:glibc-32bit
+Ignore: libgcc43:glibc-32bit
+Ignore: libgcc44:glibc-32bit
+Ignore: libgcc45:glibc-32bit
+Ignore: libgcc46:glibc-32bit
+Ignore: libgcc47:glibc-32bit
+Ignore: libstdc++:glibc-32bit
+Ignore: libstdc41++:glibc-32bit
+Ignore: libstdc42++:glibc-32bit
+Ignore: libstdc43++:glibc-32bit
+Ignore: libstdc44++:glibc-32bit
+Ignore: libstdc45++:glibc-32bit
+Ignore: libstdc46++:glibc-32bit
+Ignore: libstdc47++:glibc-32bit
+Ignore: ncurses-32bit
+
+Ignore: susehelp:susehelp_lang,suse_help_viewer
+Ignore: mailx:smtp_daemon
+Ignore: cron:smtp_daemon
+Ignore: hotplug:syslog
+Ignore: pcmcia:syslog
+Ignore: openct:syslog
+Ignore: postfix:sysvinit(syslog)
+Ignore: cups:sysvinit(syslog)
+Ignore: jython:servlet
+Ignore: ispell:ispell_dictionary,ispell_english_dictionary
+Ignore: aspell:aspel_dictionary,aspell_dictionary
+Ignore: smartlink-softmodem:kernel,kernel-nongpl
+Ignore: libreoffice-de:myspell-german-dictionary
+Ignore: libreoffice:libreoffice-i18n
+Ignore: libreoffice:libreoffice-icon-themes
+Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any
+Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl
+Ignore: perl-Log-Log4perl:rrdtool
+
+Ignore: simias:mono(log4net)
+Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php
+
+Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver
+Ignore: xdg-menu:desktop-data
+Ignore: nessus-libraries:nessus-core
+Ignore: evolution:yelp
+Ignore: e17:e17-branding e17:e17-theme
+
+Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp)
+Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp)
+
+Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4)
+Ignore: libcdio:libcddb.so.2
+
+Ignore: coreutils:coreutils-lang
+Ignore: cpio:cpio-lang
+Ignore: glib2:glib2-lang
+Ignore: gtk2:gtk2-lang
+Ignore: gtk:gtk-lang
+Ignore: atk:atk-lang
+Ignore: MozillaThunderbird:pinentry-dialog
+Ignore: seamonkey:pinentry-dialog
+Ignore: pinentry:pinentry-dialog
+Ignore: gpg2:gpg2-lang
+Ignore: util-linux:util-linux-lang
+Ignore: suseRegister:distribution-release
+Ignore: compiz:compiz-decorator
+Ignore: icecream:gcc-c++
+Ignore: no
+Ignore: package
+Ignore: provides
+Ignore: j9vm/libjvm.so()(64bit)
+Ignore: kdepim3:suse_help_viewer
+Ignore: kdebase3-SuSE:kdebase3-SuSE-branding
+Ignore: kio_sysinfo:kdebase3-SuSE-branding
+Ignore: gnome-menus:gnome-menus-branding
+Ignore: epiphany:epiphany-branding
+Ignore: gnome-control-center:gnome-control-center-branding
+Ignore: phonon:phonon-backend
+Ignore: openwbem-devel
+Ignore: MozillaFirefox:MozillaFirefox-branding
+Ignore: yast2:yast2-branding
+Ignore: plymouth:plymouth-branding
+Ignore: plymouth:suspend
+Ignore: yast2-qt:yast2-branding
+Ignore: yast2-theme-SLE:yast2-branding
+Ignore: yast2-registration:yast2-registration-branding
+Ignore: compiz:compiz-branding
+Ignore: texlive:perl-Tk texlive-bin:perl-Tk
+Ignore: xfce4-desktop:xfce4-desktop-branding
+Ignore: xfce4-panel:xfce4-panel-branding
+Ignore: xfce4-session:xfce4-session-branding
+Ignore: kdebase4-runtime:kdebase4-runtime-branding
+Ignore: kwin:kdebase4-workspace-branding
+Ignore: transmission-common:transmission-ui
+Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd
+Ignore: mkinitrd:sbin_init samba-client:cifs-utils
+Ignore: opensc:pinentry
+Ignore: gpg2:pinentry
+Ignore: NetworkManager:dhcp
+Ignore: NetworkManager:iproute2
+# sysconfig requires it at runtime, not buildtime
+Ignore: sysconfig:dbus-1
+Ignore: sysconfig:procps
+Ignore: sysconfig:iproute2
+Ignore: sysconfig-network:iproute2
+Ignore: sysconfig:tunctl
+Ignore: sysconfig:sysvinit(network)
+# no build dependencies
+Ignore: libksuseinstall1:yast2-packager
+Ignore: libksuseinstall1:zypper
+Ignore: syslog-service:logrotate
+Ignore: libglue-devel:cluster-glue
+Ignore: libqca2:gpg2
+Ignore: NetworkManager:wpa_supplicant
+Ignore: NetworkManager:dhcp-client
+Ignore: openSUSE-release:product_flavor(openSUSE)
+Ignore: libgio-2_0-0:dbus-1-x11
+Ignore: weather-wallpaper:inkscape
+Ignore: libgamin-1-0:gamin-server
+Ignore: libfam0-gamin:gamin-server
+Ignore: python3:python3-pip
+Ignore: avahi:sysvinit(network)
+Ignore: cluster-glue:sysvinit(network)
+Ignore: dracut:systemd-sysvinit
+# actually a workaround for installation-images requiring
+# gettext-runtime-mini and getting conflict because systat
+# requires gettext (which is only provided by !-mini)
+Ignore: saptune:sysstat
+
+Macros:
+# RUBY - UNVERSIONED STUFF
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in the
+# prjconf aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}}
+%rubygemsSTOP() %nil
+%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*}
+%rubygemsxxSTOP(a:) %{-a*}) %*
+
+%rubySTOP() %nil
+%rubyxSTOP() %*
+
+%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}}
+
+%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}}
+
+%rubydevelSTOP() %nil
+%rubydevelxSTOP() %*
+#
+
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in
+# ruby2.5 aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}}
+%rubygemsxruby25() %{expand:%%{rubygemsx%*}}
+
+%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}}
+%rubyxruby25() %{expand:%%{rubyx%*}}
+
+%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}}
+%rubydevelxruby25() %{expand:%%{rubydevelx%*}}
+
+
+### Things to define default ruby stuff for the distro
+%rb_default_ruby ruby25
+%rb_default_ruby_suffix ruby2.5
+%rb_default_ruby_abi ruby:2.5.0
+:Macros
+
+Macros:
+%rb_build_ruby_abis ruby:2.5.0
+%rb_build_versions ruby25
+
+%_with_ruby25 1
+:Macros
+
+%define rb_default_ruby ruby25
+%define rb_default_ruby_suffix ruby2.5
+%define rb_default_ruby_abi ruby:2.5.0
+
+%define rb_build_ruby_abis ruby:2.5.0
+%define rb_build_versions ruby25
+
+%define _with_ruby25 1
+
+Prefer: -ruby-stdlib
+Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm
+Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus
+Prefer: %{rb_default_ruby_suffix}-rubygem-yard
+Prefer: %{rb_default_ruby_suffix}-rubygem-rspec
+Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake
+Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah
+Prefer: %{rb_default_ruby_suffix}-rubygem-inifile
+Prefer: %{rb_default_ruby_suffix}-rubygem-bundler
+Prefer: %{rb_default_ruby_suffix}-rubygem-sass
+Prefer: %{rb_default_ruby_suffix}-rubygem-cfa
+Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types
+
+# END RUBY STUFF
+
+# PYTHON STUFF
+
+Macros:
+%pythons %{?!skip_python2:python2} %{?!skip_python3:python3}
+
+# This method for generating python_modules gets too deep to expand at about 5 python flavors.
+# It is replaced by a Lua macro in macros.lua
+# However, OBS has a much higher expansion depth, so this works fine.
+%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}}
+%python_module_iter_STOP stop
+%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}}
+
+%add_python() %{expand:%%define pythons %pythons %1}
+:Macros
+
+# END PYTHON STUFF
+
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+# Prefer java 8 if java 9 was no option
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+# And then fall back to jaba 7 if needed
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+Substitute: java2-devel-packages java-devel
+
+%ifarch x86_64 ppc64 s390x sparc64
+Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit
+%else
+ %ifarch ppc sparc sparcv9
+Substitute: glibc-devel-32bit glibc-devel-64bit
+ %else
+Substitute: glibc-devel-32bit
+ %endif
+%endif
+
+%ifarch %ix86
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen
+%endif
+%ifarch ia64
+Substitute: kernel-binary-packages kernel-default kernel-debug
+%endif
+%ifarch x86_64
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen
+%endif
+%ifarch ppc
+Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3
+%endif
+%ifarch ppc64
+Substitute: kernel-binary-packages kernel-default kernel-ppc64
+%endif
+%ifarch s390
+Substitute: kernel-binary-packages kernel-s390
+%endif
+%ifarch s390x
+Substitute: kernel-binary-packages kernel-default
+%endif
+
+Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches
+# no longer needed according to Richard Biener
+# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector
+Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390x -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches
+# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops)
+Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+
+%ifarch armv7l armv7hl
+Target: armv7hl-suse-linux
+%endif
+
+Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection
+
+%define suse_version 1500
+%define sle_version 150000
+
+%define is_susecaasp 1
+%define is_susesap 1
+
+Macros:
+%suse_version 1500
+%sle_version 150000
+%is_susecaasp 1
+%is_susesap 1
+
+%insserv_prereq insserv sed
+%fillup_prereq fillup coreutils grep diffutils
+%suseconfig_fonts_prereq perl aaa_base
+%install_info_prereq info
+%kernel_module_package_buildreq kmod-compat kernel-syms
+%kernel_module_package_buildreqs kmod-compat kernel-syms
+
+%sles_version 0
+%do_profiling 1
+%_vendor suse
+
+# Reproducible builds
+%source_date_epoch_from_changelog Y
+
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 7
+# The following shlibs have latest versions built from GCC 6 sources
+%product_libs_gcc_ver_libasan3 6
+%product_libs_gcc_ver_libgo9 6
+%product_libs_gcc_ver_libgfortran3 6
+# reminded by richi 2017 4/3
+%product_libs_gcc_ver_libgcj_bc1 6
+# The following shlibs have been introduced with GCC 7
+%product_libs_gcc_ver_libmpxwrappers2 7
+%product_libs_gcc_ver_libmpx2 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libgfortran4 7
+%gcc_version 7
+
+%ext_info .gz
+%ext_man .gz
+
+%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+
+%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+:Macros
+
diff --git a/configs/sle15.2.conf b/configs/sle15.2.conf
new file mode 100755
index 0000000..e749da7
--- /dev/null
+++ b/configs/sle15.2.conf
@@ -0,0 +1,890 @@
+
+%define gcc_version 7
+
+Substitute: kiwi python3-kiwi
+
+Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15
+Substitute: system-packages:kiwi-product product-builder
+Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper
+
+%ifarch s390
+Substitute: valgrind
+Substitute: valgrind-devel
+Substitute: pkgconfig(valgrind)
+%endif
+%ifarch s390 s390x
+Substitute: libunwind-devel
+Substitute: pkgconfig(libunwind)
+%endif
+
+%ifarch s390 s390x
+Ignore: libsensors4-devel
+%endif
+
+%define _without_mono 1
+Macros:
+%_without_mono 1
+:Macros
+
+Prefer: rpm
+Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel
+Prefer: -liblua5_3 -liblua5_1 -liblua5_2
+
+Preinstall: aaa_base attr bash coreutils diffutils
+Preinstall: filesystem fillup glibc grep
+Preinstall: libbz2-1 libgcc_s1 libncurses6 pam
+Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1
+Preinstall: liblzma5 libcap2 libacl1 libattr1
+Preinstall: libpopt0 libelf1 liblua5_3-5
+Preinstall: libpcre1
+
+Runscripts: aaa_base
+
+Prefer: libdb-4_8-devel
+Prefer: cdrkit-cdrtools-compat genisoimage
+VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1
+VMinstall: kernel-obs-build
+VMInstall: iproute2
+
+# Needed with latest rpm (Use libgcrypt as crypto library for SP2 [jsc#SLE-9552])
+Preinstall: libgcrypt20 libgpg-error0
+
+# Needed with latest rpm (Added zstd support in SLE-15-SP2 [bsc#1162668])
+Preinstall: libzstd1
+
+FileProvides: /bin/csh tcsh
+FileProvides: /bin/logger util-linux-systemd
+FileProvides: /sbin/netconfig sysconfig-netconfig
+FileProvides: /sbin/setcap libcap-progs
+FileProvides: /usr/bin/csh tcsh
+FileProvides: /usr/bin/docbook2man docbook-utils
+FileProvides: /usr/bin/eu-nm elfutils
+FileProvides: /usr/bin/fipscheck fipscheck
+FileProvides: /usr/bin/killall psmisc
+FileProvides: /usr/bin/mimencode metamail
+FileProvides: /usr/bin/mkisofs cdrkit-cdrtools-compat
+FileProvides: /usr/bin/pkg-config pkg-config
+FileProvides: /usr/bin/python python-base
+FileProvides: /usr/bin/setfacl acl
+FileProvides: /usr/bin/sg_inq sg3_utils
+FileProvides: /usr/bin/tput ncurses-utils
+FileProvides: /usr/bin/xmllint libxml2-tools
+FileProvides: /usr/bin/Xvfb xorg-x11-server
+FileProvides: /usr/sbin/groupadd shadow
+FileProvides: /usr/sbin/lockdev lockdev
+FileProvides: /usr/sbin/useradd shadow
+FileProvides: /usr/sbin/usermod shadow
+
+Required: rpm-build
+# Build all packages with -pie enabled
+Required: gcc-PIE
+
+# the basic stuff
+Support: perl
+Support: brp-check-suse post-build-checks rpmlint-Factory
+
+### Branding related preferences
+Prefer: awesome:awesome-branding-upstream
+Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE
+Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream
+Prefer: enlightenment-theme-upstream
+Prefer: exo-data:exo-branding-upstream
+Prefer: fcitx:fcitx-branding-openSUSE
+Prefer: gdm:gdm-branding-upstream
+Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse
+Prefer: glib2:glib2-branding-upstream
+Prefer: gnome-panel:gnome-panel-branding-upstream
+Prefer: gnome-session:gconf2-branding-openSUSE
+Prefer: gnome-session:gnome-session-branding-openSUSE
+Prefer: icewm-theme-branding
+Prefer: kde4-kdm:kde4-kdm-branding-upstream
+Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream
+Prefer: kdelibs4-branding:kdelibs4-branding-upstream
+Prefer: kdelibs4:kdelibs4-branding-upstream
+Prefer: kdm:kdm-branding-upstream
+Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream
+Prefer: libexo-1-0:libexo-1-0-branding-upstream
+Prefer: libgarcon-1-0:libgarcon-branding-upstream
+Prefer: libgarcon-data:libgarcon-branding-upstream
+Prefer: libgio-2_0-0:gio-branding-upstream
+Prefer: libglib-2_0-0:glib2-branding-upstream
+Prefer: libpurple-branding-upstream
+Prefer: libreoffice:libreoffice-branding-upstream
+Prefer: libsocialweb:libsocialweb-branding-upstream
+Prefer: libxfce4ui:libxfce4ui-branding-upstream
+Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream
+Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream
+Prefer: NetworkManager-branding-upstream
+Prefer: PackageKit:PackageKit-branding-upstream
+Prefer: plasma5-desktop:plasma5-desktop-branding-upstream
+Prefer: plasma5-workspace:plasma5-workspace-branding-upstream
+Prefer: sddm:sddm-branding-upstream
+Prefer: systemd-presets-branding-SLE
+Prefer: wallpaper-branding-openSUSE
+Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream
+Prefer: xfce4-settings:xfce4-settings-branding-upstream
+Prefer: xfdesktop:xfdesktop-branding-upstream
+Prefer: yast2-branding-openSUSE
+Prefer: yast2-qt:yast2-qt-branding-openSUSE
+Prefer: yast2-theme-openSUSE
+
+# Build cycle handling - prefer -mini packages were possible, break deps as needed
+
+Conflict: krb5-devel:krb5-mini
+Conflict: krb5:krb5-mini-devel
+Prefer: gettext-tools-mini gettext-runtime-mini
+Prefer: ghostscript-mini
+Prefer: krb5-mini-devel:krb5-mini
+Prefer: krb5-mini krb5-mini-devel
+Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo
+Prefer: libunbound-devel-mini
+Prefer: log4j-mini
+Prefer: systemd-mini-devel:systemd-mini
+Prefer: systemd-mini systemd-mini-devel libsystemd0-mini
+Prefer: udev-mini libcom_err2-mini libext2fs2-mini
+Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel
+
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: erlang-rebar-obs:this-is-only-for-build-envs
+Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs
+Ignore: jdk-bootstrap:this-is-only-for-build-envs
+Ignore: libsystemd0-mini:this-is-only-for-build-envs
+Ignore: libudev-mini1:this-is-only-for-build-envs
+Ignore: libunbound-devel-mini:this-is-only-for-build-envs
+Ignore: systemd-mini:this-is-only-for-build-envs
+Ignore: udev-mini:this-is-only-for-build-envs
+Ignore: curl-mini:this-is-only-for-build-envs
+Ignore: libcurl-mini-devel:this-is-only-for-build-envs
+Ignore: libcurl4-mini:this-is-only-for-build-envs
+
+# Ring0 packages should not pull in 'info' - making the base VM smaller
+Ignore: binutils:info
+Ignore: bison:info
+Ignore: coreutils:info
+Ignore: cpio:info
+Ignore: diffutils:info
+Ignore: findutils:info
+Ignore: flex:info
+Ignore: gawk:info
+Ignore: gettext-runtime:info
+Ignore: gettext-tools:info
+Ignore: grep:info
+Ignore: groff:info
+Ignore: gzip:info
+Ignore: help2man:info
+Ignore: libgcrypt-devel:info
+Ignore: m4:info
+Ignore: make:info
+Ignore: sed:info
+Ignore: tar:info
+Ignore: util-linux:info
+Ignore: which:info
+
+# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system
+Ignore: Mesa:Mesa-dri
+Ignore: Mesa:Mesa-gallium
+
+# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems
+Conflict: kiwi:curl-mini
+Conflict: kiwi:libudev-mini1
+Conflict: kiwi:systemd-mini
+
+# udev: -full and -mini packages don't mingle well
+Prefer: libudev1:udev
+Conflict: libudev1:udev-mini
+Conflict: udev:libudev-mini1
+
+# systemd: -full and -mini packages don't mingle well
+Conflict: systemd:libsystemd0-mini
+Conflict: systemd-mini-devel:systemd
+
+# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl
+Prefer: -curl-mini -libcurl-mini-devel -libcurl4-mini
+
+#Prefer: -openSUSE-build-key
+# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs)
+Prefer: postfix
+# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal)
+
+# prefer the PHP5 variants over PHP7
+Prefer: php5-ctype
+Prefer: php5-devel
+Prefer: php5-dom
+Prefer: php5-ftp
+Prefer: php5-gd
+Prefer: php5-gettext
+Prefer: php5-mbstring
+Prefer: php5-pear
+Prefer: php5-pear-Archive_Tar
+Prefer: php5-pear-Horde
+Prefer: php5 php5-json
+Prefer: php5-tokenizer
+Prefer: php5-zip
+
+# go exists in mutliple versions by now - we prefer the 'unversioned package'
+Prefer: go
+
+# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one'
+Prefer: python2-pep8 python3-pep8
+
+# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl
+Prefer: perl
+
+# Assist migration to python-pycups (python3-cups is going to be removed)
+Prefer: python3-pycups python-pycups
+
+# Apache requires a MPM - we pick prefork
+Prefer: apache2:apache2-prefork
+
+# for symbol syslog (syslogd is best as it has the least dependencies)
+Prefer: syslogd
+
+# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt
+Prefer: star-rmt
+
+# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon;
+Prefer: notification-daemon
+
+# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW)
+Prefer: dummy-release
+
+# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version
+Prefer: -nodejs4
+
+# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original'
+Prefer: libpulse0-32bit
+
+# do not used openmpi variant to build against netcdf
+Prefer: netcdf-devel
+
+# Below list still needs to be reviewed
+
+Prefer: xorg-x11-Xvnc:icewm
+Prefer: cracklib-dict-small
+Prefer: libstdc++6 libgcc_s1 libquadmath0
+Prefer: libstdc++6-32bit libstdc++6-64bit
+Prefer: libstdc++6-x86
+Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit
+%ifarch s390x
+Prefer: -libstdc++41
+%endif
+Prefer: syslog-service
+Prefer: poppler-tools
+Prefer: libjpeg8-devel libjpeg-turbo
+Prefer: microcode_ctl:kernel-default
+Prefer: gnu-jaf yast2-control-center-qt
+Prefer: vim-normal myspell-american wine
+Prefer: amarok:amarok-xine
+Prefer: kdenetwork3-vnc:tightvnc
+Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api
+Prefer: -dbus-1-nox11
+Prefer: -servletapi3 -servletapi4 -servletapi5
+Prefer: icewm-lite
+Prefer: yast2-ncurses-pkg
+Prefer: monodevelop: mono-addins
+Prefer: texlive-xmltex texlive-tools texlive-jadetex
+Prefer: libesd-devel:esound
+Prefer: libesd0:esound-daemon
+Prefer: package-lists-openSUSE-KDE-cd: esound-daemon
+Prefer: librest-0_7-0
+
+Prefer: rhino:xmlbeans-mini
+Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail
+Prefer: mx4j:log4j-mini
+
+Prefer: rpcbind eclipse-source
+Prefer: libcdio_cdda0 libcdio_paranoia0
+Prefer: boo tog-pegasus
+Prefer: sysvinit(network) wicked-service
+Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd
+Prefer: kdebase4-openSUSE:kdebase4-workspace
+Prefer: ant:xerces-j2
+Prefer: dhcp-client:dhcp
+Prefer: libGLw1
+# provides typelib(St)
+Prefer: -cinnamon
+Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es
+Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el
+Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl
+Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da
+Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb
+Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar
+Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr
+Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el
+Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs
+Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu
+Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv
+Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar
+Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr
+Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el
+Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs
+Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu
+Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv
+Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar
+Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr
+Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el
+Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru
+Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da
+Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv
+Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar
+Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++
+Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g
+Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links
+Prefer: -python-setuptools
+Prefer: -kdenetwork3-InstantMessenger
+Prefer: -icc-profiles
+Prefer: vala
+# in doubt, take xerces
+Prefer: -crimson
+# in doubt, take higher versions
+Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4
+Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3
+Prefer: -rubygem-json_pure-1_5
+Prefer: geronimo-servlet-2_4-api
+Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi
+# python-scimpy: have choice for fftw-devel: fftw3-devel fftw3_3_3_6-gnu-hpc-devel fftw3_3_...
+Prefer: fftw3-devel
+# prefer the small systemd for building
+Prefer: star
+Prefer: xmlgraphics-commons:apache-commons-io
+# the -32bit stuff provides things it shouldn't (hopefully temporary)
+Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit
+Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit
+Prefer: postgresql postgresql-server postgresql-devel
+Prefer: -unzip-rcc
+Prefer: -primus -primus-32bit
+Prefer: -staging-build-key
+Prefer: -sssd-wbclient
+Prefer: -clutter-gst-devel
+Prefer: -opencv-qt5-devel
+# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg
+Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel
+Prefer: -ffmpeg2-devel -python-configparser2
+# as long as kactivities4 exists and is provided
+Prefer: kactivities5
+# oxygen5-icon-theme osboletes oxygen-icon-theme
+Prefer: oxygen5-icon-theme
+Prefer: npm6
+
+# kernel bug (coolo)
+Prefer: kernel-default-devel
+
+# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel
+# Prefer: libmariadb-devel
+Prefer: libmysqlclient-devel
+
+Prefer: wxWidgets-3_0-devel
+Prefer: libopenssl-devel
+
+Prefer: -NX -xaw3dd -db43
+Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis
+Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit
+Prefer: libffi-devel
+Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0
+Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit
+Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit
+Prefer: libgcc_s1-x86 libgcj_bc1
+Prefer: libgomp1 libgomp1-32bit libgomp1-64bit
+Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit
+Prefer: libobjc4 libgfortran3 libquadmath0
+Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini
+Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel
+Prefer: -seamonkey
+Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2
+Prefer: libopenal0-soft openal-soft -lsb-buildenv
+Prefer: -libevent
+Prefer: gnu-crypto libusb-compat-devel
+Prefer: libusb-0_1-4
+Prefer: libreoffice:xerces-j2
+Prefer: k3b:libdvdread4
+Prefer: glibc-devel
+Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4
+Prefer: NetworkManager:dhcp-client
+Prefer: kdebase3-SuSE:kdebase3
+Prefer: pcre-tools
+Prefer: libpopt0 makeinfo
+Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2
+Prefer: libgnome-keyring-devel
+Prefer: gnome-keyring-32bit
+Prefer: linux-glibc-devel
+Prefer: squid sysvinit
+Prefer: libpng16-compat-devel
+Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0
+Prefer: python3-docutils
+Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client
+#needed because new xml-commons package
+Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis
+Prefer: xmlgraphics-fop:xerces-j2
+Prefer: cogl-devel
+Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage
+Prefer: libpsm2-compat
+# choice p11-kit-nss-trust
+Prefer: mozilla-nss-certs
+# amarok dependency resolution
+Prefer: phonon-backend-gstreamer
+# replacing mkinitrd
+Prefer: dracut
+# replacing module-init-tools
+Prefer: kmod-compat
+# Temporary
+Prefer: oxygen5-cursors
+# Temporary
+Prefer: -perl-App-cpanminus
+# libmediaart is prepared for a larger update; for now favor mediaart-1.0
+Prefer: -typelib-1_0-MediaArt-2_0
+Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0
+Prefer: -python-atspi
+Prefer: gettext-its-gtk3 gtk3-schema
+# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory
+Prefer: ghostscript-devel
+# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it
+Prefer: libotf-devel
+
+Ignore: installation-images-openSUSE:cracklib-dict-full
+Ignore: systemd-sysvinit:systemd
+Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome
+Ignore: cracklib:cracklib-dict
+Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev
+Ignore: sysvinit:mingetty
+Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel
+Ignore: libgcj43,libstdc++43-devel
+Ignore: libgcj44,libstdc++44-devel
+Ignore: libgcj45,libstdc++45-devel
+Ignore: libgcj46,libstdc++46-devel
+Ignore: libgcj47,libstdc++47-devel
+Ignore: librtas:util-linux
+Ignore: pwdutils:openslp
+Ignore: rpm:suse-build-key,build-key
+Ignore: cloud-init:cloud-init-config
+# python-pyudev requires libudev1 in normal situations
+Ignore: python-pyudev:libudev1
+Ignore: python-SPARQLWrapper:python-rdflib
+Ignore: python3-SPARQLWrapper:python3-rdflib
+Ignore: bind-utils:bind-libs
+Ignore: portmap:syslogd
+Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng
+Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video
+Ignore: apache2:logrotate
+Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis
+Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper
+Ignore: kdelibs3-devel:libvorbis-devel
+Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb
+Ignore: kdebase3-SuSE:release-notes
+Ignore: jack:alsa,libsndfile
+Ignore: libxml2-devel:readline-devel
+Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration
+Ignore: libgda:file_alteration
+Ignore: gnutls:lzo,libopencdk
+Ignore: gnutls-devel:lzo-devel,libopencdk-devel
+Ignore: pango:cairo,glitz,libpixman,libpng
+Ignore: pango-devel:cairo-devel
+Ignore: cairo-devel:libpixman-devel
+Ignore: libgnomeprint:libgnomecups
+Ignore: libgnomeprintui:libgnomecups
+Ignore: orbit2-devel:indent
+Ignore: qt3:libmng
+Ignore: qt-sql:qt_database_plugin
+Ignore: libgnomecanvas-devel:glib-devel
+Ignore: libgnomeui:gnome-icon-theme,shared-mime-info
+Ignore: scrollkeeper:docbook_4
+Ignore: gnome-desktop:libgnomesu,startup-notification
+Ignore: python-devel:python-tk
+Ignore: libgtk-3-0:adwaita-icon-theme
+Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg
+Ignore: samba-libs:krb5
+Ignore: libbonoboui:gnome-desktop
+Ignore: libxfce4ui-1-0:exo-tools
+Ignore: docbook_4:iso_ent,xmlcharent
+Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification
+Ignore: docbook-xsl-stylesheets:xmlcharent
+Ignore: liby2util-devel:libstdc++-devel,openssl-devel
+Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2
+Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils
+Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel
+Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel
+Ignore: yast2-devtools:libxslt
+Ignore: yast2-iscsi-lio-server:lio-utils
+Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation
+Ignore: yast2-bootloader:bootloader-theme
+Ignore: yast2-packager:yast2-x11,libyui_pkg
+Ignore: autoyast2:yast2-schema
+# not during build
+Ignore: yui_backend
+Ignore: yast2-x11:sax2-libsax-perl
+Ignore: yast2-network:yast2-inetd
+Ignore: openslp-devel:openssl-devel
+Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed
+Ignore: texlive-bin:ghostscript-x11
+Ignore: texlive-bin-omega:ghostscript-x11
+Ignore: yast2-country:yast2-trans-stats
+Ignore: tpb:tpctl-kmp
+Ignore: tpctl:tpctl-kmp
+Ignore: zaptel:zaptel-kmp
+Ignore: mkinitrd:pciutils
+Ignore: pciutils:pciutils-ids
+Ignore: postfix:iproute2
+Ignore: aaa_base:systemd
+Ignore: gpm:systemd
+Ignore: openssh:systemd
+Ignore: cronie:systemd
+Ignore: systemd:kbd
+Ignore: systemd:kmod
+Ignore: systemd:systemd-presets-branding
+Ignore: systemd:dbus-1
+Ignore: systemd:pam-config
+Ignore: systemd:udev
+Ignore: pesign:systemd
+Ignore: logrotate:cron
+Ignore: texlive-filesystem:cron
+Ignore: xinit:xterm
+Ignore: xdm:xterm
+Ignore: gnome-control-center:gnome-themes-accessibility
+
+
+Ignore: man:groff-full
+Ignore: git-core:rsync
+Ignore: apache2:systemd
+Ignore: icewm-lite:icewm
+Ignore: cluster-glue:sudo
+Ignore: libgcc:glibc-32bit
+Ignore: libgcc41:glibc-32bit
+Ignore: libgcc42:glibc-32bit
+Ignore: libgcc43:glibc-32bit
+Ignore: libgcc44:glibc-32bit
+Ignore: libgcc45:glibc-32bit
+Ignore: libgcc46:glibc-32bit
+Ignore: libgcc47:glibc-32bit
+Ignore: libstdc++:glibc-32bit
+Ignore: libstdc41++:glibc-32bit
+Ignore: libstdc42++:glibc-32bit
+Ignore: libstdc43++:glibc-32bit
+Ignore: libstdc44++:glibc-32bit
+Ignore: libstdc45++:glibc-32bit
+Ignore: libstdc46++:glibc-32bit
+Ignore: libstdc47++:glibc-32bit
+Ignore: ncurses-32bit
+
+Ignore: susehelp:susehelp_lang,suse_help_viewer
+Ignore: mailx:smtp_daemon
+Ignore: cron:smtp_daemon
+Ignore: hotplug:syslog
+Ignore: pcmcia:syslog
+Ignore: openct:syslog
+Ignore: postfix:sysvinit(syslog)
+Ignore: cups:sysvinit(syslog)
+Ignore: jython:servlet
+Ignore: ispell:ispell_dictionary,ispell_english_dictionary
+Ignore: aspell:aspel_dictionary,aspell_dictionary
+Ignore: smartlink-softmodem:kernel,kernel-nongpl
+Ignore: libreoffice-de:myspell-german-dictionary
+Ignore: libreoffice:libreoffice-i18n
+Ignore: libreoffice:libreoffice-icon-themes
+Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any
+Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl
+Ignore: perl-Log-Log4perl:rrdtool
+
+Ignore: simias:mono(log4net)
+Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php
+
+Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver
+Ignore: xdg-menu:desktop-data
+Ignore: nessus-libraries:nessus-core
+Ignore: evolution:yelp
+Ignore: e17:e17-branding e17:e17-theme
+
+Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp)
+Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp)
+
+Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4)
+Ignore: libcdio:libcddb.so.2
+
+Ignore: coreutils:coreutils-lang
+Ignore: cpio:cpio-lang
+Ignore: glib2:glib2-lang
+Ignore: gtk2:gtk2-lang
+Ignore: gtk:gtk-lang
+Ignore: atk:atk-lang
+Ignore: MozillaThunderbird:pinentry-dialog
+Ignore: seamonkey:pinentry-dialog
+Ignore: pinentry:pinentry-dialog
+Ignore: gpg2:gpg2-lang
+Ignore: util-linux:util-linux-lang
+Ignore: suseRegister:distribution-release
+Ignore: compiz:compiz-decorator
+Ignore: icecream:gcc-c++
+Ignore: no
+Ignore: package
+Ignore: provides
+Ignore: j9vm/libjvm.so()(64bit)
+Ignore: kdepim3:suse_help_viewer
+Ignore: kdebase3-SuSE:kdebase3-SuSE-branding
+Ignore: kio_sysinfo:kdebase3-SuSE-branding
+Ignore: gnome-menus:gnome-menus-branding
+Ignore: epiphany:epiphany-branding
+Ignore: gnome-control-center:gnome-control-center-branding
+Ignore: phonon:phonon-backend
+Ignore: openwbem-devel
+Ignore: MozillaFirefox:MozillaFirefox-branding
+Ignore: yast2:yast2-branding
+Ignore: plymouth:plymouth-branding
+Ignore: plymouth:suspend
+Ignore: yast2-qt:yast2-branding
+Ignore: yast2-theme-SLE:yast2-branding
+Ignore: yast2-registration:yast2-registration-branding
+Ignore: compiz:compiz-branding
+Ignore: texlive:perl-Tk texlive-bin:perl-Tk
+Ignore: xfce4-desktop:xfce4-desktop-branding
+Ignore: xfce4-panel:xfce4-panel-branding
+Ignore: xfce4-session:xfce4-session-branding
+Ignore: kdebase4-runtime:kdebase4-runtime-branding
+Ignore: kwin:kdebase4-workspace-branding
+Ignore: transmission-common:transmission-ui
+Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd
+Ignore: mkinitrd:sbin_init samba-client:cifs-utils
+Ignore: opensc:pinentry
+Ignore: gpg2:pinentry
+Ignore: NetworkManager:dhcp
+Ignore: NetworkManager:iproute2
+# sysconfig requires it at runtime, not buildtime
+Ignore: sysconfig:dbus-1
+Ignore: sysconfig:procps
+Ignore: sysconfig:iproute2
+Ignore: sysconfig-network:iproute2
+Ignore: sysconfig:tunctl
+Ignore: sysconfig:sysvinit(network)
+# no build dependencies
+Ignore: libksuseinstall1:yast2-packager
+Ignore: libksuseinstall1:zypper
+Ignore: syslog-service:logrotate
+Ignore: libglue-devel:cluster-glue
+Ignore: libqca2:gpg2
+Ignore: NetworkManager:wpa_supplicant
+Ignore: NetworkManager:dhcp-client
+Ignore: openSUSE-release:product_flavor(openSUSE)
+Ignore: libgio-2_0-0:dbus-1-x11
+Ignore: weather-wallpaper:inkscape
+Ignore: libgamin-1-0:gamin-server
+Ignore: libfam0-gamin:gamin-server
+Ignore: python3:python3-pip
+Ignore: avahi:sysvinit(network)
+Ignore: cluster-glue:sysvinit(network)
+Ignore: dracut:systemd-sysvinit
+# actually a workaround for installation-images requiring
+# gettext-runtime-mini and getting conflict because systat
+# requires gettext (which is only provided by !-mini)
+Ignore: saptune:sysstat
+
+Macros:
+# RUBY - UNVERSIONED STUFF
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in the
+# prjconf aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}}
+%rubygemsSTOP() %nil
+%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*}
+%rubygemsxxSTOP(a:) %{-a*}) %*
+
+%rubySTOP() %nil
+%rubyxSTOP() %*
+
+%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}}
+
+%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}}
+
+%rubydevelSTOP() %nil
+%rubydevelxSTOP() %*
+#
+
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in
+# ruby2.5 aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}}
+%rubygemsxruby25() %{expand:%%{rubygemsx%*}}
+
+%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}}
+%rubyxruby25() %{expand:%%{rubyx%*}}
+
+%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}}
+%rubydevelxruby25() %{expand:%%{rubydevelx%*}}
+
+
+### Things to define default ruby stuff for the distro
+%rb_default_ruby ruby25
+%rb_default_ruby_suffix ruby2.5
+%rb_default_ruby_abi ruby:2.5.0
+:Macros
+
+Macros:
+%rb_build_ruby_abis ruby:2.5.0
+%rb_build_versions ruby25
+
+%_with_ruby25 1
+:Macros
+
+%define rb_default_ruby ruby25
+%define rb_default_ruby_suffix ruby2.5
+%define rb_default_ruby_abi ruby:2.5.0
+
+%define rb_build_ruby_abis ruby:2.5.0
+%define rb_build_versions ruby25
+
+%define _with_ruby25 1
+
+Prefer: -ruby-stdlib
+Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm
+Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus
+Prefer: %{rb_default_ruby_suffix}-rubygem-yard
+Prefer: %{rb_default_ruby_suffix}-rubygem-rspec
+Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake
+Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah
+Prefer: %{rb_default_ruby_suffix}-rubygem-inifile
+Prefer: %{rb_default_ruby_suffix}-rubygem-bundler
+Prefer: %{rb_default_ruby_suffix}-rubygem-sass
+Prefer: %{rb_default_ruby_suffix}-rubygem-cfa
+Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types
+
+# END RUBY STUFF
+
+# PYTHON STUFF
+
+Macros:
+%pythons %{?!skip_python2:python2} %{?!skip_python3:python3}
+
+# This method for generating python_modules gets too deep to expand at about 5 python flavors.
+# It is replaced by a Lua macro in macros.lua
+# However, OBS has a much higher expansion depth, so this works fine.
+%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}}
+%python_module_iter_STOP stop
+%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}}
+
+%add_python() %{expand:%%define pythons %pythons %1}
+:Macros
+
+# END PYTHON STUFF
+
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+# Prefer java 8 if java 9 was no option
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+# And then fall back to jaba 7 if needed
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+Substitute: java2-devel-packages java-devel
+
+%ifarch x86_64 ppc64 s390x sparc64
+Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit
+%else
+ %ifarch ppc sparc sparcv9
+Substitute: glibc-devel-32bit glibc-devel-64bit
+ %else
+Substitute: glibc-devel-32bit
+ %endif
+%endif
+
+%ifarch %ix86
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen
+%endif
+%ifarch ia64
+Substitute: kernel-binary-packages kernel-default kernel-debug
+%endif
+%ifarch x86_64
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen
+%endif
+%ifarch ppc
+Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3
+%endif
+%ifarch ppc64
+Substitute: kernel-binary-packages kernel-default kernel-ppc64
+%endif
+%ifarch s390
+Substitute: kernel-binary-packages kernel-s390
+%endif
+%ifarch s390x
+Substitute: kernel-binary-packages kernel-default
+%endif
+
+Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches
+# no longer needed according to Richard Biener
+# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector
+Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390x -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches
+# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops)
+Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+
+%ifarch armv7l armv7hl
+Target: armv7hl-suse-linux
+%endif
+
+Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection
+
+%define suse_version 1500
+%define sle_version 150200
+
+%define is_susecaasp 1
+%define is_susesap 1
+
+Macros:
+%suse_version 1500
+%sle_version 150200
+%is_susecaasp 1
+%is_susesap 1
+
+%insserv_prereq insserv sed
+%fillup_prereq fillup coreutils grep diffutils
+%suseconfig_fonts_prereq perl aaa_base
+%install_info_prereq info
+%kernel_module_package_buildreq kmod-compat kernel-syms
+%kernel_module_package_buildreqs kmod-compat kernel-syms
+
+%sles_version 0
+%do_profiling 1
+%_vendor suse
+
+# Reproducible builds
+%source_date_epoch_from_changelog Y
+
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 7
+# The following shlibs have latest versions built from GCC 6 sources
+%product_libs_gcc_ver_libasan3 6
+%product_libs_gcc_ver_libgo9 6
+%product_libs_gcc_ver_libgfortran3 6
+# reminded by richi 2017 4/3
+%product_libs_gcc_ver_libgcj_bc1 6
+# The following shlibs have been introduced with GCC 7
+%product_libs_gcc_ver_libmpxwrappers2 7
+%product_libs_gcc_ver_libmpx2 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libgfortran4 7
+%gcc_version 7
+
+%ext_info .gz
+%ext_man .gz
+
+%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+
+%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+:Macros
+
diff --git a/configs/sle15.3.conf b/configs/sle15.3.conf
new file mode 100755
index 0000000..2bd74e3
--- /dev/null
+++ b/configs/sle15.3.conf
@@ -0,0 +1,890 @@
+
+%define gcc_version 7
+
+Substitute: kiwi python3-kiwi
+
+Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15
+Substitute: system-packages:kiwi-product product-builder
+Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper
+
+%ifarch s390
+Substitute: valgrind
+Substitute: valgrind-devel
+Substitute: pkgconfig(valgrind)
+%endif
+%ifarch s390 s390x
+Substitute: libunwind-devel
+Substitute: pkgconfig(libunwind)
+%endif
+
+%ifarch s390 s390x
+Ignore: libsensors4-devel
+%endif
+
+%define _without_mono 1
+Macros:
+%_without_mono 1
+:Macros
+
+Prefer: rpm
+Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel
+Prefer: -liblua5_3 -liblua5_1 -liblua5_2
+
+Preinstall: aaa_base attr bash coreutils diffutils
+Preinstall: filesystem fillup glibc grep
+Preinstall: libbz2-1 libgcc_s1 libncurses6 pam
+Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1
+Preinstall: liblzma5 libcap2 libacl1 libattr1
+Preinstall: libpopt0 libelf1 liblua5_3-5
+Preinstall: libpcre1
+
+Runscripts: aaa_base
+
+Prefer: libdb-4_8-devel
+Prefer: cdrkit-cdrtools-compat genisoimage
+VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1
+VMinstall: kernel-obs-build
+VMInstall: iproute2
+
+# Needed with latest rpm (Use libgcrypt as crypto library for SP2 [jsc#SLE-9552])
+Preinstall: libgcrypt20 libgpg-error0
+
+# Needed with latest rpm (Added zstd support in SLE-15-SP2 [bsc#1162668])
+Preinstall: libzstd1
+
+FileProvides: /bin/csh tcsh
+FileProvides: /bin/logger util-linux-systemd
+FileProvides: /sbin/netconfig sysconfig-netconfig
+FileProvides: /sbin/setcap libcap-progs
+FileProvides: /usr/bin/csh tcsh
+FileProvides: /usr/bin/docbook2man docbook-utils
+FileProvides: /usr/bin/eu-nm elfutils
+FileProvides: /usr/bin/fipscheck fipscheck
+FileProvides: /usr/bin/killall psmisc
+FileProvides: /usr/bin/mimencode metamail
+FileProvides: /usr/bin/mkisofs cdrkit-cdrtools-compat
+FileProvides: /usr/bin/pkg-config pkg-config
+FileProvides: /usr/bin/python python-base
+FileProvides: /usr/bin/setfacl acl
+FileProvides: /usr/bin/sg_inq sg3_utils
+FileProvides: /usr/bin/tput ncurses-utils
+FileProvides: /usr/bin/xmllint libxml2-tools
+FileProvides: /usr/bin/Xvfb xorg-x11-server
+FileProvides: /usr/sbin/groupadd shadow
+FileProvides: /usr/sbin/lockdev lockdev
+FileProvides: /usr/sbin/useradd shadow
+FileProvides: /usr/sbin/usermod shadow
+
+Required: rpm-build
+# Build all packages with -pie enabled
+Required: gcc-PIE
+
+# the basic stuff
+Support: perl
+Support: brp-check-suse post-build-checks rpmlint-Factory
+
+### Branding related preferences
+Prefer: awesome:awesome-branding-upstream
+Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE
+Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream
+Prefer: enlightenment-theme-upstream
+Prefer: exo-data:exo-branding-upstream
+Prefer: fcitx:fcitx-branding-openSUSE
+Prefer: gdm:gdm-branding-upstream
+Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse
+Prefer: glib2:glib2-branding-upstream
+Prefer: gnome-panel:gnome-panel-branding-upstream
+Prefer: gnome-session:gconf2-branding-openSUSE
+Prefer: gnome-session:gnome-session-branding-openSUSE
+Prefer: icewm-theme-branding
+Prefer: kde4-kdm:kde4-kdm-branding-upstream
+Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream
+Prefer: kdelibs4-branding:kdelibs4-branding-upstream
+Prefer: kdelibs4:kdelibs4-branding-upstream
+Prefer: kdm:kdm-branding-upstream
+Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream
+Prefer: libexo-1-0:libexo-1-0-branding-upstream
+Prefer: libgarcon-1-0:libgarcon-branding-upstream
+Prefer: libgarcon-data:libgarcon-branding-upstream
+Prefer: libgio-2_0-0:gio-branding-upstream
+Prefer: libglib-2_0-0:glib2-branding-upstream
+Prefer: libpurple-branding-upstream
+Prefer: libreoffice:libreoffice-branding-upstream
+Prefer: libsocialweb:libsocialweb-branding-upstream
+Prefer: libxfce4ui:libxfce4ui-branding-upstream
+Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream
+Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream
+Prefer: NetworkManager-branding-upstream
+Prefer: PackageKit:PackageKit-branding-upstream
+Prefer: plasma5-desktop:plasma5-desktop-branding-upstream
+Prefer: plasma5-workspace:plasma5-workspace-branding-upstream
+Prefer: sddm:sddm-branding-upstream
+Prefer: systemd-presets-branding-SLE
+Prefer: wallpaper-branding-openSUSE
+Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream
+Prefer: xfce4-settings:xfce4-settings-branding-upstream
+Prefer: xfdesktop:xfdesktop-branding-upstream
+Prefer: yast2-branding-openSUSE
+Prefer: yast2-qt:yast2-qt-branding-openSUSE
+Prefer: yast2-theme-openSUSE
+
+# Build cycle handling - prefer -mini packages were possible, break deps as needed
+
+Conflict: krb5-devel:krb5-mini
+Conflict: krb5:krb5-mini-devel
+Prefer: gettext-tools-mini gettext-runtime-mini
+Prefer: ghostscript-mini
+Prefer: krb5-mini-devel:krb5-mini
+Prefer: krb5-mini krb5-mini-devel
+Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo
+Prefer: libunbound-devel-mini
+Prefer: log4j-mini
+Prefer: systemd-mini-devel:systemd-mini
+Prefer: systemd-mini systemd-mini-devel libsystemd0-mini
+Prefer: udev-mini libcom_err2-mini libext2fs2-mini
+Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel
+
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: erlang-rebar-obs:this-is-only-for-build-envs
+Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs
+Ignore: jdk-bootstrap:this-is-only-for-build-envs
+Ignore: libsystemd0-mini:this-is-only-for-build-envs
+Ignore: libudev-mini1:this-is-only-for-build-envs
+Ignore: libunbound-devel-mini:this-is-only-for-build-envs
+Ignore: systemd-mini:this-is-only-for-build-envs
+Ignore: udev-mini:this-is-only-for-build-envs
+Ignore: curl-mini:this-is-only-for-build-envs
+Ignore: libcurl-mini-devel:this-is-only-for-build-envs
+Ignore: libcurl4-mini:this-is-only-for-build-envs
+
+# Ring0 packages should not pull in 'info' - making the base VM smaller
+Ignore: binutils:info
+Ignore: bison:info
+Ignore: coreutils:info
+Ignore: cpio:info
+Ignore: diffutils:info
+Ignore: findutils:info
+Ignore: flex:info
+Ignore: gawk:info
+Ignore: gettext-runtime:info
+Ignore: gettext-tools:info
+Ignore: grep:info
+Ignore: groff:info
+Ignore: gzip:info
+Ignore: help2man:info
+Ignore: libgcrypt-devel:info
+Ignore: m4:info
+Ignore: make:info
+Ignore: sed:info
+Ignore: tar:info
+Ignore: util-linux:info
+Ignore: which:info
+
+# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system
+Ignore: Mesa:Mesa-dri
+Ignore: Mesa:Mesa-gallium
+
+# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems
+Conflict: kiwi:curl-mini
+Conflict: kiwi:libudev-mini1
+Conflict: kiwi:systemd-mini
+
+# udev: -full and -mini packages don't mingle well
+Prefer: libudev1:udev
+Conflict: libudev1:udev-mini
+Conflict: udev:libudev-mini1
+
+# systemd: -full and -mini packages don't mingle well
+Conflict: systemd:libsystemd0-mini
+Conflict: systemd-mini-devel:systemd
+
+# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl
+Prefer: -curl-mini -libcurl-mini-devel -libcurl4-mini
+
+#Prefer: -openSUSE-build-key
+# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs)
+Prefer: postfix
+# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal)
+
+# prefer the PHP5 variants over PHP7
+Prefer: php5-ctype
+Prefer: php5-devel
+Prefer: php5-dom
+Prefer: php5-ftp
+Prefer: php5-gd
+Prefer: php5-gettext
+Prefer: php5-mbstring
+Prefer: php5-pear
+Prefer: php5-pear-Archive_Tar
+Prefer: php5-pear-Horde
+Prefer: php5 php5-json
+Prefer: php5-tokenizer
+Prefer: php5-zip
+
+# go exists in mutliple versions by now - we prefer the 'unversioned package'
+Prefer: go
+
+# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one'
+Prefer: python2-pep8 python3-pep8
+
+# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl
+Prefer: perl
+
+# Assist migration to python-pycups (python3-cups is going to be removed)
+Prefer: python3-pycups python-pycups
+
+# Apache requires a MPM - we pick prefork
+Prefer: apache2:apache2-prefork
+
+# for symbol syslog (syslogd is best as it has the least dependencies)
+Prefer: syslogd
+
+# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt
+Prefer: star-rmt
+
+# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon;
+Prefer: notification-daemon
+
+# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW)
+Prefer: dummy-release
+
+# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version
+Prefer: -nodejs4
+
+# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original'
+Prefer: libpulse0-32bit
+
+# do not used openmpi variant to build against netcdf
+Prefer: netcdf-devel
+
+# Below list still needs to be reviewed
+
+Prefer: xorg-x11-Xvnc:icewm
+Prefer: cracklib-dict-small
+Prefer: libstdc++6 libgcc_s1 libquadmath0
+Prefer: libstdc++6-32bit libstdc++6-64bit
+Prefer: libstdc++6-x86
+Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit
+%ifarch s390x
+Prefer: -libstdc++41
+%endif
+Prefer: syslog-service
+Prefer: poppler-tools
+Prefer: libjpeg8-devel libjpeg-turbo
+Prefer: microcode_ctl:kernel-default
+Prefer: gnu-jaf yast2-control-center-qt
+Prefer: vim-normal myspell-american wine
+Prefer: amarok:amarok-xine
+Prefer: kdenetwork3-vnc:tightvnc
+Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api
+Prefer: -dbus-1-nox11
+Prefer: -servletapi3 -servletapi4 -servletapi5
+Prefer: icewm-lite
+Prefer: yast2-ncurses-pkg
+Prefer: monodevelop: mono-addins
+Prefer: texlive-xmltex texlive-tools texlive-jadetex
+Prefer: libesd-devel:esound
+Prefer: libesd0:esound-daemon
+Prefer: package-lists-openSUSE-KDE-cd: esound-daemon
+Prefer: librest-0_7-0
+
+Prefer: rhino:xmlbeans-mini
+Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail
+Prefer: mx4j:log4j-mini
+
+Prefer: rpcbind eclipse-source
+Prefer: libcdio_cdda0 libcdio_paranoia0
+Prefer: boo tog-pegasus
+Prefer: sysvinit(network) wicked-service
+Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd
+Prefer: kdebase4-openSUSE:kdebase4-workspace
+Prefer: ant:xerces-j2
+Prefer: dhcp-client:dhcp
+Prefer: libGLw1
+# provides typelib(St)
+Prefer: -cinnamon
+Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es
+Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el
+Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl
+Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da
+Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb
+Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar
+Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr
+Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el
+Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs
+Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu
+Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv
+Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar
+Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr
+Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el
+Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs
+Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu
+Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv
+Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar
+Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr
+Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el
+Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru
+Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da
+Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv
+Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar
+Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++
+Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g
+Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links
+Prefer: -python-setuptools
+Prefer: -kdenetwork3-InstantMessenger
+Prefer: -icc-profiles
+Prefer: vala
+# in doubt, take xerces
+Prefer: -crimson
+# in doubt, take higher versions
+Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4
+Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3
+Prefer: -rubygem-json_pure-1_5
+Prefer: geronimo-servlet-2_4-api
+Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi
+# python-scimpy: have choice for fftw-devel: fftw3-devel fftw3_3_3_6-gnu-hpc-devel fftw3_3_...
+Prefer: fftw3-devel
+# prefer the small systemd for building
+Prefer: star
+Prefer: xmlgraphics-commons:apache-commons-io
+# the -32bit stuff provides things it shouldn't (hopefully temporary)
+Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit
+Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit
+Prefer: postgresql postgresql-server postgresql-devel
+Prefer: -unzip-rcc
+Prefer: -primus -primus-32bit
+Prefer: -staging-build-key
+Prefer: -sssd-wbclient
+Prefer: -clutter-gst-devel
+Prefer: -opencv-qt5-devel
+# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg
+Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel
+Prefer: -ffmpeg2-devel -python-configparser2
+# as long as kactivities4 exists and is provided
+Prefer: kactivities5
+# oxygen5-icon-theme osboletes oxygen-icon-theme
+Prefer: oxygen5-icon-theme
+Prefer: npm6
+
+# kernel bug (coolo)
+Prefer: kernel-default-devel
+
+# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel
+# Prefer: libmariadb-devel
+Prefer: libmysqlclient-devel
+
+Prefer: wxWidgets-3_0-devel
+Prefer: libopenssl-devel
+
+Prefer: -NX -xaw3dd -db43
+Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis
+Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit
+Prefer: libffi-devel
+Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0
+Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit
+Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit
+Prefer: libgcc_s1-x86 libgcj_bc1
+Prefer: libgomp1 libgomp1-32bit libgomp1-64bit
+Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit
+Prefer: libobjc4 libgfortran3 libquadmath0
+Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini
+Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel
+Prefer: -seamonkey
+Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2
+Prefer: libopenal0-soft openal-soft -lsb-buildenv
+Prefer: -libevent
+Prefer: gnu-crypto libusb-compat-devel
+Prefer: libusb-0_1-4
+Prefer: libreoffice:xerces-j2
+Prefer: k3b:libdvdread4
+Prefer: glibc-devel
+Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4
+Prefer: NetworkManager:dhcp-client
+Prefer: kdebase3-SuSE:kdebase3
+Prefer: pcre-tools
+Prefer: libpopt0 makeinfo
+Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2
+Prefer: libgnome-keyring-devel
+Prefer: gnome-keyring-32bit
+Prefer: linux-glibc-devel
+Prefer: squid sysvinit
+Prefer: libpng16-compat-devel
+Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0
+Prefer: python3-docutils
+Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client
+#needed because new xml-commons package
+Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis
+Prefer: xmlgraphics-fop:xerces-j2
+Prefer: cogl-devel
+Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage
+Prefer: libpsm2-compat
+# choice p11-kit-nss-trust
+Prefer: mozilla-nss-certs
+# amarok dependency resolution
+Prefer: phonon-backend-gstreamer
+# replacing mkinitrd
+Prefer: dracut
+# replacing module-init-tools
+Prefer: kmod-compat
+# Temporary
+Prefer: oxygen5-cursors
+# Temporary
+Prefer: -perl-App-cpanminus
+# libmediaart is prepared for a larger update; for now favor mediaart-1.0
+Prefer: -typelib-1_0-MediaArt-2_0
+Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0
+Prefer: -python-atspi
+Prefer: gettext-its-gtk3 gtk3-schema
+# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory
+Prefer: ghostscript-devel
+# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it
+Prefer: libotf-devel
+
+Ignore: installation-images-openSUSE:cracklib-dict-full
+Ignore: systemd-sysvinit:systemd
+Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome
+Ignore: cracklib:cracklib-dict
+Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev
+Ignore: sysvinit:mingetty
+Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel
+Ignore: libgcj43,libstdc++43-devel
+Ignore: libgcj44,libstdc++44-devel
+Ignore: libgcj45,libstdc++45-devel
+Ignore: libgcj46,libstdc++46-devel
+Ignore: libgcj47,libstdc++47-devel
+Ignore: librtas:util-linux
+Ignore: pwdutils:openslp
+Ignore: rpm:suse-build-key,build-key
+Ignore: cloud-init:cloud-init-config
+# python-pyudev requires libudev1 in normal situations
+Ignore: python-pyudev:libudev1
+Ignore: python-SPARQLWrapper:python-rdflib
+Ignore: python3-SPARQLWrapper:python3-rdflib
+Ignore: bind-utils:bind-libs
+Ignore: portmap:syslogd
+Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng
+Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video
+Ignore: apache2:logrotate
+Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis
+Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper
+Ignore: kdelibs3-devel:libvorbis-devel
+Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb
+Ignore: kdebase3-SuSE:release-notes
+Ignore: jack:alsa,libsndfile
+Ignore: libxml2-devel:readline-devel
+Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration
+Ignore: libgda:file_alteration
+Ignore: gnutls:lzo,libopencdk
+Ignore: gnutls-devel:lzo-devel,libopencdk-devel
+Ignore: pango:cairo,glitz,libpixman,libpng
+Ignore: pango-devel:cairo-devel
+Ignore: cairo-devel:libpixman-devel
+Ignore: libgnomeprint:libgnomecups
+Ignore: libgnomeprintui:libgnomecups
+Ignore: orbit2-devel:indent
+Ignore: qt3:libmng
+Ignore: qt-sql:qt_database_plugin
+Ignore: libgnomecanvas-devel:glib-devel
+Ignore: libgnomeui:gnome-icon-theme,shared-mime-info
+Ignore: scrollkeeper:docbook_4
+Ignore: gnome-desktop:libgnomesu,startup-notification
+Ignore: python-devel:python-tk
+Ignore: libgtk-3-0:adwaita-icon-theme
+Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg
+Ignore: samba-libs:krb5
+Ignore: libbonoboui:gnome-desktop
+Ignore: libxfce4ui-1-0:exo-tools
+Ignore: docbook_4:iso_ent,xmlcharent
+Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification
+Ignore: docbook-xsl-stylesheets:xmlcharent
+Ignore: liby2util-devel:libstdc++-devel,openssl-devel
+Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2
+Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils
+Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel
+Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel
+Ignore: yast2-devtools:libxslt
+Ignore: yast2-iscsi-lio-server:lio-utils
+Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation
+Ignore: yast2-bootloader:bootloader-theme
+Ignore: yast2-packager:yast2-x11,libyui_pkg
+Ignore: autoyast2:yast2-schema
+# not during build
+Ignore: yui_backend
+Ignore: yast2-x11:sax2-libsax-perl
+Ignore: yast2-network:yast2-inetd
+Ignore: openslp-devel:openssl-devel
+Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed
+Ignore: texlive-bin:ghostscript-x11
+Ignore: texlive-bin-omega:ghostscript-x11
+Ignore: yast2-country:yast2-trans-stats
+Ignore: tpb:tpctl-kmp
+Ignore: tpctl:tpctl-kmp
+Ignore: zaptel:zaptel-kmp
+Ignore: mkinitrd:pciutils
+Ignore: pciutils:pciutils-ids
+Ignore: postfix:iproute2
+Ignore: aaa_base:systemd
+Ignore: gpm:systemd
+Ignore: openssh:systemd
+Ignore: cronie:systemd
+Ignore: systemd:kbd
+Ignore: systemd:kmod
+Ignore: systemd:systemd-presets-branding
+Ignore: systemd:dbus-1
+Ignore: systemd:pam-config
+Ignore: systemd:udev
+Ignore: pesign:systemd
+Ignore: logrotate:cron
+Ignore: texlive-filesystem:cron
+Ignore: xinit:xterm
+Ignore: xdm:xterm
+Ignore: gnome-control-center:gnome-themes-accessibility
+
+
+Ignore: man:groff-full
+Ignore: git-core:rsync
+Ignore: apache2:systemd
+Ignore: icewm-lite:icewm
+Ignore: cluster-glue:sudo
+Ignore: libgcc:glibc-32bit
+Ignore: libgcc41:glibc-32bit
+Ignore: libgcc42:glibc-32bit
+Ignore: libgcc43:glibc-32bit
+Ignore: libgcc44:glibc-32bit
+Ignore: libgcc45:glibc-32bit
+Ignore: libgcc46:glibc-32bit
+Ignore: libgcc47:glibc-32bit
+Ignore: libstdc++:glibc-32bit
+Ignore: libstdc41++:glibc-32bit
+Ignore: libstdc42++:glibc-32bit
+Ignore: libstdc43++:glibc-32bit
+Ignore: libstdc44++:glibc-32bit
+Ignore: libstdc45++:glibc-32bit
+Ignore: libstdc46++:glibc-32bit
+Ignore: libstdc47++:glibc-32bit
+Ignore: ncurses-32bit
+
+Ignore: susehelp:susehelp_lang,suse_help_viewer
+Ignore: mailx:smtp_daemon
+Ignore: cron:smtp_daemon
+Ignore: hotplug:syslog
+Ignore: pcmcia:syslog
+Ignore: openct:syslog
+Ignore: postfix:sysvinit(syslog)
+Ignore: cups:sysvinit(syslog)
+Ignore: jython:servlet
+Ignore: ispell:ispell_dictionary,ispell_english_dictionary
+Ignore: aspell:aspel_dictionary,aspell_dictionary
+Ignore: smartlink-softmodem:kernel,kernel-nongpl
+Ignore: libreoffice-de:myspell-german-dictionary
+Ignore: libreoffice:libreoffice-i18n
+Ignore: libreoffice:libreoffice-icon-themes
+Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any
+Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl
+Ignore: perl-Log-Log4perl:rrdtool
+
+Ignore: simias:mono(log4net)
+Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php
+
+Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver
+Ignore: xdg-menu:desktop-data
+Ignore: nessus-libraries:nessus-core
+Ignore: evolution:yelp
+Ignore: e17:e17-branding e17:e17-theme
+
+Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp)
+Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp)
+
+Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4)
+Ignore: libcdio:libcddb.so.2
+
+Ignore: coreutils:coreutils-lang
+Ignore: cpio:cpio-lang
+Ignore: glib2:glib2-lang
+Ignore: gtk2:gtk2-lang
+Ignore: gtk:gtk-lang
+Ignore: atk:atk-lang
+Ignore: MozillaThunderbird:pinentry-dialog
+Ignore: seamonkey:pinentry-dialog
+Ignore: pinentry:pinentry-dialog
+Ignore: gpg2:gpg2-lang
+Ignore: util-linux:util-linux-lang
+Ignore: suseRegister:distribution-release
+Ignore: compiz:compiz-decorator
+Ignore: icecream:gcc-c++
+Ignore: no
+Ignore: package
+Ignore: provides
+Ignore: j9vm/libjvm.so()(64bit)
+Ignore: kdepim3:suse_help_viewer
+Ignore: kdebase3-SuSE:kdebase3-SuSE-branding
+Ignore: kio_sysinfo:kdebase3-SuSE-branding
+Ignore: gnome-menus:gnome-menus-branding
+Ignore: epiphany:epiphany-branding
+Ignore: gnome-control-center:gnome-control-center-branding
+Ignore: phonon:phonon-backend
+Ignore: openwbem-devel
+Ignore: MozillaFirefox:MozillaFirefox-branding
+Ignore: yast2:yast2-branding
+Ignore: plymouth:plymouth-branding
+Ignore: plymouth:suspend
+Ignore: yast2-qt:yast2-branding
+Ignore: yast2-theme-SLE:yast2-branding
+Ignore: yast2-registration:yast2-registration-branding
+Ignore: compiz:compiz-branding
+Ignore: texlive:perl-Tk texlive-bin:perl-Tk
+Ignore: xfce4-desktop:xfce4-desktop-branding
+Ignore: xfce4-panel:xfce4-panel-branding
+Ignore: xfce4-session:xfce4-session-branding
+Ignore: kdebase4-runtime:kdebase4-runtime-branding
+Ignore: kwin:kdebase4-workspace-branding
+Ignore: transmission-common:transmission-ui
+Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd
+Ignore: mkinitrd:sbin_init samba-client:cifs-utils
+Ignore: opensc:pinentry
+Ignore: gpg2:pinentry
+Ignore: NetworkManager:dhcp
+Ignore: NetworkManager:iproute2
+# sysconfig requires it at runtime, not buildtime
+Ignore: sysconfig:dbus-1
+Ignore: sysconfig:procps
+Ignore: sysconfig:iproute2
+Ignore: sysconfig-network:iproute2
+Ignore: sysconfig:tunctl
+Ignore: sysconfig:sysvinit(network)
+# no build dependencies
+Ignore: libksuseinstall1:yast2-packager
+Ignore: libksuseinstall1:zypper
+Ignore: syslog-service:logrotate
+Ignore: libglue-devel:cluster-glue
+Ignore: libqca2:gpg2
+Ignore: NetworkManager:wpa_supplicant
+Ignore: NetworkManager:dhcp-client
+Ignore: openSUSE-release:product_flavor(openSUSE)
+Ignore: libgio-2_0-0:dbus-1-x11
+Ignore: weather-wallpaper:inkscape
+Ignore: libgamin-1-0:gamin-server
+Ignore: libfam0-gamin:gamin-server
+Ignore: python3:python3-pip
+Ignore: avahi:sysvinit(network)
+Ignore: cluster-glue:sysvinit(network)
+Ignore: dracut:systemd-sysvinit
+# actually a workaround for installation-images requiring
+# gettext-runtime-mini and getting conflict because systat
+# requires gettext (which is only provided by !-mini)
+Ignore: saptune:sysstat
+
+Macros:
+# RUBY - UNVERSIONED STUFF
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in the
+# prjconf aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}}
+%rubygemsSTOP() %nil
+%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*}
+%rubygemsxxSTOP(a:) %{-a*}) %*
+
+%rubySTOP() %nil
+%rubyxSTOP() %*
+
+%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}}
+
+%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}}
+
+%rubydevelSTOP() %nil
+%rubydevelxSTOP() %*
+#
+
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in
+# ruby2.5 aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}}
+%rubygemsxruby25() %{expand:%%{rubygemsx%*}}
+
+%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}}
+%rubyxruby25() %{expand:%%{rubyx%*}}
+
+%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}}
+%rubydevelxruby25() %{expand:%%{rubydevelx%*}}
+
+
+### Things to define default ruby stuff for the distro
+%rb_default_ruby ruby25
+%rb_default_ruby_suffix ruby2.5
+%rb_default_ruby_abi ruby:2.5.0
+:Macros
+
+Macros:
+%rb_build_ruby_abis ruby:2.5.0
+%rb_build_versions ruby25
+
+%_with_ruby25 1
+:Macros
+
+%define rb_default_ruby ruby25
+%define rb_default_ruby_suffix ruby2.5
+%define rb_default_ruby_abi ruby:2.5.0
+
+%define rb_build_ruby_abis ruby:2.5.0
+%define rb_build_versions ruby25
+
+%define _with_ruby25 1
+
+Prefer: -ruby-stdlib
+Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm
+Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus
+Prefer: %{rb_default_ruby_suffix}-rubygem-yard
+Prefer: %{rb_default_ruby_suffix}-rubygem-rspec
+Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake
+Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah
+Prefer: %{rb_default_ruby_suffix}-rubygem-inifile
+Prefer: %{rb_default_ruby_suffix}-rubygem-bundler
+Prefer: %{rb_default_ruby_suffix}-rubygem-sass
+Prefer: %{rb_default_ruby_suffix}-rubygem-cfa
+Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types
+
+# END RUBY STUFF
+
+# PYTHON STUFF
+
+Macros:
+%pythons %{?!skip_python2:python2} %{?!skip_python3:python3}
+
+# This method for generating python_modules gets too deep to expand at about 5 python flavors.
+# It is replaced by a Lua macro in macros.lua
+# However, OBS has a much higher expansion depth, so this works fine.
+%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}}
+%python_module_iter_STOP stop
+%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}}
+
+%add_python() %{expand:%%define pythons %pythons %1}
+:Macros
+
+# END PYTHON STUFF
+
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+# Prefer java 8 if java 9 was no option
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+# And then fall back to jaba 7 if needed
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+Substitute: java2-devel-packages java-devel
+
+%ifarch x86_64 ppc64 s390x sparc64
+Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit
+%else
+ %ifarch ppc sparc sparcv9
+Substitute: glibc-devel-32bit glibc-devel-64bit
+ %else
+Substitute: glibc-devel-32bit
+ %endif
+%endif
+
+%ifarch %ix86
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen
+%endif
+%ifarch ia64
+Substitute: kernel-binary-packages kernel-default kernel-debug
+%endif
+%ifarch x86_64
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen
+%endif
+%ifarch ppc
+Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3
+%endif
+%ifarch ppc64
+Substitute: kernel-binary-packages kernel-default kernel-ppc64
+%endif
+%ifarch s390
+Substitute: kernel-binary-packages kernel-s390
+%endif
+%ifarch s390x
+Substitute: kernel-binary-packages kernel-default
+%endif
+
+Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches
+# no longer needed according to Richard Biener
+# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector
+Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390x -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches
+# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops)
+Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+
+%ifarch armv7l armv7hl
+Target: armv7hl-suse-linux
+%endif
+
+Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection
+
+%define suse_version 1500
+%define sle_version 150300
+
+%define is_susecaasp 1
+%define is_susesap 1
+
+Macros:
+%suse_version 1500
+%sle_version 150300
+%is_susecaasp 1
+%is_susesap 1
+
+%insserv_prereq insserv sed
+%fillup_prereq fillup coreutils grep diffutils
+%suseconfig_fonts_prereq perl aaa_base
+%install_info_prereq info
+%kernel_module_package_buildreq kmod-compat kernel-syms
+%kernel_module_package_buildreqs kmod-compat kernel-syms
+
+%sles_version 0
+%do_profiling 1
+%_vendor suse
+
+# Reproducible builds
+%source_date_epoch_from_changelog Y
+
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 7
+# The following shlibs have latest versions built from GCC 6 sources
+%product_libs_gcc_ver_libasan3 6
+%product_libs_gcc_ver_libgo9 6
+%product_libs_gcc_ver_libgfortran3 6
+# reminded by richi 2017 4/3
+%product_libs_gcc_ver_libgcj_bc1 6
+# The following shlibs have been introduced with GCC 7
+%product_libs_gcc_ver_libmpxwrappers2 7
+%product_libs_gcc_ver_libmpx2 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libgfortran4 7
+%gcc_version 7
+
+%ext_info .gz
+%ext_man .gz
+
+%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+
+%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+:Macros
+
diff --git a/configs/sle15.4.conf b/configs/sle15.4.conf
new file mode 100755
index 0000000..f302a52
--- /dev/null
+++ b/configs/sle15.4.conf
@@ -0,0 +1,1633 @@
+
+%define gcc_version 7
+
+Substitute: kiwi python3-kiwi
+
+Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15
+Substitute: system-packages:kiwi-product product-builder
+Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper
+
+# create conflicts for packages installed into the target image
+Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini
+Substitute: build-packages:docker python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini
+Substitute: system-packages:docker docker kmod-compat sysvinit-tools kernel-default createrepo_c
+Substitute: kiwi python3-kiwi
+Substitute: system-packages:mock mock createrepo_c
+Substitute: system-packages:kiwi-image python3-kiwi createrepo_c tar
+
+Prefer: -python2-kiwi
+
+%ifarch s390
+Substitute: valgrind
+Substitute: valgrind-devel
+Substitute: pkgconfig(valgrind)
+%endif
+%ifarch s390 s390x
+Substitute: libunwind-devel
+Substitute: pkgconfig(libunwind)
+%endif
+
+%ifarch s390 s390x
+Ignore: libsensors4-devel
+%endif
+
+%define _without_mono 1
+Macros:
+%_without_mono 1
+:Macros
+
+Prefer: rpm
+Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel
+Prefer: -liblua5_3 -liblua5_1 -liblua5_2
+
+FileProvides: /bin/csh tcsh
+FileProvides: /bin/logger util-linux-systemd
+FileProvides: /sbin/netconfig sysconfig-netconfig
+FileProvides: /sbin/setcap libcap-progs
+FileProvides: /usr/bin/csh tcsh
+FileProvides: /usr/bin/docbook2man docbook-utils
+FileProvides: /usr/bin/eu-nm elfutils
+FileProvides: /usr/bin/fipscheck fipscheck
+FileProvides: /usr/bin/killall psmisc
+FileProvides: /usr/bin/mimencode metamail
+FileProvides: /usr/bin/mkisofs mkisofs
+FileProvides: /usr/bin/pkg-config pkg-config
+FileProvides: /usr/bin/python python-base
+FileProvides: /usr/bin/setfacl acl
+FileProvides: /usr/bin/sg_inq sg3_utils
+FileProvides: /usr/bin/tput ncurses-utils
+FileProvides: /usr/bin/xmllint libxml2-tools
+FileProvides: /usr/bin/Xvfb xorg-x11-server
+FileProvides: /usr/sbin/groupadd shadow
+FileProvides: /usr/sbin/lockdev lockdev
+FileProvides: /usr/sbin/useradd shadow
+FileProvides: /usr/sbin/usermod shadow
+FileProvides: /usr/bin/msgfmt gettext-runtime
+FileProvides: /usr/bin/python3 python3-base
+FileProvides: /sbin/mkinitrd dracut
+
+Preinstall: aaa_base attr bash coreutils diffutils
+Preinstall: filesystem fillup glibc grep
+Preinstall: libbz2-1 libgcc_s1 libncurses6 pam
+Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1
+Preinstall: liblzma5 libcap2 libacl1 libattr1
+Preinstall: libpopt0 libelf1 liblua5_3-5
+Preinstall: libpcre1
+
+Runscripts: aaa_base
+
+Prefer: libdb-4_8-devel
+VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1
+VMinstall: kernel-obs-build
+VMinstall: iproute2 libmnl0
+
+Required: rpm-build
+# Build all packages with -pie enabled
+Required: gcc-PIE
+
+# the basic stuff
+Support: pam-modules
+Support: hostname
+Support: perl build-mkbaselibs
+Prefer: build-mkbaselibs
+
+Support: brp-check-suse post-build-checks rpmlint-Factory
+
+### Branding related preferences
+Prefer: awesome:awesome-branding-upstream
+Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE
+Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream
+Prefer: enlightenment-theme-upstream
+Prefer: exo-data:exo-branding-upstream
+Prefer: fcitx:fcitx-branding-openSUSE
+Prefer: gdm:gdm-branding-upstream
+Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse
+Prefer: glib2:glib2-branding-upstream
+Prefer: gnome-panel:gnome-panel-branding-upstream
+Prefer: gnome-session:gconf2-branding-openSUSE
+Prefer: gnome-session:gnome-session-branding-openSUSE
+Prefer: icewm-theme-branding
+Prefer: kde4-kdm:kde4-kdm-branding-upstream
+Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream
+Prefer: kdelibs4-branding:kdelibs4-branding-upstream
+Prefer: kdelibs4:kdelibs4-branding-upstream
+Prefer: kdm:kdm-branding-upstream
+Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream
+Prefer: libexo-1-0:libexo-1-0-branding-upstream
+Prefer: libgarcon-1-0:libgarcon-branding-upstream
+Prefer: libgarcon-data:libgarcon-branding-upstream
+Prefer: libgio-2_0-0:gio-branding-upstream
+Prefer: libglib-2_0-0:glib2-branding-upstream
+Prefer: libpurple-branding-upstream
+Prefer: libreoffice:libreoffice-branding-upstream
+Prefer: libsocialweb:libsocialweb-branding-upstream
+Prefer: libxfce4ui:libxfce4ui-branding-upstream
+Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream
+Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream
+Prefer: NetworkManager-branding-upstream
+Prefer: PackageKit:PackageKit-branding-upstream
+Prefer: plasma5-desktop:plasma5-desktop-branding-upstream
+Prefer: plasma5-workspace:plasma5-workspace-branding-upstream
+Prefer: sddm:sddm-branding-upstream
+Prefer: systemd-presets-branding-SLE
+Prefer: wallpaper-branding-openSUSE
+Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream
+Prefer: xfce4-settings:xfce4-settings-branding-upstream
+Prefer: xfdesktop:xfdesktop-branding-upstream
+Prefer: yast2-branding-openSUSE
+Prefer: yast2-qt:yast2-qt-branding-openSUSE
+Prefer: yast2-theme-openSUSE
+
+# Build cycle handling - prefer -mini packages were possible, break deps as needed
+
+Conflict: krb5-devel:krb5-mini
+Conflict: krb5:krb5-mini-devel
+Prefer: gettext-tools-mini gettext-runtime-mini
+Prefer: ghostscript-mini
+Prefer: krb5-mini-devel:krb5-mini
+Prefer: krb5-mini krb5-mini-devel
+Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo
+Prefer: libunbound-devel-mini
+Prefer: log4j-mini
+Prefer: systemd-mini-devel:systemd-mini
+Prefer: systemd-mini systemd-mini-devel libsystemd0-mini
+Prefer: udev-mini libcom_err2-mini libext2fs2-mini
+Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel
+
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: erlang-rebar-obs:this-is-only-for-build-envs
+Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs
+Ignore: jdk-bootstrap:this-is-only-for-build-envs
+Ignore: libsystemd0-mini:this-is-only-for-build-envs
+Ignore: libudev-mini1:this-is-only-for-build-envs
+Ignore: libunbound-devel-mini:this-is-only-for-build-envs
+Ignore: systemd-mini:this-is-only-for-build-envs
+Ignore: udev-mini:this-is-only-for-build-envs
+Ignore: curl-mini:this-is-only-for-build-envs
+Ignore: libcurl-mini-devel:this-is-only-for-build-envs
+Ignore: libcurl4-mini:this-is-only-for-build-envs
+
+# Ring0 packages should not pull in 'info' - making the base VM smaller
+Ignore: binutils:info
+Ignore: bison:info
+Ignore: coreutils:info
+Ignore: cpio:info
+Ignore: diffutils:info
+Ignore: findutils:info
+Ignore: flex:info
+Ignore: gawk:info
+Ignore: gettext-runtime:info
+Ignore: gettext-tools:info
+Ignore: grep:info
+Ignore: groff:info
+Ignore: gzip:info
+Ignore: help2man:info
+Ignore: libgcrypt-devel:info
+Ignore: m4:info
+Ignore: make:info
+Ignore: sed:info
+Ignore: tar:info
+Ignore: util-linux:info
+Ignore: which:info
+
+# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system
+Ignore: Mesa:Mesa-dri
+Ignore: Mesa:Mesa-gallium
+
+# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems
+Conflict: python3-kiwi:curl-mini
+Conflict: python3-kiwi:libudev-mini1
+Conflict: python3-kiwi:systemd-mini
+Conflict: python3-kiwi:krb5-mini
+Conflict: python3-kiwi:gettext-tools-mini
+
+# udev: -full and -mini packages don't mingle well
+Prefer: libudev1:udev
+Conflict: libudev1:udev-mini
+Conflict: udev:libudev-mini1
+
+# systemd: -full and -mini packages don't mingle well
+Conflict: systemd:libsystemd0-mini
+Conflict: systemd-mini-devel:systemd
+
+# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl
+Prefer: cmake:libcurl4-mini
+Prefer: curl libcurl-devel libcurl4
+
+Prefer: -openSUSE-build-key
+# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs)
+Prefer: postfix
+# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal)
+
+# prefer the PHP5 variants over PHP7
+Prefer: php5-ctype
+Prefer: php5-devel
+Prefer: php5-dom
+Prefer: php5-ftp
+Prefer: php5-gd
+Prefer: php5-gettext
+Prefer: php5-mbstring
+Prefer: php5-pear
+Prefer: php5-pear-Archive_Tar
+Prefer: php5-pear-Horde
+Prefer: php5 php5-json
+Prefer: php5-tokenizer
+Prefer: php5-zip
+
+# go exists in mutliple versions by now - we prefer the 'unversioned package'
+Prefer: go
+
+# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one'
+Prefer: python2-pep8 python3-pep8
+
+# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl
+Prefer: perl
+
+# Assist migration to python-pycups (python3-cups is going to be removed)
+Prefer: python3-pycups python-pycups
+
+# Apache requires a MPM - we pick prefork
+Prefer: apache2:apache2-prefork
+
+# for symbol syslog (syslogd is best as it has the least dependencies)
+Prefer: syslogd
+
+# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt
+Prefer: star-rmt
+
+# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon;
+Prefer: notification-daemon
+
+# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW)
+Prefer: dummy-release
+
+# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version
+Prefer: -nodejs4
+
+# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original'
+Prefer: libpulse0-32bit
+
+# do not used openmpi variant to build against netcdf
+Prefer: netcdf-devel
+
+# Below list still needs to be reviewed
+
+Prefer: xorg-x11-Xvnc:icewm
+Prefer: cracklib-dict-small
+Prefer: libstdc++6 libgcc_s1 libquadmath0
+Prefer: libstdc++6-32bit libstdc++6-64bit
+Prefer: libstdc++6-x86
+Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit
+%ifarch s390x
+Prefer: -libstdc++41
+%endif
+Prefer: syslog-service
+Prefer: poppler-tools
+Prefer: libjpeg8-devel libjpeg-turbo
+Prefer: microcode_ctl:kernel-default
+Prefer: gnu-jaf yast2-control-center-qt
+Prefer: vim-normal myspell-american wine
+Prefer: amarok:amarok-xine
+Prefer: kdenetwork3-vnc:tightvnc
+Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api
+Prefer: -dbus-1-nox11
+Prefer: -servletapi3 -servletapi4 -servletapi5
+Prefer: icewm-lite
+Prefer: yast2-ncurses-pkg
+Prefer: monodevelop: mono-addins
+Prefer: texlive-xmltex texlive-tools texlive-jadetex
+Prefer: libesd-devel:esound
+Prefer: libesd0:esound-daemon
+Prefer: package-lists-openSUSE-KDE-cd: esound-daemon
+Prefer: librest-0_7-0
+
+Prefer: rhino:xmlbeans-mini
+Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail
+Prefer: mx4j:log4j-mini
+
+Prefer: rpcbind eclipse-source
+Prefer: libcdio_cdda0 libcdio_paranoia0
+Prefer: boo tog-pegasus
+Prefer: sysvinit(network) wicked-service
+Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd
+Prefer: kdebase4-openSUSE:kdebase4-workspace
+Prefer: ant:xerces-j2
+Prefer: dhcp-client:dhcp
+Prefer: libGLw1
+# provides typelib(St)
+Prefer: -cinnamon
+Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es
+Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el
+Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl
+Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da
+Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb
+Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar
+Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr
+Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el
+Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs
+Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu
+Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv
+Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar
+Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr
+Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el
+Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs
+Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu
+Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv
+Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar
+Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr
+Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el
+Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru
+Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da
+Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv
+Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar
+Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++
+Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g
+Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links
+Prefer: -python-setuptools
+Prefer: -kdenetwork3-InstantMessenger
+Prefer: -icc-profiles
+Prefer: vala
+# in doubt, take xerces
+Prefer: -crimson
+# in doubt, take higher versions
+Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4
+Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3
+Prefer: -rubygem-json_pure-1_5
+Prefer: geronimo-servlet-2_4-api
+Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi
+# python-scimpy: have choice for fftw-devel: fftw3-devel fftw3_3_3_6-gnu-hpc-devel fftw3_3_...
+Prefer: fftw3-devel
+# prefer the small systemd for building
+Prefer: star
+Prefer: xmlgraphics-commons:apache-commons-io
+# the -32bit stuff provides things it shouldn't (hopefully temporary)
+Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit
+Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit
+Prefer: postgresql postgresql-server postgresql-devel
+Prefer: -unzip-rcc
+Prefer: -primus -primus-32bit
+Prefer: -staging-build-key
+Prefer: -sssd-wbclient
+Prefer: -clutter-gst-devel
+Prefer: -opencv-qt5-devel
+# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg
+Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel
+Prefer: -ffmpeg2-devel -python-configparser2
+# as long as kactivities4 exists and is provided
+Prefer: kactivities5
+# oxygen5-icon-theme osboletes oxygen-icon-theme
+Prefer: oxygen5-icon-theme
+Prefer: npm6
+
+# kernel bug (coolo)
+Prefer: kernel-default-devel
+
+# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel
+# Prefer: libmariadb-devel
+Prefer: libmysqlclient-devel
+
+Prefer: wxWidgets-3_0-devel
+Prefer: libopenssl-devel
+
+Prefer: -NX -xaw3dd -db43
+Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis
+Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit
+Prefer: libffi-devel
+Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0
+Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit
+Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit
+Prefer: libgcc_s1-x86 libgcj_bc1
+Prefer: libgomp1 libgomp1-32bit libgomp1-64bit
+Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit
+Prefer: libobjc4 libgfortran3 libquadmath0
+Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini
+Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel
+Prefer: -seamonkey
+Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2
+Prefer: libopenal0-soft openal-soft -lsb-buildenv
+Prefer: -libevent
+Prefer: gnu-crypto libusb-compat-devel
+Prefer: libusb-0_1-4
+Prefer: libreoffice:xerces-j2
+Prefer: k3b:libdvdread4
+Prefer: glibc-devel
+Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4
+Prefer: NetworkManager:dhcp-client
+Prefer: kdebase3-SuSE:kdebase3
+Prefer: pcre-tools
+Prefer: libpopt0 makeinfo
+Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2
+Prefer: libgnome-keyring-devel
+Prefer: gnome-keyring-32bit
+Prefer: linux-glibc-devel
+Prefer: squid sysvinit
+Prefer: libpng16-compat-devel
+Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0
+Prefer: python3-docutils
+Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client
+#needed because new xml-commons package
+Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis
+Prefer: xmlgraphics-fop:xerces-j2
+Prefer: cogl-devel
+Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage
+Prefer: libpsm2-compat
+# choice p11-kit-nss-trust
+Prefer: mozilla-nss-certs
+# amarok dependency resolution
+Prefer: phonon-backend-gstreamer
+# replacing mkinitrd
+Prefer: dracut
+# replacing module-init-tools
+Prefer: kmod-compat
+# Temporary
+Prefer: oxygen5-cursors
+# Temporary
+Prefer: -perl-App-cpanminus
+# libmediaart is prepared for a larger update; for now favor mediaart-1.0
+Prefer: -typelib-1_0-MediaArt-2_0
+Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0
+Prefer: -python-atspi
+Prefer: gettext-its-gtk3 gtk3-schema
+# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory
+Prefer: ghostscript-devel
+# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it
+Prefer: libotf-devel
+
+Ignore: installation-images-openSUSE:cracklib-dict-full
+Ignore: systemd-sysvinit:systemd
+Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome
+Ignore: cracklib:cracklib-dict
+Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev
+Ignore: sysvinit:mingetty
+Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel
+Ignore: libgcj43,libstdc++43-devel
+Ignore: libgcj44,libstdc++44-devel
+Ignore: libgcj45,libstdc++45-devel
+Ignore: libgcj46,libstdc++46-devel
+Ignore: libgcj47,libstdc++47-devel
+Ignore: librtas:util-linux
+Ignore: pwdutils:openslp
+Ignore: rpm:suse-build-key,build-key
+Ignore: cloud-init:cloud-init-config
+# python-pyudev requires libudev1 in normal situations
+Ignore: python-pyudev:libudev1
+Ignore: python-SPARQLWrapper:python-rdflib
+Ignore: python3-SPARQLWrapper:python3-rdflib
+Ignore: bind-utils:bind-libs
+Ignore: portmap:syslogd
+Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng
+Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video
+Ignore: apache2:logrotate
+Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis
+Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper
+Ignore: kdelibs3-devel:libvorbis-devel
+Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb
+Ignore: kdebase3-SuSE:release-notes
+Ignore: jack:alsa,libsndfile
+Ignore: libxml2-devel:readline-devel
+Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration
+Ignore: libgda:file_alteration
+Ignore: gnutls:lzo,libopencdk
+Ignore: gnutls-devel:lzo-devel,libopencdk-devel
+Ignore: pango:cairo,glitz,libpixman,libpng
+Ignore: pango-devel:cairo-devel
+Ignore: cairo-devel:libpixman-devel
+Ignore: libgnomeprint:libgnomecups
+Ignore: libgnomeprintui:libgnomecups
+Ignore: orbit2-devel:indent
+Ignore: qt3:libmng
+Ignore: qt-sql:qt_database_plugin
+Ignore: libgnomecanvas-devel:glib-devel
+Ignore: libgnomeui:gnome-icon-theme,shared-mime-info
+Ignore: scrollkeeper:docbook_4
+Ignore: gnome-desktop:libgnomesu,startup-notification
+Ignore: python-devel:python-tk
+Ignore: libgtk-3-0:adwaita-icon-theme
+Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg
+Ignore: samba-libs:krb5
+Ignore: libbonoboui:gnome-desktop
+Ignore: libxfce4ui-1-0:exo-tools
+Ignore: docbook_4:iso_ent,xmlcharent
+Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification
+Ignore: docbook-xsl-stylesheets:xmlcharent
+Ignore: liby2util-devel:libstdc++-devel,openssl-devel
+Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2
+Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils
+Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel
+Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel
+Ignore: yast2-devtools:libxslt
+Ignore: yast2-iscsi-lio-server:lio-utils
+Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation
+Ignore: yast2-bootloader:bootloader-theme
+Ignore: yast2-packager:yast2-x11,libyui_pkg
+Ignore: autoyast2:yast2-schema
+# not during build
+Ignore: yui_backend
+Ignore: yast2-x11:sax2-libsax-perl
+Ignore: yast2-network:yast2-inetd
+Ignore: openslp-devel:openssl-devel
+Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed
+Ignore: texlive-bin:ghostscript-x11
+Ignore: texlive-bin-omega:ghostscript-x11
+Ignore: yast2-country:yast2-trans-stats
+Ignore: tpb:tpctl-kmp
+Ignore: tpctl:tpctl-kmp
+Ignore: zaptel:zaptel-kmp
+Ignore: mkinitrd:pciutils
+Ignore: pciutils:pciutils-ids
+Ignore: postfix:iproute2
+Ignore: aaa_base:systemd
+Ignore: gpm:systemd
+Ignore: openssh:systemd
+Ignore: cronie:systemd
+Ignore: systemd:kbd
+Ignore: systemd:kmod
+Ignore: systemd:systemd-presets-branding
+Ignore: systemd:dbus-1
+Ignore: systemd:pam-config
+Ignore: systemd:udev
+Ignore: pesign:systemd
+Ignore: logrotate:cron
+Ignore: texlive-filesystem:cron
+Ignore: xinit:xterm
+Ignore: xdm:xterm
+Ignore: gnome-control-center:gnome-themes-accessibility
+
+
+Ignore: man:groff-full
+Ignore: git-core:rsync
+Ignore: apache2:systemd
+Ignore: icewm-lite:icewm
+Ignore: cluster-glue:sudo
+Ignore: libgcc:glibc-32bit
+Ignore: libgcc41:glibc-32bit
+Ignore: libgcc42:glibc-32bit
+Ignore: libgcc43:glibc-32bit
+Ignore: libgcc44:glibc-32bit
+Ignore: libgcc45:glibc-32bit
+Ignore: libgcc46:glibc-32bit
+Ignore: libgcc47:glibc-32bit
+Ignore: libstdc++:glibc-32bit
+Ignore: libstdc41++:glibc-32bit
+Ignore: libstdc42++:glibc-32bit
+Ignore: libstdc43++:glibc-32bit
+Ignore: libstdc44++:glibc-32bit
+Ignore: libstdc45++:glibc-32bit
+Ignore: libstdc46++:glibc-32bit
+Ignore: libstdc47++:glibc-32bit
+Ignore: ncurses-32bit
+
+Ignore: susehelp:susehelp_lang,suse_help_viewer
+Ignore: mailx:smtp_daemon
+Ignore: cron:smtp_daemon
+Ignore: hotplug:syslog
+Ignore: pcmcia:syslog
+Ignore: openct:syslog
+Ignore: postfix:sysvinit(syslog)
+Ignore: cups:sysvinit(syslog)
+Ignore: jython:servlet
+Ignore: ispell:ispell_dictionary,ispell_english_dictionary
+Ignore: aspell:aspel_dictionary,aspell_dictionary
+Ignore: smartlink-softmodem:kernel,kernel-nongpl
+Ignore: libreoffice-de:myspell-german-dictionary
+Ignore: libreoffice:libreoffice-i18n
+Ignore: libreoffice:libreoffice-icon-themes
+Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any
+Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl
+Ignore: perl-Log-Log4perl:rrdtool
+
+Ignore: simias:mono(log4net)
+Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php
+
+Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver
+Ignore: xdg-menu:desktop-data
+Ignore: nessus-libraries:nessus-core
+Ignore: evolution:yelp
+Ignore: e17:e17-branding e17:e17-theme
+
+Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp)
+Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp)
+
+Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4)
+Ignore: libcdio:libcddb.so.2
+
+Ignore: coreutils:coreutils-lang
+Ignore: cpio:cpio-lang
+Ignore: glib2:glib2-lang
+Ignore: gtk2:gtk2-lang
+Ignore: gtk:gtk-lang
+Ignore: atk:atk-lang
+Ignore: MozillaThunderbird:pinentry-dialog
+Ignore: seamonkey:pinentry-dialog
+Ignore: pinentry:pinentry-dialog
+Ignore: gpg2:gpg2-lang
+Ignore: util-linux:util-linux-lang
+Ignore: suseRegister:distribution-release
+Ignore: compiz:compiz-decorator
+Ignore: icecream:gcc-c++
+Ignore: no
+Ignore: package
+Ignore: provides
+Ignore: j9vm/libjvm.so()(64bit)
+Ignore: kdepim3:suse_help_viewer
+Ignore: kdebase3-SuSE:kdebase3-SuSE-branding
+Ignore: kio_sysinfo:kdebase3-SuSE-branding
+Ignore: gnome-menus:gnome-menus-branding
+Ignore: epiphany:epiphany-branding
+Ignore: gnome-control-center:gnome-control-center-branding
+Ignore: phonon:phonon-backend
+Ignore: openwbem-devel
+Ignore: MozillaFirefox:MozillaFirefox-branding
+Ignore: yast2:yast2-branding
+Ignore: plymouth:plymouth-branding
+Ignore: plymouth:suspend
+Ignore: yast2-qt:yast2-branding
+Ignore: yast2-theme-SLE:yast2-branding
+Ignore: yast2-registration:yast2-registration-branding
+Ignore: compiz:compiz-branding
+Ignore: texlive:perl-Tk texlive-bin:perl-Tk
+Ignore: xfce4-desktop:xfce4-desktop-branding
+Ignore: xfce4-panel:xfce4-panel-branding
+Ignore: xfce4-session:xfce4-session-branding
+Ignore: kdebase4-runtime:kdebase4-runtime-branding
+Ignore: kwin:kdebase4-workspace-branding
+Ignore: transmission-common:transmission-ui
+Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd
+Ignore: mkinitrd:sbin_init samba-client:cifs-utils
+Ignore: opensc:pinentry
+Ignore: gpg2:pinentry
+Ignore: NetworkManager:dhcp
+Ignore: NetworkManager:iproute2
+# sysconfig requires it at runtime, not buildtime
+Ignore: sysconfig:dbus-1
+Ignore: sysconfig:procps
+Ignore: sysconfig:iproute2
+Ignore: sysconfig-network:iproute2
+Ignore: sysconfig:tunctl
+Ignore: sysconfig:sysvinit(network)
+# no build dependencies
+Ignore: libksuseinstall1:yast2-packager
+Ignore: libksuseinstall1:zypper
+Ignore: syslog-service:logrotate
+Ignore: libglue-devel:cluster-glue
+Ignore: libqca2:gpg2
+Ignore: NetworkManager:wpa_supplicant
+Ignore: NetworkManager:dhcp-client
+Ignore: openSUSE-release:product_flavor(openSUSE)
+Ignore: libgio-2_0-0:dbus-1-x11
+Ignore: weather-wallpaper:inkscape
+Ignore: libgamin-1-0:gamin-server
+Ignore: libfam0-gamin:gamin-server
+Ignore: python3:python3-pip
+Ignore: avahi:sysvinit(network)
+Ignore: cluster-glue:sysvinit(network)
+Ignore: dracut:systemd-sysvinit
+# actually a workaround for installation-images requiring
+# gettext-runtime-mini and getting conflict because systat
+# requires gettext (which is only provided by !-mini)
+Ignore: saptune:sysstat
+
+Macros:
+# RUBY - UNVERSIONED STUFF
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in the
+# prjconf aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}}
+%rubygemsSTOP() %nil
+%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*}
+%rubygemsxxSTOP(a:) %{-a*}) %*
+
+%rubySTOP() %nil
+%rubyxSTOP() %*
+
+%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}}
+
+%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}}
+
+%rubydevelSTOP() %nil
+%rubydevelxSTOP() %*
+#
+
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in
+# ruby2.5 aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}}
+%rubygemsxruby25() %{expand:%%{rubygemsx%*}}
+
+%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}}
+%rubyxruby25() %{expand:%%{rubyx%*}}
+
+%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}}
+%rubydevelxruby25() %{expand:%%{rubydevelx%*}}
+
+
+### Things to define default ruby stuff for the distro
+%rb_default_ruby ruby25
+%rb_default_ruby_suffix ruby2.5
+%rb_default_ruby_abi ruby:2.5.0
+:Macros
+
+Macros:
+%rb_build_ruby_abis ruby:2.5.0
+%rb_build_versions ruby25
+
+%_with_ruby25 1
+:Macros
+
+%define rb_default_ruby ruby25
+%define rb_default_ruby_suffix ruby2.5
+%define rb_default_ruby_abi ruby:2.5.0
+
+%define rb_build_ruby_abis ruby:2.5.0
+%define rb_build_versions ruby25
+
+%define _with_ruby25 1
+
+Prefer: -ruby-stdlib
+Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm
+Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus
+Prefer: %{rb_default_ruby_suffix}-rubygem-yard
+Prefer: %{rb_default_ruby_suffix}-rubygem-rspec
+Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake
+Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah
+Prefer: %{rb_default_ruby_suffix}-rubygem-inifile
+Prefer: %{rb_default_ruby_suffix}-rubygem-bundler
+Prefer: %{rb_default_ruby_suffix}-rubygem-sass
+Prefer: %{rb_default_ruby_suffix}-rubygem-cfa
+Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types
+
+# END RUBY STUFF
+
+# PYTHON STUFF
+
+Macros:
+%pythons %{?!skip_python2:python2} %{?!skip_python3:python3}
+
+# This method for generating python_modules gets too deep to expand at about 5 python flavors.
+# It is replaced by a Lua macro in macros.lua
+# However, OBS has a much higher expansion depth, so this works fine.
+%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}}
+%python_module_iter_STOP stop
+%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}}
+
+%add_python() %{expand:%%define pythons %pythons %1}
+:Macros
+
+# END PYTHON STUFF
+
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+# Prefer java 8 if java 9 was no option
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+# And then fall back to jaba 7 if needed
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+Substitute: java2-devel-packages java-devel
+
+%ifarch x86_64 ppc64 s390x sparc64
+Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit
+%else
+ %ifarch ppc sparc sparcv9
+Substitute: glibc-devel-32bit glibc-devel-64bit
+ %else
+Substitute: glibc-devel-32bit
+ %endif
+%endif
+
+%ifarch %ix86
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen
+%endif
+%ifarch ia64
+Substitute: kernel-binary-packages kernel-default kernel-debug
+%endif
+%ifarch x86_64
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen
+%endif
+%ifarch ppc
+Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3
+%endif
+%ifarch ppc64
+Substitute: kernel-binary-packages kernel-default kernel-ppc64
+%endif
+%ifarch s390
+Substitute: kernel-binary-packages kernel-s390
+%endif
+%ifarch s390x
+Substitute: kernel-binary-packages kernel-default
+%endif
+
+Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches
+# no longer needed according to Richard Biener
+# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector
+Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390x -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches
+# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops)
+Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+
+%ifarch sparcv9
+Target: sparcv9
+%endif
+%ifarch armv6l armv6hl
+Target: armv6hl-suse-linux
+%endif
+%ifarch armv7l armv7hl
+Target: armv7hl-suse-linux
+%endif
+
+Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection
+
+%define suse_version 1500
+%define sle_version 150000
+
+Macros:
+%suse_version 1500
+%sle_version 150000
+
+%insserv_prereq insserv sed
+%fillup_prereq fillup coreutils grep diffutils
+%suseconfig_fonts_prereq perl aaa_base
+%install_info_prereq info
+%kernel_module_package_buildreq kmod-compat kernel-syms
+%kernel_module_package_buildreqs kmod-compat kernel-syms
+
+%sles_version 0
+%do_profiling 1
+%_vendor suse
+
+# Reproducible builds
+%source_date_epoch_from_changelog Y
+
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 7
+# The following shlibs have latest versions built from GCC 6 sources
+%product_libs_gcc_ver_libasan3 6
+%product_libs_gcc_ver_libgo9 6
+%product_libs_gcc_ver_libgfortran3 6
+# reminded by richi 2017 4/3
+%product_libs_gcc_ver_libgcj_bc1 6
+# The following shlibs have been introduced with GCC 7
+%product_libs_gcc_ver_libmpxwrappers2 7
+%product_libs_gcc_ver_libmpx2 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libgfortran4 7
+%gcc_version 7
+
+%ext_info .gz
+%ext_man .gz
+
+%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+
+%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+:Macros
+
+# BEGIN RUST STUFF
+
+# Define the architectures in which Rust (and Rust crates) are available
+# NOTE: Keep this in sync with rust-srpm-macros!
+%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x
+
+Macros:
+%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x
+:Macros
+
+# END RUST STUFF
+
+Prefer: systemd-presets-branding-SLE
+
+# the old python-msgpack-python should be dropped, but salt
+# is still requires the old name
+Prefer: python3-msgpack
+
+%ifarch s390
+Ignore: python2-numpy-devel:openblas-devel
+Ignore: python3-numpy-devel:openblas-devel
+%endif
+
+Prefer: -openssl-1_0_0
+
+Buildflags: useccache:ceph
+
+Support: python-rpm-macros
+
+Prefer: ImageMagick-config-7-upstream
+
+Prefer: chrony-pool-suse
+
+Prefer: pciutils-ids
+
+Prefer: -libcurl4-mini
+Prefer: cmake3-full
+
+Macros:
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 11
+# The following shlibs have the latest version built from GCC 7 sources
+%product_libs_gcc_ver_libgfortran4 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libubsan0 7
+%product_libs_gcc_ver_libcilkrts5 7
+%product_libs_gcc_ver_libgo11 7
+# The following shlibs have the latest version built from GCC 8
+%product_libs_gcc_ver_libmpx2 8
+%product_libs_gcc_ver_libmpxwrappers2 8
+%product_libs_gcc_ver_libgo13 8
+# The following shlibs have the latest version built from GCC 9 sources
+%product_libs_gcc_ver_libasan5 9
+%product_libs_gcc_ver_libgo14 9
+# The following shlibs have the latest version built from GCC 10 sources
+%product_libs_gcc_ver_libgphobos1 10
+%product_libs_gcc_ver_libgdruntime1 10
+%product_libs_gcc_ver_libgo16 10
+
+:Macros
+
+# After the build 20200723 update .pc files are also in 32bit packages causing have-choice
+Prefer: -alsa-devel-32bit
+Prefer: -atk-devel-32bit
+Prefer: -atkmm1_6-devel-32bit
+Prefer: -at-spi2-core-devel-32bit
+Prefer: -at-spi-devel-32bit
+Prefer: -audit-devel-32bit
+Prefer: -augeas-devel-32bit
+Prefer: -bluez-devel-32bit
+Prefer: -cairo-devel-32bit
+Prefer: -cairomm1_0-devel-32bit
+Prefer: -cairomm-devel-32bit
+Prefer: -cppunit-devel-32bit
+Prefer: -cyrus-sasl-devel-32bit
+Prefer: -dbus-1-devel-32bit
+Prefer: -dbus-1-glib-devel-32bit
+Prefer: -device-mapper-devel-32bit
+Prefer: -dirac-devel-32bit
+Prefer: -flac-devel-32bit
+Prefer: -fontconfig-devel-32bit
+Prefer: -freetype2-devel-32bit
+Prefer: -gdk-pixbuf-devel-32bit
+Prefer: -glu-devel-32bit
+Prefer: -gstreamer-devel-32bit
+Prefer: -gstreamer-plugins-base-devel-32bit
+Prefer: -gtk2-devel-32bit
+Prefer: -gtk3-devel-32bit
+Prefer: -hunspell-devel-32bit
+Prefer: -ImageMagick-devel-32bit
+Prefer: -libart_lgpl-devel-32bit
+Prefer: -libavc1394-devel-32bit
+Prefer: -libbasicobjects-devel-32bit
+Prefer: -libblkid-devel-32bit
+Prefer: -libbz2-devel-32bit
+Prefer: -libcelt-devel-32bit
+Prefer: -libcollection-devel-32bit
+Prefer: -libcom_err-devel-32bit
+Prefer: -libcurl-devel-32bit
+Prefer: -libdhash-devel-32bit
+Prefer: -libdmx-devel-32bit
+Prefer: -libdrm-devel-32bit
+Prefer: -libelf-devel-32bit
+Prefer: -libexif-devel-32bit
+Prefer: -libexpat-devel-32bit
+Prefer: -libext2fs-devel-32bit
+Prefer: -libfontenc-devel-32bit
+Prefer: -libgbm-devel-32bit
+Prefer: -libgck-devel-32bit
+Prefer: -libgcr-devel-32bit
+Prefer: -libglvnd-devel-32bit
+Prefer: -libgnutls-devel-32bit
+Prefer: -libgphoto2-devel-32bit
+Prefer: -libHX-devel-32bit
+Prefer: -libICE-devel-32bit
+Prefer: -libicu-devel-32bit
+Prefer: -libini_config-devel-32bit
+Prefer: -libjack-devel-32bit
+Prefer: -libkms-devel-32bit
+Prefer: -liblbxutil-devel-32bit
+Prefer: -liblcms2-devel-32bit
+Prefer: -libMagick++-devel-32bit
+Prefer: -libmount-devel-32bit
+Prefer: -libnettle-devel-32bit
+Prefer: -libnl3-devel-32bit
+Prefer: -libnotify-devel-32bit
+Prefer: -libpackagekit-glib2-devel-32bit
+Prefer: -libpulse-devel-32bit
+Prefer: -libQt5Concurrent-devel-32bit
+Prefer: -libQt5Core-devel-32bit
+Prefer: -libQt5DBus-devel-32bit
+Prefer: -libQt5Gui-devel-32bit
+Prefer: -libQt5Network-devel-32bit
+Prefer: -libQt5OpenGL-devel-32bit
+Prefer: -libQt5PrintSupport-devel-32bit
+Prefer: -libqt5-qtconnectivity-devel-32bit
+Prefer: -libqt5-qtdeclarative-devel-32bit
+Prefer: -libqt5-qtlocation-devel-32bit
+Prefer: -libqt5-qtmultimedia-devel-32bit
+Prefer: -libqt5-qtserialport-devel-32bit
+Prefer: -libqt5-qtsvg-devel-32bit
+Prefer: -libqt5-qttools-devel-32bit
+Prefer: -libqt5-qtwayland-devel-32bit
+Prefer: -libqt5-qtwebchannel-devel-32bit
+Prefer: -libqt5-qtwebsockets-devel-32bit
+Prefer: -libqt5-qtx11extras-devel-32bit
+Prefer: -libqt5-qtxmlpatterns-devel-32bit
+Prefer: -libQt5Sql-devel-32bit
+Prefer: -libQt5Test-devel-32bit
+Prefer: -libQt5Widgets-devel-32bit
+Prefer: -libQt5Xml-devel-32bit
+Prefer: -libraw1394-devel-32bit
+Prefer: -libref_array-devel-32bit
+Prefer: -libSDL2-devel-32bit
+Prefer: -libSDL-devel-32bit
+Prefer: -libSDL_gfx-devel-32bit
+Prefer: -libSM-devel-32bit
+Prefer: -libsoup-devel-32bit
+Prefer: -libtasn1-devel-32bit
+Prefer: -libtiff-devel-32bit
+Prefer: -libusb-1_0-devel-32bit
+Prefer: -libuuid-devel-32bit
+Prefer: -libv4l-devel-32bit
+Prefer: -libva-devel-32bit
+Prefer: -libvdpau-devel-32bit
+Prefer: -libverto-devel-32bit
+Prefer: -libvirt-devel-32bit
+Prefer: -libvorbis-devel-32bit
+Prefer: -libwayland-egl-devel-32bit
+Prefer: -libwebp-devel-32bit
+Prefer: -libX11-devel-32bit
+Prefer: -libXau-devel-32bit
+Prefer: -libXaw3d-devel-32bit
+Prefer: -libXaw-devel-32bit
+Prefer: -libxcb-devel-32bit
+Prefer: -libXcomposite-devel-32bit
+Prefer: -libXcursor-devel-32bit
+Prefer: -libXdamage-devel-32bit
+Prefer: -libXdmcp-devel-32bit
+Prefer: -libXext-devel-32bit
+Prefer: -libXfixes-devel-32bit
+Prefer: -libXfont2-devel-32bit
+Prefer: -libXfontcache-devel-32bit
+Prefer: -libXfont-devel-32bit
+Prefer: -libXft-devel-32bit
+Prefer: -libXi-devel-32bit
+Prefer: -libXinerama-devel-32bit
+Prefer: -libxkbcommon-devel-32bit
+Prefer: -libxkbcommon-x11-devel-32bit
+Prefer: -libxkbfile-devel-32bit
+Prefer: -libxml2-devel-32bit
+Prefer: -libXmu-devel-32bit
+Prefer: -libXp-devel-32bit
+Prefer: -libXpm-devel-32bit
+Prefer: -libXprintUtil-devel-32bit
+Prefer: -libXrandr-devel-32bit
+Prefer: -libXrender-devel-32bit
+Prefer: -libXres-devel-32bit
+Prefer: -libxslt-devel-32bit
+Prefer: -libXss-devel-32bit
+Prefer: -libXt-devel-32bit
+Prefer: -libXtst-devel-32bit
+Prefer: -libXv-devel-32bit
+Prefer: -libXvMC-devel-32bit
+Prefer: -libXxf86dga-devel-32bit
+Prefer: -libXxf86misc-devel-32bit
+Prefer: -libXxf86vm-devel-32bit
+Prefer: -Mesa-libEGL-devel-32bit
+Prefer: -Mesa-libGL-devel-32bit
+Prefer: -Mesa-libGLESv1_CM-devel-32bit
+Prefer: -Mesa-libGLESv2_CM-devel-32bit
+Prefer: -Mesa-libGLESv2-devel-32bit
+Prefer: -mpg123-devel-32bit
+Prefer: -ncurses-devel-32bit
+Prefer: -NetworkManager-devel-32bit
+Prefer: -openal-soft-devel-32bit
+Prefer: -openjpeg-devel-32bit
+Prefer: -pango-devel-32bit
+Prefer: -pciutils-devel-32bit
+Prefer: -sane-backends-devel-32bit
+Prefer: -tslib-devel-32bit
+Prefer: -typelib-1_0-Gst-1_0-32bit
+Prefer: -wayland-devel-32bit
+Prefer: -xcb-util-devel-32bit
+Prefer: -xcb-util-image-devel-32bit
+Prefer: -xcb-util-keysyms-devel-32bit
+Prefer: -xcb-util-renderutil-devel-32bit
+Prefer: -xcb-util-wm-devel-32bit
+Prefer: -xz-devel-32bit
+Prefer: -zlib-devel-32bit
+Prefer: -zvbi-devel-32bit
+
+Prefer: libboost_thread1_66_0
+Prefer: libboost_system1_66_0
+Prefer: libboost_regex1_66_0
+Prefer: libboost_filesystem1_66_0
+Prefer: libboost_iostreams1_66_0
+Prefer: libboost_date_time1_66_0
+
+Prefer: -libsmartcols-devel-32bit
+Prefer: -krb5-devel-32bit
+Prefer: -lzo-devel-32bit
+Prefer: -liboping-devel-32bit
+Prefer: -unixODBC-devel-32bit
+Prefer: -libcmocka-devel-32bit
+
+# ro added 20220207 requested by dmueller
+Prefer: -samba-devel-32bit
+Prefer: -libqt5-qtscript-devel-32bit
+
+FileProvides: /usr/bin/host bind-utils
+
+Substitute: system-packages:podman kmod kernel-default podman buildah createrepo_c
+
+Prefer: libyui-ncurses9
+Prefer: libyui-ncurses-pkg9 libyui-qt9 libyui-qt-graph9 libyui-qt-pkg9
+Prefer: samba-libs-python3
+Ignore: !pciutils:pciutils-ids
+Prefer: kernel-default
+Ignore: multipath-tools:kmod(dm-multipath),kmod(dm-multipath),kmod(scsi_dh_emc),kmod(scsi_dh_rdac),kmod(scsi_dh_alua)
+Prefer: python2-configparser
+Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !gio-branding-upstream
+
+######### JAVA
+# FATE#326347
+# First we need to de-prefer the java versions prefered in the SLE-15:GA prj Config:
+Prefer: -java-10-openjdk -java-10-openjdk-devel -java-10-openjdk-javadoc -java-10-openjdk-headless
+Prefer: -java-1_8_0-openjdk -java-1_8_0-openjdk-devel -java-1_8_0-openjdk-javadoc -java-1_8_0-openjdk-headless
+Prefer: -java-1_7_0-openjdk -java-1_7_0-openjdk-devel -java-1_7_0-openjdk-javadoc -java-1_7_0-openjdk-headless
+
+# Now we set the prefered Java version, but need fallbacks for some packages:
+Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless
+
+# It might be better to 'de-prefer' the "old" ones, and omit the line above
+# according to Adrian. This needs some testing.
+# Unfortuantely this will bite us when packages require an old java
+
+# 8 before 10 on advice of fstrba
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+# don't use that - fstrba
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+# 15:GA has Prefer:go which will set the default to th eunverisoned go.
+# some packages stumble over "have choice for go >= 1.11: go1.11 go1.12", this will prevent this.
+# go1.12 is taken from 15:Update
+Prefer: go1.12
+
+
+# avoid the SP0 slurm 18.8 variants in SP1
+Prefer: slurm libpmi0 slurm-config slurm-node slurm-plugins
+
+# prefer one of the python-pytests. Marcus 20200512
+Prefer: python-pytest4 python2-pytest4 python3-pytest4
+
+# have conflict ebtween python3-pycrypto and python3-pycryptodome
+Prefer: python3-pycryptodome
+
+# prefer go1.14 (over go1.13). Gustavo 20200514
+# this breaks caasp Marcus 20200515
+#Prefer: go1.14
+
+
+# From Fabian Vogt on 2021023
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+
+# needed for latest Kiwi (sr#238860)
+Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires
+Conflict: python3-kiwi:libsystemd0-mini
+
+Prefer: enchant-2-backend-hunspell
+
+Macros:
+%sle_version 150200
+
+######### gcc9
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 9
+# The following shlibs have the latest version built from GCC 7 sources
+%product_libs_gcc_ver_libgfortran4 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libubsan0 7
+%product_libs_gcc_ver_libcilkrts5 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libobjc4 7
+# The following shlibs have the latest version built from GCC 8
+%product_libs_gcc_ver_libmpx2 8
+%product_libs_gcc_ver_libmpxwrappers2 8
+%product_libs_gcc_ver_libgo13 8
+######### end of gcc9
+
+:Macros
+
+# Prefer over libyui9* from SP1-GA
+Prefer: libyui11
+Prefer: libyui-ncurses11
+# Additional prefers for installation-images
+Prefer: libyui-ncurses-pkg11 libyui-qt11 libyui-qt-graph11 libyui-qt-pkg11
+Substitute: libyui libyui11
+Substitute: libyui-ncurses libyui-ncurses11
+Substitute: libyui-ncurses-pkg libyui-ncurses-pkg11
+Substitute: libyui-qt libyui-qt11
+Substitute: libyui-qt-graph libyui-qt-graph11
+Substitute: libyui-qt-pkg libyui-qt-pkg11
+
+# Help with the switch to the gcc9 provided libs: (bsc#1154695)
+Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5
+
+# Needed after SR#203451 and SR#204957
+Substitute: infiniband-diags-devel rdma-core-devel
+
+# Needed after SR#205137
+Prefer: python3-pycryptodome
+# Needed after GNOME 3.34 rebase
+Prefer: libvala-0_46-devel
+
+# Needed with latest rpm (Use libgcrypt as crypto library for SP2 [jsc#SLE-9552])
+Preinstall: libgcrypt20 libgpg-error0
+
+# Needed for maven (jsc#SLE-8786)
+Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm
+Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel
+Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap
+Prefer: xml-commons-apis xml-commons-resolver
+Prefer: log4j12-mini
+Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap
+Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap
+Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap
+Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap
+Prefer: bsh2
+Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap
+Prefer: apache-commons-net
+Prefer: gradle groovy-lib eclipse-swt gpars
+
+%ifarch %arm ppc riscv64 aarch64
+# required by u-boot (SR#205959) in order to build the full multiboot set plus eventual additional packages:
+Macros:
+%prjconf_multibuild_selection patch
+:Macros
+%endif
+
+# Default to Java 11
+Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-headless java-11-openjdk-javadoc
+%ifarch s390x
+Prefer: java-1_8_0-openj9 java-1_8_0-openj9-devel java-1_8_0-openj9-headless
+%endif
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-headless java-1_8_0-openjdk-javadoc
+Prefer: java-10-openjdk-devel java-10-openjdk java-10-openjdk-devel java-10-openjdk-headless java-10-openjdk-javadoc
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-headless java-9-openjdk-javadoc
+Prefer: java-1_7_0-bootstrap-devel java-1_7_0-bootstrap java-1_7_0-bootstrap-headless
+
+# use rpm by default to build, instead of rpm-ndb
+Prefer: rpm
+
+# Needed with latest rpm (Added zstd support in SLE-15-SP2 [bsc#1162668])
+Preinstall: libzstd1
+
+# needed due to udisk devel package name changeinstallcheck: ignore rpm-ndb slurm-cray slurm-hdf5 slurm-slurmdbd slurm-webdoc setools-gui
+Prefer: libudisks2-0-devel
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: cmake-mini:this-is-only-for-build-envs
+
+# Cmake exists as a -mini flavor, which is not linked against curl.
+Prefer: cmake-mini
+
+# needed due to SR#213548
+Prefer: ocaml-compiler-libs-devel
+
+# required after SR#214781
+Prefer: python2-contextlib2
+
+# Required after SR#215195
+Prefer: chrony-pool-suse
+
+%ifarch i586
+# required after MU#13672 / SR#208944 (slurm_18_08)
+Prefer: slurm libpmi0 slurm-config slurm-plugins slurm-node
+%endif
+
+# required after MU#14605 / SR#215186 (python3-azuremetadata)
+Substitute: azuremetadata python3-azuremetadata
+
+# required after changes form the weekend of April 26
+Prefer: python3-pytest
+Prefer: python2-pytest
+
+# required after CTLG for PackageKit, which introduced dnf
+Prefer: PackageKit-backend-zypp
+
+# required after SR#214474
+Prefer: python2-subprocess32
+
+### from SUSE:SLE-15-SP2:Update
+%define _repository snapshot-SP4
+# define a prefix for all package builds in SLE 15 SP3 to handle migration of packages
+# with identical version but lower release version than in a preceding codestream
+# Marcus Meissner 20220117
+Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT>
+
+# have choice for python2-pycrypto needed by python2-oauth2client: python2-pycrypto python2-pycryptodome 20200916 - gboiko
+Prefer: python2-pycrypto
+
+# avoid have choice for pkgconfig(gnutls): libgnutls-devel libgnutls-devel-32bit
+Prefer: libgnutls-devel
+
+# qt5 prefers (32bit mess)
+Prefer: libQt5Test-devel libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel libQt5PrintSupport-devel libQt5Concurrent-devel
+
+# have choice for pkgconfig(bluez): bluez-devel bluez-devel-32bit (32bit mess)
+Prefer: bluez-devel
+
+# conflict with postgresql13-devel-mini ?
+Prefer: libpq5
+
+Prefer: gdk-pixbuf-devel
+
+# copy grub2-arm64-efi to all archs (bsc#1186565)
+%ifarch aarch64 ppc64le s390x x86_64
+ExportFilter: ^grub2-arm64-efi-.*\.rpm$ . ppc64le s390x x86_64
+%endif
+
+# From Fabian Vogt on 2021023
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips
+
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips
+
+
+# for thunderbird (nodejs >= 10 ... has 3 options)
+
+Prefer: nodejs14
+
+# we now have a cmake-full at the version of cmake3 from SUSE:SLE-15:Update, to avoid it pulling the override by defualt,
+# use this prefer change Marcus 20220201
+Prefer: -cmake3-full
+Prefer: cmake-full
+
+### from SUSE:SLE-15-SP3:GA
+%define _repository standard
+
+Macros:
+
+### from SUSE:SLE-15-SP3:GA
+
+%_repository standard
+:Macros
+# COMMON BEGIN common part
+%define sle_version 150300
+Macros:
+%sle_version 150300
+:Macros
+
+# Prefer later so_version of libyui* over libyui*8 (SP0), libyui*9 (SP1) and libyui*11 (SP2)
+Prefer: -libyui8 -libyui-ncurses8 -libyui-ncurses-pkg8 -libyui-qt8 -libyui-qt-graph8 -libyui-qt-pkg8
+Prefer: -libyui9 -libyui-ncurses9 -libyui-ncurses-pkg9 -libyui-qt9 -libyui-qt-graph9 -libyui-qt-pkg9
+Prefer: -libyui11 -libyui-ncurses11 -libyui-ncurses-pkg11 -libyui-qt11 -libyui-qt-graph11 -libyui-qt-pkg11 -libyui-ncurses-rest-api11 -libyui-qt-rest-api11
+
+# Revert substitutions from SP2
+Substitute: libyui libyui
+Substitute: libyui-ncurses libyui-ncurses
+Substitute: libyui-ncurses-pkg libyui-ncurses-pkg
+Substitute: libyui-qt libyui-qt
+Substitute: libyui-qt-graph libyui-qt-graph
+Substitute: libyui-qt-pkg libyui-qt-pkg
+Substitute: libyui-ncurses-rest-api libyui-ncurses-rest-api
+Substitute: libyui-qt-rest-api libyui-qt-rest-api
+# required after SR#225674 / jsc#SLE-12712
+Prefer: gmmlib-devel
+
+# required after SR#225669
+Preinstall: libcrypt1
+
+# required for latest Mesa
+Prefer: libdrm-devel Mesa-libGL-devel libglvnd-devel libkms-devel Mesa-libEGL-devel libva-devel libdbusmenu-qt5-devel
+
+# required after SR#226419
+Prefer: typelib-1_0-Gst-1_0
+
+# required for latest Mesa
+Prefer: Mesa-libGLESv2-devel Mesa-libGLESv1_CM-devel
+
+# not sure why we need those
+Prefer: libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel
+
+# required after MU#16450 (gnutls)
+Prefer: libgnutls-devel
+
+# required after SR#228340
+Prefer: systemd-sysvinit
+
+# required after SR#227910 (alsa) and SR#228076 (pulseaudio)
+Prefer: alsa-devel libpulse-devel
+
+# required after SR#227917 (kernel-firmware)
+Prefer: kernel-firmware
+
+# required after SR#229310
+Prefer: systemd-default-settings-branding-SLE
+
+Prefer: -libMagick++-devel-32bit -ImageMagick-devel-32bit -pciutils-devel-32bit
+Prefer: -libgbm-devel-32bit -device-mapper-devel-32bit
+
+# required after SR#230365 and SR#230366
+Prefer: plymouth-branding-SLE
+
+# required after SR#228415
+Ignore: !pango-devel:cairo-devel
+
+# required after SR#228071
+Substitute: kmod-compat kmod
+# replacing module-init-tools
+Prefer: -kmod-compat
+
+# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190)
+Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit
+Substitute: postfix-lmdb postfix
+
+# jsc#SLE-17030
+Ignore: postgresql12-devel-mini:this-is-only-for-build-envs
+Ignore: postgresql13-devel-mini:this-is-only-for-build-envs
+Prefer: postgresql13-devel-mini postgresql12-devel-mini
+
+# needed after SR#236147
+Prefer: -mpg123-devel-32bit
+
+# Prefer coreutils over coreutils-single (SR#236655, bsc#1182550, jsc#SLE-13520, jsc#SLE-13756)
+Prefer: -coreutils-single
+
+# From Fabian Vogt on 2021023
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+# COMMON END common part
+
+# due to libreoffice
+Prefer: -sane-backends-devel-32bit
+
+Prefer: -libX11-devel-32bit
+
+# needed for latest Kiwi (sr#238860)
+Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires
+Conflict: python3-kiwi:libsystemd0-mini
+
+# needed for MU#18655
+Prefer: -python3-vsts
+
+# due to MU#19157
+Prefer: -libboost_regex_legacy
+# From Fabian Vogt on 20210913 ... patterns-base-fips temporary
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips !systemd-mini-container
+
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips !systemd-mini-container
+
+# after secondary icu version release Marcus 20211214
+
+Prefer: libicu-devel
+
+
+# gboiko, 20220202 fixing the following unresolvable:
+# have choice for libwbclient.so.0()(64bit) needed by cifs-utils: libwbclient0 samba-client-libs
+Prefer: samba-client-libs samba-devel
+
+# BEGIN RUST STUFF
+Prefer: cargo1.58 cargo1.57
+
+# Define the architectures in which Rust (and Rust crates) are available
+# NOTE: Keep this in sync with rust-srpm-macros!
+%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le riscv64 s390x
+%define rust_tier1_arches x86_64 aarch64
+
+Macros:
+%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le riscv64 s390x
+%rust_tier1_arches x86_64 aarch64
+:Macros
+
+# END RUST STUFF
+Prefer: -python3-cairo-devel -python2-cairo-devel -python3-gobject2-devel
+Prefer: -keyutils-devel-32bit -gtk4-devel-32bit
+
+# needed due to SR#249037
+Prefer: -libgcrypt-devel-32bit
+
+# from Factory: PHP requires php-sapi, which can be provided by multiple packages. We prefer -cli, related to the specific PHP version
+# needed due to SR#249799
+Prefer: php8:php8-cli
+
+# needed after php7 update (SR#255237)
+Prefer: php7:php7-cli
+
+# required due to php-composer2 SR#263267
+Prefer: -php7
+
+# needed due to libxml2 (SR#255607)
+Prefer: -python3-libxml2-python
+Substitute: python3-libxml2-python python3-libxml2
+
+# required after SR#249636
+Prefer: -libavcodec-devel -libavfilter-devel -libavformat-devel -libavutil-devel
+
+# required after luajit SR#255872
+Prefer: -lua51-luajit-devel
+
+# required after zstd SR#256594
+Prefer: -libzstd-devel-32bit
+
+# required due to libsoup2 SR#256752
+Prefer: -libsoup2-devel-32bit
+
+Prefer: java-17-openjdk-devel java-17-openjdk java-17-openjdk-headless java-17-openjdk-javadoc
+
+# required due to systemd SR#258723
+Prefer: -libfdisk-devel-32bit
+
+# required after libpcap SR#249500
+# required due to umockdev SR#259947
+Prefer: -libpcap-devel-32bit
+
+# must be removed after fix for bsc#1193711 is merged
+# can also be removed in case bsc#1194749 is fully fixed
+Support: python-rpm-macros
+
+# required for suseconnect-ng replacing SUSEConnect and zypper-migration-plugin
+Prefer: -SUSEConnect
+Prefer: -zypper-migration-plugin
+
+# IBS is preferring literal matches over provides, therefore substituting with suseconnect-ng
+Substitute: SUSEConnect suseconnect-ng
+Substitute: zypper-migration-plugin suseconnect-ng
+
+# Fix fot Qt stack update
+Prefer: -libqt5-qtremoteobjects-devel-32bit
+Prefer: -libqt5-qtspeech-devel-32bit
+Prefer: -xcb-util-cursor-devel-32bit
+# from Factory:
+# pipewire has a jack compatible implementation - but for now we prefer the real jack
+Prefer: -pipewire-libjack-0_3-devel libjack0
+
+# required due to libyui SR#263810
+Prefer: -libyui-ncurses15 -libyui-ncurses-pkg15 -libyui-ncurses-rest-api15 -libyui-qt15 -libyui-qt-graph15 -libyui-qt-pkg15 -libyui-qt-rest-api15
+
+# required due to samba SR#262961
+Prefer: -libsmbclient0 -libwbclient0 -libsmbclient-devel -libwbclient-devel -samba-devel-32bit -libndr-krb5pac-devel -libndr-nbt-devel
+
+# required due to liburing2 SR#263841
+Prefer: -liburing2-devel
+
+# required due to php-composer2 SR#263267
+Prefer: -php7
+
+# required for systemd SR#263844
+Substitute: libudev-devel systemd-devel
+Substitute: libudev-mini-devel systemd-mini-devel
+Prefer: -libudev-mini-devel
+Prefer: -libudev-devel
+Prefer: -libudev-devel-32bit
+
+# required for some Public Cloud and JeOS flavours to correctly resolve the zypper-lifecycle-plugin
+# dependency on /usr/bin/ruby, as ruby2.5 isn't pulled in by SUSEConnect anymore.
+FileProvides: /usr/bin/ruby ruby2.5
+
+%define skip_python2 1
+%define _without_python2 1
+
+Macros:
+## PYTHON MACROS BEGIN
+# order of %pythons is important: The last flavor overrides any operation on conflicting files and definitions during expansions,
+# making it the "default" in many cases --> keep the primary python3 provider at the end.
+%pythons %{?!skip_python3:python3}
+%add_python() %{expand:%%define pythons %1 %pythons}
+
+%_without_python2 1
+:Macros
+
+Prefer: -python -python-base
+
+# IBS is pulling in the outdated txt2tags instead of python3-txt2tags to build thunderbolt-user-space (bsc#1196688)
+Substitute: txt2tags python3-txt2tags
+
+# required due to bash SR#265536
+FileProvides: /bin/bash bash
+FileProvides: /bin/sh bash-sh busybox-sh
+Prefer: bash-sh
+Preinstall: bash bash-sh
+Prefer: -busybox
+# required for openblas (SR#269449)
+Prefer: -openblas-devel
+Substitute: openblas-devel libopenblas_pthreads-devel
+
diff --git a/configs/sle15.5.conf b/configs/sle15.5.conf
new file mode 100755
index 0000000..02b3d6f
--- /dev/null
+++ b/configs/sle15.5.conf
@@ -0,0 +1,1811 @@
+### from SUSE:SLE-15:GA
+
+%define gcc_version 7
+
+# new cycle handling
+BuildFlags: genmetaalgo:1
+
+Constraint: linux:version:min 3.0.0
+%ifarch aarch64 ppc64le %ix86 x86_64 s390 s390x ppc64le
+Constraint: sandbox secure
+%endif
+%ifarch ppc ppc64 ppc64le
+Constraint: hardware:cpu:flag power8
+%endif
+
+# play safe, introduced 2022/10/05
+BuildFlags: kvm-max-cpu-compat-power8
+
+# create conflicts for packages installed into the target image
+Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini
+Substitute: build-packages:docker python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini
+Substitute: system-packages:docker docker kmod-compat sysvinit-tools kernel-default createrepo_c
+Substitute: kiwi python3-kiwi
+Substitute: system-packages:mock mock createrepo_c
+Substitute: system-packages:kiwi-image python3-kiwi createrepo_c tar
+Substitute: kiwi-packagemanager:instsource product-builder-plugin-SLE_15
+Substitute: system-packages:kiwi-product product-builder
+Substitute: kiwi-packagemanager: kiwi-packagemanager:zypper
+Prefer: -python2-kiwi
+
+# s390 hacks
+%ifarch s390
+Substitute: valgrind
+Substitute: valgrind-devel
+Substitute: pkgconfig(valgrind)
+%endif
+%ifarch s390 s390x
+Substitute: libunwind-devel
+Substitute: pkgconfig(libunwind)
+%endif
+
+%ifarch s390 s390x
+Ignore: libsensors4-devel
+%endif
+
+%define _without_mono 1
+Macros:
+%_without_mono 1
+:Macros
+
+# lua, lua51, lua52 and lua53 all provide 'lua'; version 5.3 is the 'target'; lua will be deleted in the future
+Prefer: lua53 liblua5_3-5 lua53-devel libtolua++-5_3-devel
+Prefer: -liblua5_3 -liblua5_1 -liblua5_2
+
+FileProvides: /bin/csh tcsh
+FileProvides: /bin/logger util-linux-systemd
+FileProvides: /sbin/netconfig sysconfig-netconfig
+FileProvides: /sbin/setcap libcap-progs
+FileProvides: /usr/bin/csh tcsh
+FileProvides: /usr/bin/docbook2man docbook-utils
+FileProvides: /usr/bin/eu-nm elfutils
+FileProvides: /usr/bin/fipscheck fipscheck
+FileProvides: /usr/bin/killall psmisc
+FileProvides: /usr/bin/mimencode metamail
+FileProvides: /usr/bin/mkisofs mkisofs
+FileProvides: /usr/bin/pkg-config pkg-config
+FileProvides: /usr/bin/python python-base
+FileProvides: /usr/bin/setfacl acl
+FileProvides: /usr/bin/sg_inq sg3_utils
+FileProvides: /usr/bin/tput ncurses-utils
+FileProvides: /usr/bin/xmllint libxml2-tools
+FileProvides: /usr/bin/Xvfb xorg-x11-server
+FileProvides: /usr/sbin/groupadd shadow
+FileProvides: /usr/sbin/lockdev lockdev
+FileProvides: /usr/sbin/useradd shadow
+FileProvides: /usr/sbin/usermod shadow
+FileProvides: /usr/bin/msgfmt gettext-runtime
+FileProvides: /usr/bin/python3 python3-base
+# Recommended by Adrian Schroeter:
+# causes a cycle :(
+# FileProvides: /sbin/mkinitrd dracut
+
+
+Preinstall: aaa_base attr bash coreutils diffutils
+Preinstall: filesystem fillup glibc grep
+Preinstall: libbz2-1 libgcc_s1 libncurses6 pam
+Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1
+Preinstall: liblzma5 libcap2 libacl1 libattr1
+Preinstall: libpopt0 libelf1 liblua5_3-5
+Preinstall: libpcre1
+
+Runscripts: aaa_base
+
+Prefer: libdb-4_8-devel
+VMinstall: util-linux libmount1 perl-base libdb-4_8 libsepol1 libblkid1 libuuid1 libsmartcols1
+VMinstall: kernel-obs-build
+VMinstall: iproute2 libmnl0
+
+Required: rpm-build
+# Build all packages with -pie enabled
+Required: gcc-PIE
+
+# needed for su's default config - perhaps we should use a simplified form?
+Support: pam-modules
+
+# the basic stuff
+Support: perl build-mkbaselibs
+Prefer: build-mkbaselibs
+Support: brp-check-suse post-build-checks rpmlint-Factory
+# Add hostname so that OBS/build will have a chance to identify the hostname (instead of localhost)
+Support: hostname
+# remove build-compare support to disable "same result" package dropping
+# (coolo) removed to get fresh build times Support: build-compare
+# Extracting appdata.xml from desktop files
+Support: brp-extract-appdata
+# Translations
+Support: brp-extract-translations
+# enforce valid license
+Support: rpmlint-Factory-strict
+
+# testing deltas (only for O:F for now!)
+#Support: build-mkdrpms deltarpm
+
+%ifarch ia64
+Support: libunwind libunwind-devel
+Preinstall: libunwind
+%endif
+Prefer: -openSUSE-build-key
+
+# SLES_SAP-installation-release is a strange package, which provides
+# sles-release, and this solves a 'have choice' from SLES_SAP-release
+# investigation if the package can be handled differently is ongoing
+Prefer: -SLES_SAP-installation-release
+
+# rescue-server should use the SLES installation-images for now
+Prefer: -installation-images-CAASP -installation-images-SLED -installation-images-SLES_SAP
+
+### Branding related preferences
+Prefer: awesome:awesome-branding-upstream
+Prefer: bundle-lang-gnome:gnome-session-branding-openSUSE
+Prefer: cinnamon-gschemas:cinnamon-gschemas-branding-upstream
+Prefer: enlightenment-theme-upstream
+Prefer: exo-data:exo-branding-upstream
+Prefer: fcitx:fcitx-branding-openSUSE
+Prefer: gdm:gdm-branding-upstream
+Prefer: gfxboot-branding-openSUSE -gfxboot-branding-basedonopensuse
+Prefer: glib2:glib2-branding-upstream
+Prefer: gnome-panel:gnome-panel-branding-upstream
+Prefer: gnome-session:gconf2-branding-openSUSE
+Prefer: gnome-session:gnome-session-branding-openSUSE
+Prefer: icewm-theme-branding
+Prefer: kde4-kdm:kde4-kdm-branding-upstream
+Prefer: kdebase4-workspace:kdebase4-workspace-branding-upstream
+Prefer: kdelibs4-branding:kdelibs4-branding-upstream
+Prefer: kdelibs4:kdelibs4-branding-upstream
+Prefer: kdm:kdm-branding-upstream
+Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream
+Prefer: libexo-1-0:libexo-1-0-branding-upstream
+Prefer: libgarcon-1-0:libgarcon-branding-upstream
+Prefer: libgarcon-data:libgarcon-branding-upstream
+Prefer: libgio-2_0-0:gio-branding-upstream
+Prefer: libglib-2_0-0:glib2-branding-upstream
+Prefer: libpurple-branding-upstream
+Prefer: libreoffice:libreoffice-branding-upstream
+Prefer: libsocialweb:libsocialweb-branding-upstream
+Prefer: libxfce4ui:libxfce4ui-branding-upstream
+Prefer: lightdm-gtk-greeter:lightdm-gtk-greeter-branding-upstream
+Prefer: mate-desktop-gschemas:mate-desktop-gschemas-branding-upstream
+Prefer: NetworkManager-branding-upstream
+Prefer: PackageKit:PackageKit-branding-upstream
+Prefer: plasma5-desktop:plasma5-desktop-branding-upstream
+Prefer: plasma5-workspace:plasma5-workspace-branding-upstream
+Prefer: sddm:sddm-branding-upstream
+Prefer: systemd-presets-branding-SLE
+Prefer: wallpaper-branding-openSUSE
+Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream
+Prefer: xfce4-settings:xfce4-settings-branding-upstream
+Prefer: xfdesktop:xfdesktop-branding-upstream
+Prefer: yast2-branding-openSUSE
+Prefer: yast2-qt:yast2-qt-branding-openSUSE
+Prefer: yast2-theme-openSUSE
+
+# Build cycle handling - prefer -mini packages were possible, break deps as needed
+
+Conflict: krb5-devel:krb5-mini
+Conflict: krb5:krb5-mini-devel
+
+# for images repo we rely purely on substitute: build-packages:kiwi
+%if "%_repository" != "images"
+Prefer: gettext-tools-mini gettext-runtime-mini
+Prefer: ghostscript-mini
+Prefer: krb5-mini-devel:krb5-mini
+Prefer: krb5-mini krb5-mini-devel
+Prefer: libudev-mini-devel libudev-mini1 udev-debuginfo libudev1-debuginfo
+Prefer: libunbound-devel-mini
+Prefer: log4j-mini
+Prefer: systemd-mini-devel:systemd-mini
+Prefer: systemd-mini systemd-mini-devel libsystemd0-mini
+Prefer: udev-mini libcom_err2-mini libext2fs2-mini
+Prefer: -harfbuzz-bootstrap -harfbuzz-bootstrap-devel
+
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: erlang-rebar-obs:this-is-only-for-build-envs
+Ignore: harfbuzz-bootstrap:this-is-only-for-build-envs
+Ignore: jdk-bootstrap:this-is-only-for-build-envs
+Ignore: libsystemd0-mini:this-is-only-for-build-envs
+Ignore: libudev-mini1:this-is-only-for-build-envs
+Ignore: libunbound-devel-mini:this-is-only-for-build-envs
+Ignore: systemd-mini:this-is-only-for-build-envs
+Ignore: udev-mini:this-is-only-for-build-envs
+Ignore: curl-mini:this-is-only-for-build-envs
+Ignore: libcurl-mini-devel:this-is-only-for-build-envs
+Ignore: libcurl4-mini:this-is-only-for-build-envs
+%endif
+
+# Ring0 packages should not pull in 'info' - making the base VM smaller
+Ignore: binutils:info
+Ignore: bison:info
+Ignore: coreutils:info
+Ignore: cpio:info
+Ignore: diffutils:info
+Ignore: findutils:info
+Ignore: flex:info
+Ignore: gawk:info
+Ignore: gettext-runtime:info
+Ignore: gettext-tools:info
+Ignore: grep:info
+Ignore: groff:info
+Ignore: gzip:info
+Ignore: help2man:info
+Ignore: libgcrypt-devel:info
+Ignore: m4:info
+Ignore: make:info
+Ignore: sed:info
+Ignore: tar:info
+Ignore: util-linux:info
+Ignore: which:info
+
+# Let's speed up things: We don't need Mesa-dri and Mesa-gallium in the build system
+Ignore: Mesa:Mesa-dri
+Ignore: Mesa:Mesa-gallium
+
+# When kiwi comes into play, we do not want the -mini packages; -mini does not target end user systems
+Conflict: python3-kiwi:curl-mini
+Conflict: python3-kiwi:libudev-mini1
+Conflict: python3-kiwi:systemd-mini
+Conflict: python3-kiwi:krb5-mini
+Conflict: python3-kiwi:gettext-tools-mini
+
+# udev: -full and -mini packages don't mingle well
+Prefer: libudev1:udev
+Conflict: libudev1:udev-mini
+Conflict: udev:libudev-mini1
+
+# systemd: -full and -mini packages don't mingle well
+Conflict: systemd:libsystemd0-mini
+Conflict: systemd-mini-devel:systemd
+
+# curl: there is a -mini package to bootstrap and a full; some programs decide on what they want to build in based on what curl can do, so let's prefer full curl
+Prefer: cmake:libcurl4-mini
+Prefer: curl libcurl-devel libcurl4
+
+Prefer: -openSUSE-build-key
+# Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs)
+Prefer: postfix
+# Give the worker any default apache2-MPM for apache2- chosing 'prefork' (alternatives are -event and -worker, dep-wise they are equal)
+
+# prefer the PHP5 variants over PHP7
+Prefer: php5-ctype
+Prefer: php5-devel
+Prefer: php5-dom
+Prefer: php5-ftp
+Prefer: php5-gd
+Prefer: php5-gettext
+Prefer: php5-mbstring
+Prefer: php5-pear
+Prefer: php5-pear-Archive_Tar
+Prefer: php5-pear-Horde
+Prefer: php5 php5-json
+Prefer: php5-tokenizer
+Prefer: php5-zip
+
+# go exists in mutliple versions by now - we prefer the 'unversioned package'
+Prefer: go
+
+# python([23])-pep8 is provided by python\1-pep8 and python\1-pycodestyle - favoring 'the real one'
+Prefer: python2-pep8 python3-pep8
+
+# When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl
+Prefer: perl
+
+# Assist migration to python-pycups (python3-cups is going to be removed)
+Prefer: python3-pycups python-pycups
+
+# Apache requires a MPM - we pick prefork
+Prefer: apache2:apache2-prefork
+
+# for symbol syslog (syslogd is best as it has the least dependencies)
+Prefer: syslogd
+
+# rmt is provided by tar-rmt and star-rmt - we prefer star-rmt, which was the one in the past providing rmt
+Prefer: star-rmt
+
+# A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon;
+Prefer: notification-daemon
+
+# Stuff that wants to have /etc/os-release available should require distribution-release, which we then offer dummy-release for (openSUSE-release changes daily for TW)
+Prefer: dummy-release
+
+# Tumbleweed ships nodejs4 for compatibility reasons - but it's not the preferred version
+Prefer: -nodejs4
+
+# have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original'
+Prefer: libpulse0-32bit
+
+# do not used openmpi variant to build against netcdf
+Prefer: netcdf-devel
+
+# Below list still needs to be reviewed
+
+Prefer: xorg-x11-Xvnc:icewm
+Prefer: cracklib-dict-small
+Prefer: libstdc++6 libgcc_s1 libquadmath0
+Prefer: libstdc++6-32bit libstdc++6-64bit
+Prefer: libstdc++6-x86
+Prefer: libmpx2 libmpxwrappers2 libmpx2-32bit libmpxwrappers2-32bit
+%ifarch s390x
+Prefer: -libstdc++41
+%endif
+Prefer: syslog-service
+Prefer: poppler-tools
+Prefer: libjpeg8-devel libjpeg-turbo
+Prefer: microcode_ctl:kernel-default
+Prefer: gnu-jaf yast2-control-center-qt
+Prefer: vim-normal myspell-american wine
+Prefer: amarok:amarok-xine
+Prefer: kdenetwork3-vnc:tightvnc
+Prefer: libgweather0 jessie ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_2-api tomcat-jsp-2_3-api tomcat-servlet-2_5-api
+Prefer: -dbus-1-nox11
+Prefer: -servletapi3 -servletapi4 -servletapi5
+Prefer: icewm-lite
+Prefer: yast2-ncurses-pkg
+Prefer: monodevelop: mono-addins
+Prefer: texlive-xmltex texlive-tools texlive-jadetex
+Prefer: libesd-devel:esound
+Prefer: libesd0:esound-daemon
+Prefer: package-lists-openSUSE-KDE-cd: esound-daemon
+Prefer: librest-0_7-0
+
+Prefer: rhino:xmlbeans-mini
+Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -java-1_5_0-gcj-compat -geronimo-jta-1_1-api classpathx-mail
+Prefer: mx4j:log4j-mini
+
+Prefer: rpcbind eclipse-source
+Prefer: libcdio_cdda0 libcdio_paranoia0
+Prefer: boo tog-pegasus
+Prefer: sysvinit(network) wicked-service
+Prefer: kdebase4-workspace:kdebase4-workspace-ksysguardd
+Prefer: kdebase4-openSUSE:kdebase4-workspace
+Prefer: ant:xerces-j2
+Prefer: dhcp-client:dhcp
+Prefer: libGLw1
+# provides typelib(St)
+Prefer: -cinnamon
+Prefer: -bundle-lang-kde-de -bundle-lang-kde-en -bundle-lang-kde-es
+Prefer: -bundle-lang-kde-fr -bundle-lang-kde-pt -bundle-lang-kde-el
+Prefer: -bundle-lang-kde-zh -bundle-lang-kde-ja -bundle-lang-kde-ru -bundle-lang-kde-pl
+Prefer: -bundle-lang-kde-sv -bundle-lang-kde-ko -bundle-lang-kde-fi -bundle-lang-kde-da
+Prefer: -bundle-lang-kde-cs -bundle-lang-kde-nl -bundle-lang-kde-hu -bundle-lang-kde-nb
+Prefer: -bundle-lang-kde-it -bundle-lang-kde-ca -bundle-lang-kde-ar
+Prefer: -bundle-lang-gnome-es -bundle-lang-gnome-de -bundle-lang-gnome-fr
+Prefer: -bundle-lang-gnome-pt -bundle-lang-gnome-en -bundle-lang-gnome-el
+Prefer: -bundle-lang-gnome-zh -bundle-lang-gnome-ja -bundle-lang-gnome-ru -bundle-lang-gnome-cs
+Prefer: -bundle-lang-gnome-ko -bundle-lang-gnome-da -bundle-lang-gnome-nl -bundle-lang-gnome-hu
+Prefer: -bundle-lang-gnome-pl -bundle-lang-gnome-fi -bundle-lang-gnome-nb -bundle-lang-gnome-sv
+Prefer: -bundle-lang-gnome-it -bundle-lang-gnome-ca -bundle-lang-gnome-ar
+Prefer: -bundle-lang-gnome-extras-es -bundle-lang-gnome-extras-de -bundle-lang-gnome-extras-fr
+Prefer: -bundle-lang-gnome-extras-pt -bundle-lang-gnome-extras-en -bundle-lang-gnome-extras-el
+Prefer: -bundle-lang-gnome-extras-zh -bundle-lang-gnome-extras-ja -bundle-lang-gnome-extras-ru -bundle-lang-gnome-extras-cs
+Prefer: -bundle-lang-gnome-extras-ko -bundle-lang-gnome-extras-da -bundle-lang-gnome-extras-nl -bundle-lang-gnome-extras-hu
+Prefer: -bundle-lang-gnome-extras-pl -bundle-lang-gnome-extras-fi -bundle-lang-gnome-extras-nb -bundle-lang-gnome-extras-sv
+Prefer: -bundle-lang-gnome-extras-it -bundle-lang-gnome-extras-ca -bundle-lang-gnome-extras-ar
+Prefer: -bundle-lang-common-es -bundle-lang-common-de -bundle-lang-common-fr
+Prefer: -bundle-lang-common-pt -bundle-lang-common-en -bundle-lang-common-el
+Prefer: -bundle-lang-common-ja -bundle-lang-common-zh -bundle-lang-common-cs -bundle-lang-common-ru
+Prefer: -bundle-lang-common-nl -bundle-lang-common-hu -bundle-lang-common-pl -bundle-lang-common-da
+Prefer: -bundle-lang-common-ko -bundle-lang-common-nb -bundle-lang-common-fi -bundle-lang-common-sv
+Prefer: -bundle-lang-common-it -bundle-lang-common-ca -bundle-lang-common-ar
+Prefer: -libgcc-mainline -libstdc++-mainline -gcc-mainline-c++
+Prefer: -libgcj-mainline -viewperf -compat -compat-openssl097g
+Prefer: -libreoffice -pam-laus -libgcc-tree-ssa -busybox-links
+Prefer: -python-setuptools
+Prefer: -kdenetwork3-InstantMessenger
+Prefer: -icc-profiles
+Prefer: vala
+# in doubt, take xerces
+Prefer: -crimson
+# in doubt, take higher versions
+Prefer: -rubygem-rack-1_1 -rubygem-rack-1_2 -rubygem-rack-1_3 -rubygem-tilt-1_1 -rubygem-rack-1_4
+Prefer: -rubygem-method_source-0_7 -rubygem-rails-2_3 -rubygem-activerecord-2_3
+Prefer: -rubygem-json_pure-1_5
+Prefer: geronimo-servlet-2_4-api
+Prefer: -libhdf5-0-openmpi -libhdf5_hl0-openmpi -libhdf5_hl8-openmpi -libhdf5-8-openmpi -libhdf5_hl9-openmpi -libhdf5-9-openmpi -libhdf5-10-openmpi -libhdf5_hl10-openmpi -libhdf5-11-openmpi -libhdf5_hl11-openmpi -libhdf5-100-openmpi -libhdf5_hl100-openmpi
+# python-scimpy: have choice for fftw-devel: fftw3-devel fftw3_3_3_6-gnu-hpc-devel fftw3_3_...
+Prefer: fftw3-devel
+# prefer the small systemd for building
+Prefer: star
+Prefer: xmlgraphics-commons:apache-commons-io
+# the -32bit stuff provides things it shouldn't (hopefully temporary)
+Prefer: -typelib-1_0-GdkPixbuf-2_0-32bit -typelib-1_0-Pango-1_0-32bit -glib2-devel-32bit
+Prefer: -typelib-1_0-GdkPixbuf-2_0-64bit -typelib-1_0-Pango-1_0-64bit -glib2-devel-64bit
+Prefer: postgresql postgresql-server postgresql-devel
+Prefer: -unzip-rcc
+Prefer: -primus -primus-32bit
+Prefer: -staging-build-key
+Prefer: -sssd-wbclient
+Prefer: -clutter-gst-devel
+Prefer: -opencv-qt5-devel
+# ffmpeg and its fork libav both provide libswscale; prefer the 'original' ffmpeg
+Prefer: -libswscale-libav-devel -libavformat-libav-devel -libavresample-libav-devel -libavcodec-libav-devel -libavdevice-libav-devel -libavfilter-libav-devel -libpostproc-libav-devel -libavutil-libav-devel
+Prefer: -ffmpeg2-devel -python-configparser2
+# as long as kactivities4 exists and is provided
+Prefer: kactivities5
+# oxygen5-icon-theme osboletes oxygen-icon-theme
+Prefer: oxygen5-icon-theme
+Prefer: npm6
+
+# kernel bug (coolo)
+Prefer: kernel-default-devel
+
+# have choice for mysql-devel: libmariadb-devel libmysqlclient-devel
+# Prefer: libmariadb-devel
+Prefer: libmysqlclient-devel
+
+Prefer: wxWidgets-3_0-devel
+Prefer: libopenssl-devel
+
+Prefer: -NX -xaw3dd -db43
+Prefer: -xerces-j2-xml-resolver -xerces-j2-xml-apis
+Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit
+Prefer: libffi-devel
+Prefer: libatomic1 libcilkrts5 libitm1 liblsan0 libtsan0 libubsan0
+Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit
+Prefer: libatomic1-64bit libcilkrts5-64bit libitm1-64bit libubsan0-64bit
+Prefer: libgcc_s1-x86 libgcj_bc1
+Prefer: libgomp1 libgomp1-32bit libgomp1-64bit
+Prefer: libmudflap4 libmudflap4-32bit libmudflap4-64bit
+Prefer: libobjc4 libgfortran3 libquadmath0
+Prefer: -libnetpbm -libcdio7-mini -libiso9660-5-mini -libiso9660-7-mini -libcdio10-mini -libcdio12-mini
+Prefer: -libcdio-mini -faac-mini -libcdio-mini-devel
+Prefer: -seamonkey
+Prefer: -libdb-4_4-devel -libdb-4_5-devel -libevoldap-2_4-2
+Prefer: libopenal0-soft openal-soft -lsb-buildenv
+Prefer: -libevent
+Prefer: gnu-crypto libusb-compat-devel
+Prefer: libusb-0_1-4
+Prefer: libreoffice:xerces-j2
+Prefer: k3b:libdvdread4
+Prefer: glibc-devel
+Prefer: -libpcap -libiniparser -loudmouth -libkonq4 -libnetcdf-4
+Prefer: NetworkManager:dhcp-client
+Prefer: kdebase3-SuSE:kdebase3
+Prefer: pcre-tools
+Prefer: libpopt0 makeinfo
+Prefer: -apache2-mod_perl -otrs -qa_apache_testsuite -ctcs2
+Prefer: libgnome-keyring-devel
+Prefer: gnome-keyring-32bit
+Prefer: linux-glibc-devel
+Prefer: squid sysvinit
+Prefer: libpng16-compat-devel
+Prefer: -python3 -python3-gobject-devel -python3-gobject2-devel -x11-video-fglrxG02 -libpng12-0
+Prefer: python3-docutils
+Prefer: perl-Mail-SPF:perl-Error libldb0 -audit-libs mysql-community-server mysql-community-server-client
+#needed because new xml-commons package
+Prefer: xml-commons-resolver12 xml-commons-jaxp-1.3-apis
+Prefer: xmlgraphics-fop:xerces-j2
+Prefer: cogl-devel
+Prefer: -perl-XML-SAX perl-Test-YAML -perl-Pod-Usage
+Prefer: libpsm2-compat
+# choice p11-kit-nss-trust
+Prefer: mozilla-nss-certs
+# amarok dependency resolution
+Prefer: phonon-backend-gstreamer
+# replacing mkinitrd
+Prefer: dracut
+# replacing module-init-tools
+Prefer: kmod-compat
+# Temporary
+Prefer: oxygen5-cursors
+# Temporary
+Prefer: -perl-App-cpanminus
+# libmediaart is prepared for a larger update; for now favor mediaart-1.0
+Prefer: -typelib-1_0-MediaArt-2_0
+Prefer: -typelib-1_0-Gtk-2_0 -typelib-1_0-Gtk-4_0
+Prefer: -python-atspi
+Prefer: gettext-its-gtk3 gtk3-schema
+# for pkgconfig(ijs) and no one actually rely on ghostscript-mini-devel in Factory
+Prefer: ghostscript-devel
+# for pkgconfig(libotf) libotf-devel and libotf-devel-32bit both provides it
+Prefer: libotf-devel
+
+Ignore: installation-images-openSUSE:cracklib-dict-full
+Ignore: systemd-sysvinit:systemd
+Ignore: openSUSE-release:openSUSE-release-ftp,openSUSE-release-dvd5,openSUSE-release-biarch,openSUSE-release-livecdkde,openSUSE-release-livecdgnome
+Ignore: cracklib:cracklib-dict
+Ignore: aaa_base:aaa_skel,suse-release,logrotate,ash,distribution-release,udev
+Ignore: sysvinit:mingetty
+Ignore: gettext-tools:libgcj,libstdc++-devel,libgcj41,libstdc++41-devel,libgcj42,libstdc++42-devel
+Ignore: libgcj43,libstdc++43-devel
+Ignore: libgcj44,libstdc++44-devel
+Ignore: libgcj45,libstdc++45-devel
+Ignore: libgcj46,libstdc++46-devel
+Ignore: libgcj47,libstdc++47-devel
+Ignore: librtas:util-linux
+Ignore: pwdutils:openslp
+Ignore: rpm:suse-build-key,build-key
+Ignore: cloud-init:cloud-init-config
+# python-pyudev requires libudev1 in normal situations
+Ignore: python-pyudev:libudev1
+Ignore: python-SPARQLWrapper:python-rdflib
+Ignore: python3-SPARQLWrapper:python3-rdflib
+Ignore: bind-utils:bind-libs
+Ignore: portmap:syslogd
+Ignore: xorg-x11:x11-tools,resmgr,xkeyboard-config,xorg-x11-Mesa,libusb,freetype2,libjpeg,libpng
+Ignore: xorg-x11-server:xorg-x11-driver-input,xorg-x11-driver-video
+Ignore: apache2:logrotate
+Ignore: arts:alsa,audiofile,resmgr,libogg,libvorbis
+Ignore: kdelibs3:alsa,arts,OpenEXR,aspell,cups-libs,mDNSResponder-lib,krb5,libjasper
+Ignore: kdelibs3-devel:libvorbis-devel
+Ignore: kdebase3:kdebase3-ksysguardd,OpenEXR,dbus-1,dbus-1-qt,hal,powersave,openslp,libusb
+Ignore: kdebase3-SuSE:release-notes
+Ignore: jack:alsa,libsndfile
+Ignore: libxml2-devel:readline-devel
+Ignore: gnome-vfs2:gnome-mime-data,desktop-file-utils,cdparanoia,dbus-1,dbus-1-glib,hal,libsmbclient,fam,file_alteration
+Ignore: libgda:file_alteration
+Ignore: gnutls:lzo,libopencdk
+Ignore: gnutls-devel:lzo-devel,libopencdk-devel
+Ignore: pango:cairo,glitz,libpixman,libpng
+Ignore: pango-devel:cairo-devel
+Ignore: cairo-devel:libpixman-devel
+Ignore: libgnomeprint:libgnomecups
+Ignore: libgnomeprintui:libgnomecups
+Ignore: orbit2-devel:indent
+Ignore: qt3:libmng
+Ignore: qt-sql:qt_database_plugin
+Ignore: libgnomecanvas-devel:glib-devel
+Ignore: libgnomeui:gnome-icon-theme,shared-mime-info
+Ignore: scrollkeeper:docbook_4
+Ignore: gnome-desktop:libgnomesu,startup-notification
+Ignore: python-devel:python-tk
+Ignore: libgtk-3-0:adwaita-icon-theme
+Ignore: libgtk-3-0:gdk-pixbuf-loader-rsvg
+Ignore: samba-libs:krb5
+Ignore: libbonoboui:gnome-desktop
+Ignore: libxfce4ui-1-0:exo-tools
+Ignore: docbook_4:iso_ent,xmlcharent
+Ignore: control-center2:nautilus,evolution-data-server,gnome-menus,gstreamer-plugins,gstreamer,metacity,mozilla-nspr,mozilla,libxklavier,gnome-desktop,startup-notification
+Ignore: docbook-xsl-stylesheets:xmlcharent
+Ignore: liby2util-devel:libstdc++-devel,openssl-devel
+Ignore: yast2:yast2-ncurses,yast2_theme,perl-Config-Crontab,yast2-xml,SuSEfirewall2
+Ignore: yast2-core:netcat,hwinfo,wireless-tools,sysfsutils
+Ignore: yast2-core-devel:libxcrypt-devel,hwinfo-devel,blocxx-devel,sysfsutils,libstdc++-devel
+Ignore: yast2-packagemanager-devel:rpm-devel,curl-devel,openssl-devel
+Ignore: yast2-devtools:libxslt
+Ignore: yast2-iscsi-lio-server:lio-utils
+Ignore: yast2-installation:yast2-update,yast2-mouse,yast2-country,yast2-bootloader,yast2-packager,yast2-network,yast2-online-update,yast2-users,release-notes,autoyast2-installation
+Ignore: yast2-bootloader:bootloader-theme
+Ignore: yast2-packager:yast2-x11,libyui_pkg
+Ignore: autoyast2:yast2-schema
+# not during build
+Ignore: yui_backend
+Ignore: yast2-x11:sax2-libsax-perl
+Ignore: yast2-network:yast2-inetd
+Ignore: openslp-devel:openssl-devel
+Ignore: tetex:xorg-x11-libs,expat,fontconfig,freetype2,libjpeg,ghostscript-x11,xaw3d,gd,dialog,ed
+Ignore: texlive-bin:ghostscript-x11
+Ignore: texlive-bin-omega:ghostscript-x11
+Ignore: yast2-country:yast2-trans-stats
+Ignore: tpb:tpctl-kmp
+Ignore: tpctl:tpctl-kmp
+Ignore: zaptel:zaptel-kmp
+Ignore: mkinitrd:pciutils
+Ignore: pciutils:pciutils-ids
+Ignore: postfix:iproute2
+Ignore: aaa_base:systemd
+Ignore: gpm:systemd
+Ignore: openssh:systemd
+Ignore: cronie:systemd
+Ignore: systemd:kbd
+Ignore: systemd:kmod
+Ignore: systemd:systemd-presets-branding
+Ignore: systemd:dbus-1
+Ignore: systemd:pam-config
+Ignore: systemd:udev
+Ignore: pesign:systemd
+Ignore: logrotate:cron
+Ignore: texlive-filesystem:cron
+Ignore: xinit:xterm
+Ignore: xdm:xterm
+Ignore: gnome-control-center:gnome-themes-accessibility
+
+
+Ignore: man:groff-full
+Ignore: git-core:rsync
+Ignore: apache2:systemd
+Ignore: icewm-lite:icewm
+Ignore: cluster-glue:sudo
+Ignore: libgcc:glibc-32bit
+Ignore: libgcc41:glibc-32bit
+Ignore: libgcc42:glibc-32bit
+Ignore: libgcc43:glibc-32bit
+Ignore: libgcc44:glibc-32bit
+Ignore: libgcc45:glibc-32bit
+Ignore: libgcc46:glibc-32bit
+Ignore: libgcc47:glibc-32bit
+Ignore: libstdc++:glibc-32bit
+Ignore: libstdc41++:glibc-32bit
+Ignore: libstdc42++:glibc-32bit
+Ignore: libstdc43++:glibc-32bit
+Ignore: libstdc44++:glibc-32bit
+Ignore: libstdc45++:glibc-32bit
+Ignore: libstdc46++:glibc-32bit
+Ignore: libstdc47++:glibc-32bit
+Ignore: ncurses-32bit
+
+Ignore: susehelp:susehelp_lang,suse_help_viewer
+Ignore: mailx:smtp_daemon
+Ignore: cron:smtp_daemon
+Ignore: hotplug:syslog
+Ignore: pcmcia:syslog
+Ignore: openct:syslog
+Ignore: postfix:sysvinit(syslog)
+Ignore: cups:sysvinit(syslog)
+Ignore: jython:servlet
+Ignore: ispell:ispell_dictionary,ispell_english_dictionary
+Ignore: aspell:aspel_dictionary,aspell_dictionary
+Ignore: smartlink-softmodem:kernel,kernel-nongpl
+Ignore: libreoffice-de:myspell-german-dictionary
+Ignore: libreoffice:libreoffice-i18n
+Ignore: libreoffice:libreoffice-icon-themes
+Ignore: mediawiki:php-session,php-gettext,php-zlib,php-mysql,mod_php_any
+Ignore: squirrelmail:mod_php_any,php-session,php-gettext,php-iconv,php-mbstring,php-openssl
+Ignore: perl-Log-Log4perl:rrdtool
+
+Ignore: simias:mono(log4net)
+Ignore: horde:mod_php_any,php-gettext,php-mcrypt,php-imap,php-pear-log,php-pear,php-session,php
+
+Ignore: xerces-j2:xml-commons-apis,xml-commons-resolver
+Ignore: xdg-menu:desktop-data
+Ignore: nessus-libraries:nessus-core
+Ignore: evolution:yelp
+Ignore: e17:e17-branding e17:e17-theme
+
+Ignore: mono-tools:mono(gconf-sharp),mono(glade-sharp),mono(gnome-sharp),mono(gtkhtml-sharp),mono(atk-sharp),mono(gdk-sharp),mono(glib-sharp),mono(gtk-sharp),mono(pango-sharp)
+Ignore: gecko-sharp2:mono(glib-sharp),mono(gtk-sharp)
+
+Ignore: vcdimager:libcdio.so.6,libcdio.so.6(CDIO_6),libiso9660.so.4,libiso9660.so.4(ISO9660_4)
+Ignore: libcdio:libcddb.so.2
+
+Ignore: coreutils:coreutils-lang
+Ignore: cpio:cpio-lang
+Ignore: glib2:glib2-lang
+Ignore: gtk2:gtk2-lang
+Ignore: gtk:gtk-lang
+Ignore: atk:atk-lang
+Ignore: MozillaThunderbird:pinentry-dialog
+Ignore: seamonkey:pinentry-dialog
+Ignore: pinentry:pinentry-dialog
+Ignore: gpg2:gpg2-lang
+Ignore: util-linux:util-linux-lang
+Ignore: suseRegister:distribution-release
+Ignore: compiz:compiz-decorator
+Ignore: icecream:gcc-c++
+Ignore: no
+Ignore: package
+Ignore: provides
+Ignore: j9vm/libjvm.so()(64bit)
+Ignore: kdepim3:suse_help_viewer
+Ignore: kdebase3-SuSE:kdebase3-SuSE-branding
+Ignore: kio_sysinfo:kdebase3-SuSE-branding
+Ignore: gnome-menus:gnome-menus-branding
+Ignore: epiphany:epiphany-branding
+Ignore: gnome-control-center:gnome-control-center-branding
+Ignore: phonon:phonon-backend
+Ignore: openwbem-devel
+Ignore: MozillaFirefox:MozillaFirefox-branding
+Ignore: yast2:yast2-branding
+Ignore: plymouth:plymouth-branding
+Ignore: plymouth:suspend
+Ignore: yast2-qt:yast2-branding
+Ignore: yast2-theme-SLE:yast2-branding
+Ignore: yast2-registration:yast2-registration-branding
+Ignore: compiz:compiz-branding
+Ignore: texlive:perl-Tk texlive-bin:perl-Tk
+Ignore: xfce4-desktop:xfce4-desktop-branding
+Ignore: xfce4-panel:xfce4-panel-branding
+Ignore: xfce4-session:xfce4-session-branding
+Ignore: kdebase4-runtime:kdebase4-runtime-branding
+Ignore: kwin:kdebase4-workspace-branding
+Ignore: transmission-common:transmission-ui
+Ignore: sysvinit-tools:mkinitrd cifs-utils:mkinitrd
+Ignore: mkinitrd:sbin_init samba-client:cifs-utils
+Ignore: opensc:pinentry
+Ignore: gpg2:pinentry
+Ignore: NetworkManager:dhcp
+Ignore: NetworkManager:iproute2
+# sysconfig requires it at runtime, not buildtime
+Ignore: sysconfig:dbus-1
+Ignore: sysconfig:procps
+Ignore: sysconfig:iproute2
+Ignore: sysconfig-network:iproute2
+Ignore: sysconfig:tunctl
+Ignore: sysconfig:sysvinit(network)
+# no build dependencies
+Ignore: libksuseinstall1:yast2-packager
+Ignore: libksuseinstall1:zypper
+Ignore: syslog-service:logrotate
+Ignore: libglue-devel:cluster-glue
+Ignore: libqca2:gpg2
+Ignore: NetworkManager:wpa_supplicant
+Ignore: NetworkManager:dhcp-client
+Ignore: openSUSE-release:product_flavor(openSUSE)
+Ignore: libgio-2_0-0:dbus-1-x11
+Ignore: weather-wallpaper:inkscape
+Ignore: libgamin-1-0:gamin-server
+Ignore: libfam0-gamin:gamin-server
+Ignore: python3:python3-pip
+Ignore: avahi:sysvinit(network)
+Ignore: cluster-glue:sysvinit(network)
+Ignore: dracut:systemd-sysvinit
+# actually a workaround for installation-images requiring
+# gettext-runtime-mini and getting conflict because systat
+# requires gettext (which is only provided by !-mini)
+Ignore: saptune:sysstat
+
+Macros:
+# RUBY - UNVERSIONED STUFF
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in the
+# prjconf aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygem() %{expand:%%{rubygems%rb_build_versions STOP %*}}
+%rubygemsSTOP() %nil
+%rubygemsxSTOP() %{expand:%%rubygemsxxSTOP -a %*}
+%rubygemsxxSTOP(a:) %{-a*}) %*
+
+%rubySTOP() %nil
+%rubyxSTOP() %*
+
+%ruby() %{expand:%%{ruby%rb_build_versions STOP %*}}
+
+%rubydevel() %{expand:%%{rubydevel%rb_build_versions STOP %*}}
+
+%rubydevelSTOP() %nil
+%rubydevelxSTOP() %*
+#
+
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+# if you change any macros here you have to update the copy in
+# ruby2.5 aswell.
+#
+# IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
+#
+%rubygemsruby25() rubygem(ruby:2.5.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}}
+%rubygemsxruby25() %{expand:%%{rubygemsx%*}}
+
+%rubyruby25() ruby2.5 %{expand:%%rubyx%*} %{expand:%%{ruby%*}}
+%rubyxruby25() %{expand:%%{rubyx%*}}
+
+%rubydevelruby25() ruby2.5-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}}
+%rubydevelxruby25() %{expand:%%{rubydevelx%*}}
+
+
+### Things to define default ruby stuff for the distro
+%rb_default_ruby ruby25
+%rb_default_ruby_suffix ruby2.5
+%rb_default_ruby_abi ruby:2.5.0
+:Macros
+
+Macros:
+%rb_build_ruby_abis ruby:2.5.0
+%rb_build_versions ruby25
+
+%_with_ruby25 1
+:Macros
+
+%define rb_default_ruby ruby25
+%define rb_default_ruby_suffix ruby2.5
+%define rb_default_ruby_abi ruby:2.5.0
+
+%define rb_build_ruby_abis ruby:2.5.0
+%define rb_build_versions ruby25
+
+%define _with_ruby25 1
+
+Prefer: -ruby-stdlib
+Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm
+Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus
+Prefer: %{rb_default_ruby_suffix}-rubygem-yard
+Prefer: %{rb_default_ruby_suffix}-rubygem-rspec
+Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake
+Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah
+Prefer: %{rb_default_ruby_suffix}-rubygem-inifile
+Prefer: %{rb_default_ruby_suffix}-rubygem-bundler
+Prefer: %{rb_default_ruby_suffix}-rubygem-sass
+Prefer: %{rb_default_ruby_suffix}-rubygem-cfa
+Prefer: %{rb_default_ruby_suffix}-rubygem-mime-types
+
+# END RUBY STUFF
+
+# PYTHON STUFF
+
+Macros:
+%pythons %{?!skip_python2:python2} %{?!skip_python3:python3}
+
+# This method for generating python_modules gets too deep to expand at about 5 python flavors.
+# It is replaced by a Lua macro in macros.lua
+# However, OBS has a much higher expansion depth, so this works fine.
+%python_module_iter(a:) %{-a*}-%{args} %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}}
+%python_module_iter_STOP stop
+%python_module() %{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}}
+
+%add_python() %{expand:%%define pythons %pythons %1}
+:Macros
+
+# END PYTHON STUFF
+
+# FATE#325522
+Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless
+# Fallback, but we should try to not use this but java-8....
+# Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+# Prefer java 8 if java 9 was no option
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+# And then fall back to jaba 7 if needed
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+Substitute: java2-devel-packages java-devel
+
+%ifarch x86_64 ppc64 s390x sparc64
+Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit
+%else
+ %ifarch ppc sparc sparcv9
+Substitute: glibc-devel-32bit glibc-devel-64bit
+ %else
+Substitute: glibc-devel-32bit
+ %endif
+%endif
+
+%ifarch %ix86
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-bigsmp kernel-debug kernel-xen
+%endif
+%ifarch ia64
+Substitute: kernel-binary-packages kernel-default kernel-debug
+%endif
+%ifarch x86_64
+Substitute: kernel-binary-packages kernel-default kernel-smp kernel-xen
+%endif
+%ifarch ppc
+Substitute: kernel-binary-packages kernel-default kernel-ppc64 kernel-ps3
+%endif
+%ifarch ppc64
+Substitute: kernel-binary-packages kernel-default kernel-ppc64
+%endif
+%ifarch s390
+Substitute: kernel-binary-packages kernel-s390
+%endif
+%ifarch s390x
+Substitute: kernel-binary-packages kernel-default
+%endif
+
+Optflags: i586 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches
+# no longer needed according to Richard Biener
+# Optflags: i686 -fomit-frame-pointer -fmessage-length=0 -grecord-gcc-switches -fstack-protector
+Optflags: x86_64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ia64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390 -fmessage-length=0 -grecord-gcc-switches
+Optflags: s390x -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv7hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6l -fmessage-length=0 -grecord-gcc-switches
+Optflags: armv6hl -fmessage-length=0 -grecord-gcc-switches
+Optflags: aarch64 -fmessage-length=0 -grecord-gcc-switches
+Optflags: ppc64le -fmessage-length=0 -grecord-gcc-switches
+# need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops)
+Optflags: sparcv9 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+Optflags: sparc64 -fmessage-length=0 -grecord-gcc-switches -mcpu=ultrasparc
+
+%ifarch sparcv9
+Target: sparcv9
+%endif
+%ifarch armv6l armv6hl
+Target: armv6hl-suse-linux
+%endif
+%ifarch armv7l armv7hl
+Target: armv7hl-suse-linux
+%endif
+
+
+#Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables
+#Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables
+# added on request of Security team:
+Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection
+
+%define suse_version 1500
+%define sle_version 150000
+
+%define is_susesap 1
+
+Macros:
+%suse_version 1500
+%sle_version 150000
+%is_susesap 1
+
+%insserv_prereq insserv sed
+%fillup_prereq fillup coreutils grep diffutils
+%suseconfig_fonts_prereq perl aaa_base
+%install_info_prereq info
+%kernel_module_package_buildreq kmod-compat kernel-syms
+%kernel_module_package_buildreqs kmod-compat kernel-syms
+%maintenance_vendor SUSE LLC <https://www.suse.com/>
+%maintenance_distribution SUSE Linux Enterprise 15
+
+%sles_version 0
+%do_profiling 1
+%_vendor suse
+
+# Reproducible builds
+%source_date_epoch_from_changelog Y
+
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 7
+# The following shlibs have latest versions built from GCC 6 sources
+%product_libs_gcc_ver_libasan3 6
+%product_libs_gcc_ver_libgo9 6
+%product_libs_gcc_ver_libgfortran3 6
+# reminded by richi 2017 4/3
+%product_libs_gcc_ver_libgcj_bc1 6
+# The following shlibs have been introduced with GCC 7
+%product_libs_gcc_ver_libmpxwrappers2 7
+%product_libs_gcc_ver_libmpx2 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libgfortran4 7
+%gcc_version 7
+
+%ext_info .gz
+%ext_man .gz
+
+%info_add(:-:) test -x /sbin/install-info -a -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+
+%info_del(:-:) test -x /sbin/install-info -a ! -f %{?2}%{?!2:%{_infodir}}/%{1}%ext_info && /sbin/install-info --quiet --delete --info-dir=%{?2}%{?!2:%{_infodir}} %{?2}%{?!2:%{_infodir}}/%{1}%ext_info \
+%{nil}
+:Macros
+
+# BEGIN RUST STUFF
+
+# Define the architectures in which Rust (and Rust crates) are available
+# NOTE: Keep this in sync with rust-srpm-macros!
+%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x
+
+Macros:
+%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le s390x
+:Macros
+
+# END RUST STUFF
+
+# SLE-15 HACK BEGIN
+# KEEP SUBVERSION AND JAVA OUT OF RING 1
+Macros:
+%_without_obs_scm_testsuite 0
+:Macros
+
+# LOCAL SLES SETTINGS
+Prefer: SLES_SAP-installation-release-DVD
+Prefer: systemd-presets-branding-SLE
+
+# the old python-msgpack-python should be dropped, but salt
+# is still requires the old name
+Prefer: python3-msgpack
+
+%ifarch s390
+Ignore: python2-numpy-devel:openblas-devel
+Ignore: python3-numpy-devel:openblas-devel
+%endif
+# SLE-15 HACK END
+
+# added 20191023 ro
+Prefer: -openssl-1_0_0
+# end 20191023 ro
+
+Buildflags: useccache:ceph
+
+# define a prefix for all package builds in SLE 15 GA to handle migration of packages
+# with identical version but lower release version than in a preceding codestream
+# Marcus Meissner 20220316
+Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT>
+
+# Marcus 20211214
+# Matej dropped requires python-rpm-macris from python3-base
+#Substitute: python3-base python3-base python-rpm-macros
+#Substitute: python3-devel python3-devel python-rpm-macros
+#Substitute: python-devel python-devel python-rpm-macros
+# this should pull it in all builds (it has no dependencies, so should be fine):
+Support: python-rpm-macros
+
+# Rudi 20190425
+# needed for last ImageMagick update
+Prefer: ImageMagick-config-7-upstream
+
+# disabled in GA by mistake, enabling it here
+Support: build-compare
+
+# Marcus 20200510
+# needed for chrony ECO which has multiple choices
+Prefer: chrony-pool-suse
+
+# also provided by hwdata, so prefer the actual package. Marcus 20200513
+Prefer: pciutils-ids
+
+# we released clamav with libcurl4 requires, which is pulled in everywhere.
+# this avoids a cmake -> libcurl4-mini <-> libcurl4 conflict.
+# Marcus 20201216
+Prefer: -libcurl4-mini
+# prefer one cmake
+Prefer: cmake3-full
+
+# to avoid secure boot failures, referenced in "shim" build -Marcus 20191021
+Macros:
+%shim_enforce_ms_signature 1
+:Macros
+
+Macros:
+
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 11
+# The following shlibs have the latest version built from GCC 7 sources
+%product_libs_gcc_ver_libgfortran4 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libubsan0 7
+%product_libs_gcc_ver_libcilkrts5 7
+%product_libs_gcc_ver_libgo11 7
+# The following shlibs have the latest version built from GCC 8
+%product_libs_gcc_ver_libmpx2 8
+%product_libs_gcc_ver_libmpxwrappers2 8
+%product_libs_gcc_ver_libgo13 8
+# The following shlibs have the latest version built from GCC 9 sources
+%product_libs_gcc_ver_libasan5 9
+%product_libs_gcc_ver_libgo14 9
+# The following shlibs have the latest version built from GCC 10 sources
+%product_libs_gcc_ver_libgphobos1 10
+%product_libs_gcc_ver_libgdruntime1 10
+%product_libs_gcc_ver_libgo16 10
+
+:Macros
+
+# RUDI amend for python3 package changed to multbuild 20210201
+%if "%_project" != "SUSE:SLE-15:Update"
+BuildFlags: excludebuild:python3-base
+BuildFlags: excludebuild:python3-doc
+%endif
+
+# After the build 20200723 update .pc files are also in 32bit packages causing have-choice
+Prefer: -alsa-devel-32bit
+Prefer: -atk-devel-32bit
+Prefer: -atkmm1_6-devel-32bit
+Prefer: -at-spi2-core-devel-32bit
+Prefer: -at-spi-devel-32bit
+Prefer: -audit-devel-32bit
+Prefer: -augeas-devel-32bit
+Prefer: -bluez-devel-32bit
+Prefer: -cairo-devel-32bit
+Prefer: -cairomm1_0-devel-32bit
+Prefer: -cairomm-devel-32bit
+Prefer: -cppunit-devel-32bit
+Prefer: -cyrus-sasl-devel-32bit
+Prefer: -dbus-1-devel-32bit
+Prefer: -dbus-1-glib-devel-32bit
+Prefer: -device-mapper-devel-32bit
+Prefer: -dirac-devel-32bit
+Prefer: -flac-devel-32bit
+Prefer: -fontconfig-devel-32bit
+Prefer: -freetype2-devel-32bit
+Prefer: -gdk-pixbuf-devel-32bit
+Prefer: -glu-devel-32bit
+Prefer: -gstreamer-devel-32bit
+Prefer: -gstreamer-plugins-base-devel-32bit
+Prefer: -gtk2-devel-32bit
+Prefer: -gtk3-devel-32bit
+Prefer: -hunspell-devel-32bit
+Prefer: -ImageMagick-devel-32bit
+Prefer: -libart_lgpl-devel-32bit
+Prefer: -libavc1394-devel-32bit
+Prefer: -libbasicobjects-devel-32bit
+Prefer: -libblkid-devel-32bit
+Prefer: -libbz2-devel-32bit
+Prefer: -libcelt-devel-32bit
+Prefer: -libcollection-devel-32bit
+Prefer: -libcom_err-devel-32bit
+Prefer: -libcurl-devel-32bit
+Prefer: -libdhash-devel-32bit
+Prefer: -libdmx-devel-32bit
+Prefer: -libdrm-devel-32bit
+Prefer: -libelf-devel-32bit
+Prefer: -libexif-devel-32bit
+Prefer: -libexpat-devel-32bit
+Prefer: -libext2fs-devel-32bit
+Prefer: -libfontenc-devel-32bit
+Prefer: -libgbm-devel-32bit
+Prefer: -libgck-devel-32bit
+Prefer: -libgcr-devel-32bit
+Prefer: -libglvnd-devel-32bit
+Prefer: -libgnutls-devel-32bit
+Prefer: -libgphoto2-devel-32bit
+Prefer: -libHX-devel-32bit
+Prefer: -libICE-devel-32bit
+Prefer: -libicu-devel-32bit
+Prefer: -libini_config-devel-32bit
+Prefer: -libjack-devel-32bit
+Prefer: -libkms-devel-32bit
+Prefer: -liblbxutil-devel-32bit
+Prefer: -liblcms2-devel-32bit
+Prefer: -libMagick++-devel-32bit
+Prefer: -libmount-devel-32bit
+Prefer: -libnettle-devel-32bit
+Prefer: -libnl3-devel-32bit
+Prefer: -libnotify-devel-32bit
+Prefer: -libpackagekit-glib2-devel-32bit
+Prefer: -libpulse-devel-32bit
+Prefer: -libQt5Concurrent-devel-32bit
+Prefer: -libQt5Core-devel-32bit
+Prefer: -libQt5DBus-devel-32bit
+Prefer: -libQt5Gui-devel-32bit
+Prefer: -libQt5Network-devel-32bit
+Prefer: -libQt5OpenGL-devel-32bit
+Prefer: -libQt5PrintSupport-devel-32bit
+Prefer: -libqt5-qtconnectivity-devel-32bit
+Prefer: -libqt5-qtdeclarative-devel-32bit
+Prefer: -libqt5-qtlocation-devel-32bit
+Prefer: -libqt5-qtmultimedia-devel-32bit
+Prefer: -libqt5-qtserialport-devel-32bit
+Prefer: -libqt5-qtsvg-devel-32bit
+Prefer: -libqt5-qttools-devel-32bit
+Prefer: -libqt5-qtwayland-devel-32bit
+Prefer: -libqt5-qtwebchannel-devel-32bit
+Prefer: -libqt5-qtwebsockets-devel-32bit
+Prefer: -libqt5-qtx11extras-devel-32bit
+Prefer: -libqt5-qtxmlpatterns-devel-32bit
+Prefer: -libQt5Sql-devel-32bit
+Prefer: -libQt5Test-devel-32bit
+Prefer: -libQt5Widgets-devel-32bit
+Prefer: -libQt5Xml-devel-32bit
+Prefer: -libraw1394-devel-32bit
+Prefer: -libref_array-devel-32bit
+Prefer: -libSDL2-devel-32bit
+Prefer: -libSDL-devel-32bit
+Prefer: -libSDL_gfx-devel-32bit
+Prefer: -libSM-devel-32bit
+Prefer: -libsoup-devel-32bit
+Prefer: -libtasn1-devel-32bit
+Prefer: -libtiff-devel-32bit
+Prefer: -libusb-1_0-devel-32bit
+Prefer: -libuuid-devel-32bit
+Prefer: -libv4l-devel-32bit
+Prefer: -libva-devel-32bit
+Prefer: -libvdpau-devel-32bit
+Prefer: -libverto-devel-32bit
+Prefer: -libvirt-devel-32bit
+Prefer: -libvorbis-devel-32bit
+Prefer: -libwayland-egl-devel-32bit
+Prefer: -libwebp-devel-32bit
+Prefer: -libX11-devel-32bit
+Prefer: -libXau-devel-32bit
+Prefer: -libXaw3d-devel-32bit
+Prefer: -libXaw-devel-32bit
+Prefer: -libxcb-devel-32bit
+Prefer: -libXcomposite-devel-32bit
+Prefer: -libXcursor-devel-32bit
+Prefer: -libXdamage-devel-32bit
+Prefer: -libXdmcp-devel-32bit
+Prefer: -libXext-devel-32bit
+Prefer: -libXfixes-devel-32bit
+Prefer: -libXfont2-devel-32bit
+Prefer: -libXfontcache-devel-32bit
+Prefer: -libXfont-devel-32bit
+Prefer: -libXft-devel-32bit
+Prefer: -libXi-devel-32bit
+Prefer: -libXinerama-devel-32bit
+Prefer: -libxkbcommon-devel-32bit
+Prefer: -libxkbcommon-x11-devel-32bit
+Prefer: -libxkbfile-devel-32bit
+Prefer: -libxml2-devel-32bit
+Prefer: -libXmu-devel-32bit
+Prefer: -libXp-devel-32bit
+Prefer: -libXpm-devel-32bit
+Prefer: -libXprintUtil-devel-32bit
+Prefer: -libXrandr-devel-32bit
+Prefer: -libXrender-devel-32bit
+Prefer: -libXres-devel-32bit
+Prefer: -libxslt-devel-32bit
+Prefer: -libXss-devel-32bit
+Prefer: -libXt-devel-32bit
+Prefer: -libXtst-devel-32bit
+Prefer: -libXv-devel-32bit
+Prefer: -libXvMC-devel-32bit
+Prefer: -libXxf86dga-devel-32bit
+Prefer: -libXxf86misc-devel-32bit
+Prefer: -libXxf86vm-devel-32bit
+Prefer: -Mesa-libEGL-devel-32bit
+Prefer: -Mesa-libGL-devel-32bit
+Prefer: -Mesa-libGLESv1_CM-devel-32bit
+Prefer: -Mesa-libGLESv2_CM-devel-32bit
+Prefer: -Mesa-libGLESv2-devel-32bit
+Prefer: -mpg123-devel-32bit
+Prefer: -ncurses-devel-32bit
+Prefer: -NetworkManager-devel-32bit
+Prefer: -openal-soft-devel-32bit
+Prefer: -openjpeg-devel-32bit
+Prefer: -pango-devel-32bit
+Prefer: -pciutils-devel-32bit
+Prefer: -sane-backends-devel-32bit
+Prefer: -tslib-devel-32bit
+Prefer: -typelib-1_0-Gst-1_0-32bit
+Prefer: -wayland-devel-32bit
+Prefer: -xcb-util-devel-32bit
+Prefer: -xcb-util-image-devel-32bit
+Prefer: -xcb-util-keysyms-devel-32bit
+Prefer: -xcb-util-renderutil-devel-32bit
+Prefer: -xcb-util-wm-devel-32bit
+Prefer: -xz-devel-32bit
+Prefer: -zlib-devel-32bit
+Prefer: -zvbi-devel-32bit
+
+# ECO-3147 added a new package which opened several installation choices
+# gboiko 20210503 added more regarding the ECO above
+Prefer: libboost_thread1_66_0
+Prefer: libboost_system1_66_0
+Prefer: libboost_regex1_66_0
+Prefer: libboost_filesystem1_66_0
+Prefer: libboost_iostreams1_66_0
+Prefer: libboost_date_time1_66_0
+
+# gboiko 20210503 workaround for build issues on x86_64
+Prefer: -libsmartcols-devel-32bit
+Prefer: -krb5-devel-32bit
+
+# ro added 20210708 requested by dmueller
+Prefer: -lzo-devel-32bit
+Prefer: -liboping-devel-32bit
+Prefer: -unixODBC-devel-32bit
+Prefer: -libcmocka-devel-32bit
+
+# ro added 20220207 requested by dmueller
+Prefer: -samba-devel-32bit
+Prefer: -libqt5-qtscript-devel-32bit
+# darix added 20220708 requested by meissner
+Prefer: -vulkan-devel-32bit
+
+# darix added 20220906 requested by favogt
+Prefer: libasan6
+
+# ro added 20220510 requested by jgonzalez
+Macros:
+%susemanager_container_images_path registry.suse.com/suse/manager/4.3
+:Macros
+
+# ro added 20220917 requested by meissner
+Prefer: libubsan1
+
+# mstrigl added 20220929 requested by meissner
+Prefer: go1.18
+
+### from SUSE:SLE-15-SP1:GA
+%define sle_version 150100
+
+Macros:
+%sle_version 150100
+:Macros
+
+# needed by kiwi-templates-SLES15-JeOS:OpenStack-Cloud
+FileProvides: /usr/bin/host bind-utils
+
+Substitute: system-packages:podman kmod kernel-default podman buildah createrepo_c
+
+# (coolo) Prefer over libyui-ncurses8 from GA (both providing yast2-ncurses)
+Prefer: libyui-ncurses9
+
+# (coolo) Additional prefers for installation-images
+Prefer: libyui-ncurses-pkg9 libyui-qt9 libyui-qt-graph9 libyui-qt-pkg9
+
+# (coolo) samba-libs requires 'samba-libs-python'
+Prefer: samba-libs-python3
+
+# (fcrozat) needed to undo this change from SLE15 SP0 to allow latest installation-images to build
+Ignore: !pciutils:pciutils-ids
+
+# (fcrozat) needed to build properly multipath-tools and its dependencies
+Prefer: kernel-default
+Ignore: multipath-tools:kmod(dm-multipath),kmod(dm-multipath),kmod(scsi_dh_emc),kmod(scsi_dh_rdac),kmod(scsi_dh_alua)
+
+# (fcrozat) prevent choice on python-configparser
+Prefer: python2-configparser
+
+# (fcrozat) ensure gio-branding-upstream isn't used (bsc#1132329)
+Substitute: build-packages:kiwi python3-kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !gio-branding-upstream
+
+######### JAVA
+# FATE#326347
+# First we need to de-prefer the java versions prefered in the SLE-15:GA prj Config:
+Prefer: -java-10-openjdk -java-10-openjdk-devel -java-10-openjdk-javadoc -java-10-openjdk-headless
+Prefer: -java-1_8_0-openjdk -java-1_8_0-openjdk-devel -java-1_8_0-openjdk-javadoc -java-1_8_0-openjdk-headless
+Prefer: -java-1_7_0-openjdk -java-1_7_0-openjdk-devel -java-1_7_0-openjdk-javadoc -java-1_7_0-openjdk-headless
+
+# Now we set the prefered Java version, but need fallbacks for some packages:
+Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-javadoc java-11-openjdk-headless
+
+# It might be better to 'de-prefer' the "old" ones, and omit the line above
+# according to Adrian. This needs some testing.
+# Unfortuantely this will bite us when packages require an old java
+
+# 8 before 10 on advice of fstrba
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-javadoc java-1_8_0-openjdk-headless
+Prefer: java-10-openjdk java-10-openjdk-devel java-10-openjdk-javadoc java-10-openjdk-headless
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-javadoc java-9-openjdk-headless
+# don't use that - fstrba
+Prefer: java-1_7_0-openjdk java-1_7_0-openjdk-devel java-1_7_0-openjdk-javadoc java-1_7_0-openjdk-headless
+
+######### end of JAVA
+
+# 15:GA has Prefer:go which will set the default to th eunverisoned go.
+# some packages stumble over "have choice for go >= 1.11: go1.11 go1.12", this will prevent this.
+# go1.12 is taken from 15:Update
+Prefer: go1.12
+
+
+### from SUSE:SLE-15-SP1:Update
+%define _repository snapshot-SP5
+# define a prefix for all package builds in SLE 15 SP1 to handle migration of packages
+# with identical version but lower release version than in a preceding codestream
+# Marcus Meissner 20220316
+Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT>
+
+
+# avoid the SP0 slurm 18.8 variants in SP1
+Prefer: slurm libpmi0 slurm-config slurm-node slurm-plugins
+
+# prefer one of the python-pytests. Marcus 20200512
+Prefer: python-pytest4 python2-pytest4 python3-pytest4
+
+# have conflict ebtween python3-pycrypto and python3-pycryptodome
+Prefer: python3-pycryptodome
+
+# prefer go1.14 (over go1.13). Gustavo 20200514
+# this breaks caasp Marcus 20200515
+#Prefer: go1.14
+
+
+# From Fabian Vogt on 2021023
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+
+# needed for latest Kiwi (sr#238860)
+Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires
+Conflict: python3-kiwi:libsystemd0-mini
+
+### from SUSE:SLE-15-SP2:GA
+%define sle_version 150200
+%define current_milestone GMC
+
+#needed for latest gspell
+Prefer: enchant-2-backend-hunspell
+
+Macros:
+%sle_version 150200
+%current_milestone GMC
+
+######### gcc9
+# define which gcc package builds the system libraries
+%product_libs_gcc_ver 9
+# The following shlibs have the latest version built from GCC 7 sources
+%product_libs_gcc_ver_libgfortran4 7
+%product_libs_gcc_ver_libasan4 7
+%product_libs_gcc_ver_libubsan0 7
+%product_libs_gcc_ver_libcilkrts5 7
+%product_libs_gcc_ver_libgo11 7
+%product_libs_gcc_ver_libobjc4 7
+# The following shlibs have the latest version built from GCC 8
+%product_libs_gcc_ver_libmpx2 8
+%product_libs_gcc_ver_libmpxwrappers2 8
+%product_libs_gcc_ver_libgo13 8
+######### end of gcc9
+
+:Macros
+
+# Prefer over libyui9* from SP1-GA
+Prefer: libyui11
+Prefer: libyui-ncurses11
+# Additional prefers for installation-images
+Prefer: libyui-ncurses-pkg11 libyui-qt11 libyui-qt-graph11 libyui-qt-pkg11
+Substitute: libyui libyui11
+Substitute: libyui-ncurses libyui-ncurses11
+Substitute: libyui-ncurses-pkg libyui-ncurses-pkg11
+Substitute: libyui-qt libyui-qt11
+Substitute: libyui-qt-graph libyui-qt-graph11
+Substitute: libyui-qt-pkg libyui-qt-pkg11
+
+# Help with the switch to the gcc9 provided libs: (bsc#1154695)
+Prefer: libasan5 libasan5-32bit libubsan1 libubsan1-32bit libgfortran5
+
+Substitute: infiniband-diags-devel rdma-core-devel
+
+Prefer: python3-pycryptodome
+
+# Needed after GNOME 3.34 rebase
+Prefer: libvala-0_46-devel
+
+# Needed with latest rpm (Use libgcrypt as crypto library for SP2 [jsc#SLE-9552])
+Preinstall: libgcrypt20 libgpg-error0
+
+# Needed for maven (jsc#SLE-8786)
+Prefer: -java-1_7_0-bootstrap -java-1_8_0-ibm
+Prefer: -java-1_7_0-bootstrap-devel -java-1_8_0-ibm-devel
+Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap
+Prefer: xml-commons-apis xml-commons-resolver
+Prefer: log4j12-mini
+Prefer: -scala-bootstrap -scala-bootstrap-swing -ant-scala-bootstrap
+Prefer: -maven-compiler-plugin-bootstrap -maven-resources-plugin-bootstrap -maven-jar-plugin-bootstrap
+Prefer: -maven-javadoc-plugin-bootstrap -maven-plugin-plugin-bootstrap -maven-failsafe-plugin-bootstrap
+Prefer: -maven-surefire-plugin-bootstrap -maven-surefire-report-plugin-bootstrap
+Prefer: bsh2
+Prefer: -stringtemplate4-bootstrap -antlr3-bootstrap-tool -sbt-bootstrap
+Prefer: apache-commons-net
+Prefer: gradle groovy-lib eclipse-swt gpars
+
+%ifarch %arm ppc riscv64 aarch64
+Macros:
+%prjconf_multibuild_selection patch
+:Macros
+%endif
+
+# Default to Java 11
+Prefer: java-11-openjdk java-11-openjdk-devel java-11-openjdk-headless java-11-openjdk-javadoc
+%ifarch s390x
+Prefer: java-1_8_0-openj9 java-1_8_0-openj9-devel java-1_8_0-openj9-headless
+%endif
+Prefer: java-1_8_0-openjdk java-1_8_0-openjdk-devel java-1_8_0-openjdk-headless java-1_8_0-openjdk-javadoc
+Prefer: java-10-openjdk-devel java-10-openjdk java-10-openjdk-devel java-10-openjdk-headless java-10-openjdk-javadoc
+Prefer: java-9-openjdk java-9-openjdk-devel java-9-openjdk-headless java-9-openjdk-javadoc
+Prefer: java-1_7_0-bootstrap-devel java-1_7_0-bootstrap java-1_7_0-bootstrap-headless
+
+# use rpm by default to build, instead of rpm-ndb
+Prefer: rpm
+
+# Needed with latest rpm (Added zstd support in SLE-15-SP2 [bsc#1162668])
+Preinstall: libzstd1
+
+# needed due to udisk devel package name changeinstallcheck: ignore rpm-ndb slurm-cray slurm-hdf5 slurm-slurmdbd slurm-webdoc setools-gui
+Prefer: libudisks2-0-devel
+
+# break dependency of the -mini packages: they are valid for OBS, but not for end-user-installation
+Ignore: cmake-mini:this-is-only-for-build-envs
+
+# Cmake exists as a -mini flavor, which is not linked against curl.
+Prefer: cmake-mini
+
+Prefer: ocaml-compiler-libs-devel
+
+Prefer: python2-contextlib2
+
+Prefer: chrony-pool-suse
+
+%ifarch i586
+Prefer: slurm libpmi0 slurm-config slurm-plugins slurm-node
+%endif
+
+Substitute: azuremetadata python3-azuremetadata
+
+# required after changes form the weekend of April 26
+Prefer: python3-pytest
+Prefer: python2-pytest
+
+# required after CTLG for PackageKit, which introduced dnf
+Prefer: PackageKit-backend-zypp
+
+Prefer: python2-subprocess32
+
+### from SUSE:SLE-15-SP2:Update
+%define _repository snapshot-SP5
+# define a prefix for all package builds in SLE 15 SP3 to handle migration of packages
+# with identical version but lower release version than in a preceding codestream
+# Marcus Meissner 20220117
+Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT>
+
+# have choice for python2-pycrypto needed by python2-oauth2client: python2-pycrypto python2-pycryptodome 20200916 - gboiko
+Prefer: python2-pycrypto
+
+# avoid have choice for pkgconfig(gnutls): libgnutls-devel libgnutls-devel-32bit
+Prefer: libgnutls-devel
+
+# qt5 prefers (32bit mess)
+Prefer: libQt5Test-devel libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel libQt5PrintSupport-devel libQt5Concurrent-devel
+
+# have choice for pkgconfig(bluez): bluez-devel bluez-devel-32bit (32bit mess)
+Prefer: bluez-devel
+
+# conflict with postgresql13-devel-mini ?
+Prefer: libpq5
+
+Prefer: gdk-pixbuf-devel
+
+# From Fabian Vogt on 2021023
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips
+
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips
+
+
+# for thunderbird (nodejs >= 10 ... has 3 options)
+
+Prefer: nodejs14
+
+# we now have a cmake-full at the version of cmake3 from SUSE:SLE-15:Update, to avoid it pulling the override by defualt,
+# use this prefer change Marcus 20220201
+Prefer: -cmake3-full
+Prefer: cmake-full
+
+### from SUSE:SLE-15-SP3:GA
+
+# COMMON BEGIN common part
+%define sle_version 150300
+Macros:
+%sle_version 150300
+:Macros
+
+# Prefer later so_version of libyui* over libyui*8 (SP0), libyui*9 (SP1) and libyui*11 (SP2)
+Prefer: -libyui8 -libyui-ncurses8 -libyui-ncurses-pkg8 -libyui-qt8 -libyui-qt-graph8 -libyui-qt-pkg8
+Prefer: -libyui9 -libyui-ncurses9 -libyui-ncurses-pkg9 -libyui-qt9 -libyui-qt-graph9 -libyui-qt-pkg9
+Prefer: -libyui11 -libyui-ncurses11 -libyui-ncurses-pkg11 -libyui-qt11 -libyui-qt-graph11 -libyui-qt-pkg11 -libyui-ncurses-rest-api11 -libyui-qt-rest-api11
+
+# Revert substitutions from SP2
+Substitute: libyui libyui
+Substitute: libyui-ncurses libyui-ncurses
+Substitute: libyui-ncurses-pkg libyui-ncurses-pkg
+Substitute: libyui-qt libyui-qt
+Substitute: libyui-qt-graph libyui-qt-graph
+Substitute: libyui-qt-pkg libyui-qt-pkg
+Substitute: libyui-ncurses-rest-api libyui-ncurses-rest-api
+Substitute: libyui-qt-rest-api libyui-qt-rest-api
+
+Prefer: gmmlib-devel
+
+Preinstall: libcrypt1
+
+# required for latest Mesa
+Prefer: libdrm-devel Mesa-libGL-devel libglvnd-devel libkms-devel Mesa-libEGL-devel libva-devel libdbusmenu-qt5-devel
+
+Prefer: typelib-1_0-Gst-1_0
+
+# required for latest Mesa
+Prefer: Mesa-libGLESv2-devel Mesa-libGLESv1_CM-devel
+
+# not sure why we need those
+Prefer: libQt5Sql-devel libQt5Gui-devel libQt5Widgets-devel libQt5Network-devel libQt5Xml-devel libQt5Xml-devel libQt5DBus-devel libQt5Core-devel audit-devel
+
+# required after MU#16450 (gnutls)
+Prefer: libgnutls-devel
+
+Prefer: systemd-sysvinit
+
+Prefer: alsa-devel libpulse-devel
+
+Prefer: kernel-firmware
+
+Prefer: systemd-default-settings-branding-SLE
+
+Prefer: -libMagick++-devel-32bit -ImageMagick-devel-32bit -pciutils-devel-32bit
+Prefer: -libgbm-devel-32bit -device-mapper-devel-32bit
+
+Prefer: plymouth-branding-SLE
+
+Ignore: !pango-devel:cairo-devel
+
+Substitute: kmod-compat kmod
+# replacing module-init-tools
+Prefer: -kmod-compat
+
+# choose non berkeleydb version of cyrus-sasl (jsc#SLE-12190)
+Prefer: -cyrus-sasl-bdb-devel -cyrus-sasl-devel-32bit
+Substitute: postfix-lmdb postfix
+
+# jsc#SLE-17030
+Ignore: postgresql12-devel-mini:this-is-only-for-build-envs
+Ignore: postgresql13-devel-mini:this-is-only-for-build-envs
+Prefer: postgresql13-devel-mini postgresql12-devel-mini
+
+Prefer: -mpg123-devel-32bit
+
+Prefer: -coreutils-single
+
+# From Fabian Vogt on 2021023
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini
+# COMMON END common part
+
+# due to libreoffice
+Prefer: -sane-backends-devel-32bit
+
+Prefer: -libX11-devel-32bit
+
+# needed for latest Kiwi (sr#238860)
+Prefer: -kiwi-image-docker-requires -kiwi-filesystem-requires -kiwi-image-vmx-requires -kiwi-image-oem-requires -kiwi-image-iso-requires
+Conflict: python3-kiwi:libsystemd0-mini
+
+# needed for MU#18655
+Prefer: -python3-vsts
+
+# due to MU#19157
+Prefer: -libboost_regex_legacy
+### from SUSE:SLE-15-SP3:Update
+%define _repository snapshot-SP5
+
+Macros:
+
+### from SUSE:SLE-15-SP3:Update
+
+%_repository snapshot-SP5
+:Macros
+
+# define a prefix for all package builds in SLE 15 SP3 to handle migration of packages
+# with identical version but lower release version than in a preceding codestream
+# Marcus Meissner 20220117
+Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT>
+
+
+# From Fabian Vogt on 20210913 ... patterns-base-fips temporary
+Substitute: build-packages:kiwi !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips !systemd-mini-container
+
+Substitute: build-packages:docker !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !libudev-mini1 !krb5-mini !gettext-tools-mini !cmake-mini !systemd-mini-sysvinit !dummy-release !libunbound-devel-mini !gio-branding-upstream !gettext-runtime-mini patterns-base-fips !systemd-mini-container
+
+# after secondary icu version release Marcus 20211214
+
+Prefer: libicu-devel
+
+
+# gboiko, 20220202 fixing the following unresolvable:
+# have choice for libwbclient.so.0()(64bit) needed by cifs-utils: libwbclient0 samba-client-libs
+Prefer: samba-client-libs samba-devel
+
+# BEGIN RUST STUFF
+Prefer: cargo1.58 cargo1.57
+
+# Define the architectures in which Rust (and Rust crates) are available
+# NOTE: Keep this in sync with rust-srpm-macros!
+%define rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le riscv64 s390x
+%define rust_tier1_arches x86_64 aarch64
+
+Macros:
+%rust_arches x86_64 i586 i686 armv6hl armv7hl aarch64 ppc64 powerpc64 ppc64le powerpc64le riscv64 s390x
+%rust_tier1_arches x86_64 aarch64
+:Macros
+
+# END RUST STUFF
+
+### from SUSE:SLE-15-SP4:GA
+
+# COMMON BEGIN common part
+%define sle_version 150400
+Macros:
+%sle_version 150400
+:Macros
+
+# define a prefix for all package builds in SLE 15 SP4 to handle migration of packages
+# with identical version but lower release version than in a preceding codestream
+Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT>
+
+Prefer: -python3-cairo-devel -python2-cairo-devel -python3-gobject2-devel
+Prefer: -keyutils-devel-32bit -gtk4-devel-32bit
+
+Prefer: -libgcrypt-devel-32bit
+
+# from Factory: PHP requires php-sapi, which can be provided by multiple packages. We prefer -cli, related to the specific PHP version
+Prefer: php8:php8-cli
+
+Prefer: php7:php7-cli
+
+Prefer: -php7
+
+Prefer: -python3-libxml2-python
+Substitute: python3-libxml2-python python3-libxml2
+
+Prefer: -libavcodec-devel -libavfilter-devel -libavformat-devel -libavutil-devel
+
+Prefer: -lua51-luajit-devel
+
+Prefer: -libzstd-devel-32bit
+
+Prefer: -libsoup2-devel-32bit
+
+Prefer: java-17-openjdk-devel java-17-openjdk java-17-openjdk-headless java-17-openjdk-javadoc
+
+Prefer: -libfdisk-devel-32bit
+
+Prefer: -libpcap-devel-32bit
+
+# must be removed after fix for bsc#1193711 is merged
+# can also be removed in case bsc#1194749 is fully fixed
+Support: python-rpm-macros
+
+# required for suseconnect-ng replacing SUSEConnect and zypper-migration-plugin
+Prefer: -SUSEConnect
+Prefer: -zypper-migration-plugin
+
+# OBS is preferring literal matches over provides, therefore substituting with suseconnect-ng
+Substitute: SUSEConnect suseconnect-ng
+Substitute: zypper-migration-plugin suseconnect-ng
+
+# Fix fot Qt stack update
+Prefer: -libqt5-qtremoteobjects-devel-32bit
+Prefer: -libqt5-qtspeech-devel-32bit
+Prefer: -xcb-util-cursor-devel-32bit
+
+# from Factory:
+# pipewire has a jack compatible implementation - but for now we prefer the real jack
+Prefer: -pipewire-libjack-0_3-devel libjack0
+
+Prefer: -libyui-ncurses15 -libyui-ncurses-pkg15 -libyui-ncurses-rest-api15 -libyui-qt15 -libyui-qt-graph15 -libyui-qt-pkg15 -libyui-qt-rest-api15
+
+Prefer: -libsmbclient0 -libwbclient0 -libsmbclient-devel -libwbclient-devel -samba-devel-32bit -libndr-krb5pac-devel -libndr-nbt-devel
+
+Prefer: -liburing-devel
+
+Prefer: -php7
+
+Substitute: libudev-devel systemd-devel
+Substitute: libudev-mini-devel systemd-mini-devel
+Prefer: -libudev-mini-devel
+Prefer: -libudev-devel
+Prefer: -libudev-devel-32bit
+
+# required for some Public Cloud and JeOS flavours to correctly resolve the zypper-lifecycle-plugin
+# dependency on /usr/bin/ruby, as ruby2.5 isn't pulled in by SUSEConnect anymore.
+FileProvides: /usr/bin/ruby ruby2.5
+
+%define skip_python2 1
+%define _without_python2 1
+
+Macros:
+## PYTHON MACROS BEGIN
+# order of %pythons is important: The last flavor overrides any operation on conflicting files and definitions during expansions,
+# making it the "default" in many cases --> keep the primary python3 provider at the end.
+%pythons %{?!skip_python3:python3}
+%add_python() %{expand:%%define pythons %1 %pythons}
+
+%_without_python2 1
+:Macros
+
+Prefer: -python -python-base
+
+Substitute: txt2tags python3-txt2tags
+
+FileProvides: /bin/bash bash
+FileProvides: /bin/sh bash-sh busybox-sh
+Prefer: bash-sh
+Preinstall: bash bash-sh
+Prefer: -busybox
+
+Prefer: -openblas-devel
+Substitute: openblas-devel libopenblas_pthreads-devel
+### from SUSE:SLE-15-SP4:Update
+%define _repository snapshot-SP5
+Prefer: -python3-cairo
+
+Prefer: libdebuginfod1-dummy
+
+FileProvides: /usr/sbin/nologin util-linux
+FileProvides: /usr/bin/perl perl
+
+
+### from SUSE:SLE-15-SP5:GA
+Macros:
+%product_libs_llvm_ver 15
+:Macros
+
+# COMMON BEGIN common part
+%define sle_version 150500
+Macros:
+%sle_version 150500
+:Macros
+
+Release: <CI_CNT>.<B_CNT> spec:%sle_version.<CI_CNT>.<B_CNT>
+
+Prefer: -libasan6-gcc10
+
+FileProvides: /usr/bin/lzop lzop
+
+Prefer: -libpacemaker-devel
+Prefer: -libpacemaker3
+Prefer: -libglue2
+Substitute: libglue-devel cluster-glue-devel
+
+Prefer: -libpolkit0
+Prefer: -rdma-core-devel-32bit
+