# Workaround https://bugzilla.opensuse.org/show_bug.cgi?id=1125775#c9 - until firewalld is fixed. Ignore: firewall-macros:firewalld %define gcc_version 10 # testing new cycle algorithm BuildFlags: genmetaalgo:1 # The prjconf macros have a serial to help work around issues like https://github.com/openSUSE/open-build-service/issues/4088 # On macros having impact on dep chains, update the serial (mainly ruby, python) # Using a date to indicate when we set the serial ExpandFlags: macroserial:20210416 ExpandFlags: kiwi-nobasepackages ExpandFlags: docker-nobasepackages PublishFlags: ympdist:openSUSE%20Tumbleweed # Use ext4 as FS in builder workers (instead of default ext3) BuildFlags: vmfstype:ext4 # nodirindex enabled 2020-12-31 - https://github.com/openSUSE/obs-build/pull/634 BuildFlags: vmfsoptions:nodirindex # Help with the switch to the gcc7 provided libs #Prefer: -libstdc++6-gcc7 -libtsan0-gcc7 -libgomp1-gcc7 -libgcc_s1-gcc7 -libatomic1-gcc7 -libitm1-gcc7 #Prefer: -liblsan0-gcc7 -libmpx2-gcc7 # Help with the switch to the gcc9 provided libs: Prefer: libasan5 libasan5-32bit libasan6 libasan6-32bit libubsan1 libubsan1-32bit libgfortran5 Patterntype: rpm-md ymp %if "%_repository" == "images" Type: kiwi Repotype: none Patterntype: none Prefer: openSUSE-release-ftp Support: release-compare BuildFlags: obsgendiff %endif %if "%_repository" == "containerfile" Type: docker BuildEngine: podman # KUBEVIRTFROM is passed to container Dockerfiles using the --build-arg option, e.g. # docker build --build-arg KUBEVIRTFROM=opensuse/tumbleweed ... BuildFlags: dockerarg:KUBEVIRTFROM=opensuse/tumbleweed %endif %if "%_project" == "openSUSE:Factory" || "%_project" == "openSUSE:Factory:NonFree" || "%_project" == "openSUSE:Factory:PowerPC" || "%_project" == "openSUSE:Factory:Rebuild" || "%_project" == "openSUSE:Factory:zSystems" Repotype: none Macros: %shim_enforce_ms_signature 1 :Macros %endif %if "%_repository" == "images" || "%_repository" == "container" Prefer: openSUSE-release -dummy-release # FTP tree takes forever BuildFlags: logidlelimit:15400 %else # 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 # abort the build if the log file didn't move in 1.5h (seen in libreoffice builds) BuildFlags: logidlelimit:5400 %endif %if "%_project" == "openSUSE:Factory" || "%_project" == "openSUSE:Factory:NonFree" || "%_project" == "openSUSE:Factory:PowerPC" || "%_project" == "openSUSE:Factory:ARM" || "%_project" == "openSUSE:Factory:Live" || "%_project" == "openSUSE:Factory:Rebuild" || "%_project" == "openSUSE:Factory:Rings" || "%_project" == "openSUSE:Factory:Rings:0-Bootstrap" || "%_project" == "openSUSE:Factory:Rings:1-MinimalX" || "%_project" == "openSUSE:Factory:Rings:2-TestDVD" || "%_project" == "openSUSE:Factory:Containers" Macros: %vendor openSUSE %distribution openSUSE Tumbleweed %packager https://bugs.opensuse.org :Macros %endif Substitute: kiwi-setup:image python3-kiwi createrepo_c Substitute: kiwi-image:tbz python3-kiwi Substitute: kiwi-image:docker python3-kiwi kiwi-systemdeps-containers Substitute: kiwi-image:iso kiwi-systemdeps-iso-media qemu-tools Substitute: kiwi-image:oem kiwi-systemdeps-disk-images xorriso Prefer: kiwi-systemdeps-filesystems Prefer: kiwi-systemdeps-disk-images Prefer: kiwi-systemdeps-iso-media Substitute: obs:cli_debug_packages gdb vim strace less rzsz # Migration to product builder; using the Tumbleweed plugin since 2020-04-28 Substitute: kiwi-packagemanager:instsource product-builder-plugin-Tumbleweed # use plugin-openSUSE # Substitute: kiwi-packagemanager:instsource product-builder-plugin-openSUSE Substitute: system-packages:kiwi-product product-builder # allow builds using docker tool Substitute: system-packages:docker kmod kernel-default docker createrepo_c 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 # Podman based image building Substitute: system-packages:podman podman buildah createrepo_c release-compare 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 # To build ISO images Substitute: build-packages:iso !systemd-mini !udev-mini !krb5-mini !libsystemd0-mini !systemd-mini-sysvinit # create conflicts for packages installed into the target image Substitute: kiwi python3-kiwi Prefer: installation-images-openSUSE installation-images-debuginfodeps-openSUSE # Packages that need netcfg will also require libnss_usrfiles2, as a few files moved from /etc to /usr/etc # Since not all packages care, we only add it where needed (instead of preinstall) Substitute: netcfg netcfg libnss_usrfiles2 # Enable ccache for a selection of packages: BuildFlags: useccache:NetworkManager BuildFlags: useccache:bitcoin BuildFlags: useccache:ceph BuildFlags: useccache:chromium BuildFlags: useccache:glib2 BuildFlags: useccache:gtk3 BuildFlags: useccache:gtk3:doc BuildFlags: useccache:llvm9 # ccache 4.x breaks webkit2gtk3 #BuildFlags: useccache:webkit2gtk3 # switch to kiwi v8 Prefer: python3-kiwi Conflict: python3-kiwi:libsystemd0-mini Conflict: python3-kiwi:systemd-mini-sysvinit # ghc-bootstrap should not provide it to start with - but it does. so let's kick it Prefer: libffi7 # 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: lua54 lua53 lua51 Prefer: liblua5_4-5 liblua5_3-5 liblua5_1-5 Prefer: lua54-devel lua53-devel lua51-devel Prefer: libtolua++-5_4-devel libtolua++-5_3-devel libtolua++-5_1-devel Prefer: -moonjit-devel Preinstall: liblua5_4-5 FileProvides: /bin/bash bash FileProvides: /bin/csh tcsh FileProvides: /bin/hostname hostname busybox-hostname FileProvides: /usr/bin/hostname hostname busybox-hostname FileProvides: /bin/logger util-linux-systemd FileProvides: /sbin/netconfig sysconfig-netconfig FileProvides: /sbin/setcap libcap-progs FileProvides: /sbin/startproc sysvinit-tools FileProvides: /usr/bin/bc bc 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/grep busybox-grep grep FileProvides: /usr/bin/gzip busybox-gzip gzip FileProvides: /usr/bin/killall psmisc FileProvides: /usr/bin/mkdir coreutils busybox-coreutils FileProvides: /usr/bin/mimencode metamail # /sbin/mkinitrd is required by suse-module-tools; but this is pulled into systemd-mini, causing a cycle # FileProvides: /sbin/mkinitrd dracut FileProvides: /usr/bin/mkisofs mkisofs FileProvides: /usr/bin/openssl openssl FileProvides: /usr/bin/perl perl-base FileProvides: /usr/bin/pkg-config pkgconf-pkg-config Substitute: pkg-config pkgconf-pkg-config FileProvides: /usr/bin/python python-base FileProvides: /usr/bin/python2 python2-base FileProvides: /usr/bin/python3 python38-base FileProvides: /usr/bin/sed busybox-sed sed sed FileProvides: /usr/bin/setfacl acl FileProvides: /usr/bin/sg_inq sg3_utils FileProvides: /usr/bin/touch coreutils busybox-coreutils FileProvides: /usr/bin/tput ncurses-utils FileProvides: /usr/bin/which which busybox-which FileProvides: /usr/bin/xmllint libxml2-tools FileProvides: /usr/bin/Xvfb xorg-x11-server FileProvides: /usr/bin/xz busybox-xz xz FileProvides: /usr/sbin/groupadd shadow FileProvides: /usr/sbin/lockdev lockdev FileProvides: /usr/sbin/useradd shadow FileProvides: /usr/sbin/usermod shadow FileProvides: /usr/bin/wish tk FileProvides: /usr/bin/awk gawk FileProvides: /usr/bin/host bind-utils FileProvides: /sbin/start_daemon sysvinit-tools FileProvides: /sbin/pidof sysvinit-tools FileProvides: /sbin/ifup wicked-service Preinstall: aaa_base attr bash coreutils diffutils Preinstall: filesystem fillup glibc grep Preinstall: libbz2-1 libgcc_s1 libncurses6 pam Prefer: -pam_unix-nis Preinstall: permissions rpm rpm-config-SUSE sed tar libz1 libselinux1 Preinstall: libgcrypt20 libgpg-error0 Preinstall: liblzma5 libcap2 libacl1 libattr1 Preinstall: libpopt0 libelf1 Preinstall: libpcre1 libzstd1 libpcre2-8-0 Preinstall: libreadline8 #Runscripts: aaa_base Prefer: libdb-4_8-devel VMinstall: util-linux libmount1 perl-base libdb-4_8 libblkid1 libuuid1 libsmartcols1 libcrypt1 VMinstall: kernel-obs-build VMInstall: iproute2 libmnl0 # Use the x86_64 kernel on i586 builds - boo#1178762 - Slow down in OBS since kernel 5.6.0 on 32bit 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 # it would be a great idea to have, but sometimes installation-images wants to build debuginfos in #ExportFilter: -debuginfo-.*\.rpm$ #ExportFilter: -debugsource-.*\.rpm$ #ExportFilter: ^master-boot-code.*\.i586.rpm$ . x86_64 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 Support: build-mkbaselibs Prefer: build-mkbaselibs Support: brp-check-suse Support: post-build-checks Support: rpmlint-Factory # Add hostname so that OBS/build will have a chance to identify the hostname (instead of localhost) Support: hostname Prefer: -busybox-hostname # remove build-compare support to disable "same result" package dropping Support: build-compare # In the actual Tumbleweed repos, we want to be stricter with rpmlint %if "%_project" == "openSUSE:Factory" || "%_project" == "openSUSE:Factory:PowerPC" || "%_project" == "openSUSE:Factory:ARM" || "%_project" == "openSUSE:Factory:Rebuild" || "%_project" == "openSUSE:Factory:Live" || "%_project" == "openSUSE:Factory:NonFree" Support: rpmlint-Factory-strict %endif %ifarch ia64 Support: libunwind libunwind-devel Preinstall: libunwind %endif # Prefer coreutils over coreutils-single Prefer: -coreutils-single ### Branding related preferences Prefer: systemd-default-settings-branding-openSUSE Prefer: distribution-logos-openSUSE-Tumbleweed Prefer: awesome:awesome-branding-upstream 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 Prefer: icewm-theme-branding Prefer: libcinnamon-desktop-data:libcinnamon-desktop-data-branding-upstream Prefer: libgarcon-1-0:libgarcon-branding-upstream Prefer: libgarcon-data:libgarcon-branding-upstream Prefer: libgio-2_0-0:gio-branding-upstream Prefer: libpurple-branding-upstream Prefer: libreoffice:libreoffice-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: sddm:sddm-branding-upstream Prefer: sway:sway-branding-upstream Prefer: systemd-presets-branding-openSUSE Prefer: wallpaper-branding-openSUSE Prefer: waybar:waybar-branding-upstream Prefer: xfce4-notifyd:xfce4-notifyd-branding-upstream Prefer: xfce4-settings:xfce4-settings-branding-upstream Prefer: xfdesktop:xfdesktop-branding-upstream Prefer: yast2-qt:yast2-qt-branding-openSUSE Prefer: branding-openSUSE Prefer: chrony-pool-openSUSE # pciutils-ids and hwdata both provides pciutils-ids Prefer: hwdata # have choice for xfce4-panel-plugin-whiskermenu needed by xfce4-panel-branding-openSUSE: xfce4-panel-plugin-whiskermenu xfce4-whiskermenu-plugin Prefer: xfce4-panel-branding-openSUSE:xfce4-whiskermenu-plugin Prefer: xfce4-statusnotifier-plugin Prefer: patterns-xfce-xfce:mate-calc # 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: libdebuginfod1 debuginfod-client Prefer: libunbound-devel-mini Prefer: log4j12-mini Prefer: systemd-mini-devel:systemd-mini Prefer: systemd-mini systemd-mini-devel libsystemd0-mini Prefer: udev-mini # 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 Ignore: dummy-release:this-is-only-for-build-envs Ignore: erlang-rebar-obs:this-is-only-for-build-envs Ignore: ghc-bootstrap-helpers:this-is-only-for-build-envs Ignore: ghc-bootstrap:this-is-only-for-build-envs Ignore: ghostscript-mini: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: postgresql12-devel-mini:this-is-only-for-build-envs Ignore: postgresql13-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 # Ring0 packages should not pull in 'info' - making the base VM smaller Ignore: libtool:info Ignore: autoconf:info Ignore: automake:info 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 # 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 # 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 # Cmake exists as a -mini flavor, which is not linked against curl. Prefer: cmake-mini Prefer: -suse-build-key # Set postfix as the 'default' smtp_daemon (virtual symbol provided by all MTAs) Prefer: postfix # cyrus-sasl and postfix both bring a -bdb flavor. De-prefer this flavor Prefer: -cyrus-sasl-bdb-devel # Spamassassin requires wget or curl - we prefer curl, as its build dep chain seems cheaper Prefer: spamassassin:curl # Python3 exists in multiple versions - we currently favor 3.8 (our default): Prefer: -python36 -python39 Prefer: -python36-hotdoc -python39-hotdoc Prefer: -python36-txt2tags -python39-txt2tags Prefer: -python3-ipython715 -python38-ipython715 -python39-ipython715 # man and mandoc provide man; mandoc claims to be lightweight, but it was never discussed to be the new default Prefer: man # go exists in mutliple versions by now - we prefer the 'unversioned package' Prefer: go -go1.13 # have choice for kubernetes-kubelet-common (de-prefer the old versions, ensuring to have a new unresolvable when a new version shows up) Prefer: -kubernetes1.18-kubelet-common -kubernetes1.19-kubelet-common # python-tornado exists in multiple versions, the meta-package python-tornado defines the system default Prefer: python3-tornado -python3-tornado4 Prefer: python36-tornado -python36-tornado4 -python36-tornado5 Prefer: python38-tornado -python38-tornado4 -python38-tornado5 Prefer: python39-tornado -python39-tornado4 -python39-tornado5 # There are multiple PK backends available. Favor the openSUSE own zypp backend Prefer: PackageKit-backend-zypp # have choice for pkgconfig(libftdi): libftdi-devel libftdi0-devel Prefer: libftdi-devel # 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 python3-sip: python3-sip-devel python3-sip4 Prefer: -python3-sip4 -python3-sip4-devel Prefer: -python36-sip4 -python36-sip4-devel Prefer: -python38-sip4 -python38-sip4-devel Prefer: -python39-sip4 -python39-sip4-devel # There is python[23]-prompt_toolkit and also python3-prompt_toolkit1 for compat. Use the unversioned one by default Prefer: python3-prompt_toolkit python39-prompt_toolkit python38-prompt_toolkit python36-prompt_toolkit # When perl provides a module that is also in a different package, but the consumer specifies no version, we go with perl/perl-base Prefer: perl-base perl # Lightdm requires 'a greeter' - we prefer the default lightdm-gtk-greeter Prefer: lightdm-gtk-greeter # Apache requires a MPM - we pick prefork Prefer: apache2:apache2-prefork # 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 # azure-cli reports: have choice for python3-vsts needed by python3-azure-functions-devops-build: python3-azure-devops python3-vsts # Use the real package name Prefer: python3-vsts python36-vsts python38-vsts python39-vsts # for symbol syslog (syslogd is best as it has the least dependencies) Prefer: syslogd # A couple packares require a dbus daemon to show notifications - unless oterhwise specified, we prefer the 'standalong notification-daemon; Prefer: notification-daemon # We have multiple nodejs versions in the repo - prefer version 10 for now Prefer: nodejs15 nodejs15-devel npm15 # have choice for libpulse.so.0 needed by wine-32bit: apulse-32bit libpulse0-32bit - prefering the 'original' Prefer: libpulse0-32bit libsane1-32bit -pipewire-pulseaudio # Have choice for vtk-java/vtk-tcl/python3-vtk needed by vtk-devel Prefer: vtk-java python3-vtk python36-vtk python38-vtk python39-vtk Prefer: eclipse-swt # wine comes in various flavors by now, we pick the unflavored ones Prefer: wine-32bit wine-devel-32bit wine-devel # 32bit -devel packages contain .pc files and cause a 'have choice' for OBS. unfavor the -32bit variants Prefer: -ColPack-devel-32bit Prefer: -FAudio-devel-32bit Prefer: -ImageMagick-devel-32bit Prefer: -Mesa-libd3d-devel-32bit Prefer: -Mesa-libglapi-devel-32bit Prefer: -Mesa-libEGL-devel-32bit Prefer: -Mesa-libGL-devel-32bit Prefer: -Mesa-libGLESv2-devel-32bit Prefer: -Mesa-libGLESv1_CM-devel-32bit Prefer: -NetworkManager-devel-32bit Prefer: -aalib-devel-32bit Prefer: -adolc-devel-32bit Prefer: -alsa-devel-32bit Prefer: -alsa-topology-devel-32bit Prefer: -armadillo-devel-32bit Prefer: -arpack-ng-devel-32bit Prefer: -at-spi2-core-devel-32bit Prefer: -atk-devel-32bit Prefer: -atkmm-devel-32bit Prefer: -atkmm1_6-devel-32bit Prefer: -attica-qt5-devel-32bit Prefer: -audiofile-devel-32bit Prefer: -audit-devel-32bit Prefer: -augeas-devel-32bit Prefer: -bind-devel-32bit Prefer: -binutils-devel-32bit Prefer: -blas-devel-32bit Prefer: -bluez-devel-32bit Prefer: -cairo-devel-32bit Prefer: -cairomm-devel-32bit Prefer: -cairomm1_0-devel-32bit Prefer: -cblas-devel-32bit Prefer: -chmlib-devel-32bit Prefer: -clang10-devel-32bit Prefer: -clang7-devel-32bit Prefer: -clang8-devel-32bit Prefer: -clang9-devel-32bit Prefer: -cppunit-devel-32bit Prefer: -cracklib-devel-32bit Prefer: -cups-devel-32bit Prefer: -cyrus-sasl-devel-32bit Prefer: -dante-devel-32bit Prefer: -dapl-devel-32bit Prefer: -dbus-1-devel-32bit Prefer: -dbus-1-glib-devel-32bit Prefer: -device-mapper-devel-32bit Prefer: -dirac-devel-32bit Prefer: -ecryptfs-utils-devel-32bit Prefer: -file-devel-32bit Prefer: -flac-devel-32bit Prefer: -fltk-devel-32bit Prefer: -fontconfig-devel-32bit Prefer: -frameworkintegration-devel-32bit Prefer: -freeglut-devel-32bit Prefer: -freetype2-devel-32bit Prefer: -gd-devel-32bit Prefer: -gdbm-devel-32bit Prefer: -gdk-pixbuf-devel-32bit Prefer: -giflib-devel-32bit Prefer: -glib2-devel-32bit Prefer: -glibc-devel-32bit Prefer: -glu-devel-32bit Prefer: -gmp-devel-32bit Prefer: -grantlee5-devel-32bit Prefer: -gstreamer-devel-32bit Prefer: -gstreamer-plugins-base-devel-32bit Prefer: -gtk2-devel-32bit Prefer: -gtk3-devel-32bit Prefer: -gtk4-devel-32bit Prefer: -hdf5-devel-32bit Prefer: -hdf5-mvapich2-devel-32bit Prefer: -hdf5-openmpi1-devel-32bit Prefer: -hdf5-openmpi2-devel-32bit Prefer: -hdf5-openmpi3-devel-32bit Prefer: -hdf5-openmpi4-devel-32bit Prefer: -hunspell-devel-32bit Prefer: -isl-devel-32bit Prefer: -jbig2dec-devel-32bit Prefer: -kaccounts-integration-devel-32bit Prefer: -kactivities-stats-devel-32bit Prefer: -kactivities5-devel-32bit Prefer: -karchive-devel-32bit Prefer: -kauth-devel-32bit Prefer: -kbookmarks-devel-32bit Prefer: -kcmutils-devel-32bit Prefer: -kcodecs-devel-32bit Prefer: -kcompletion-devel-32bit Prefer: -kconfig-devel-32bit Prefer: -kconfigwidgets-devel-32bit Prefer: -kcontacts-devel-32bit Prefer: -kcoreaddons-devel-32bit Prefer: -kcrash-devel-32bit Prefer: -kdbusaddons-devel-32bit Prefer: -kdeclarative-devel-32bit Prefer: -kdelibs4support-devel-32bit Prefer: -kdesu-devel-32bit Prefer: -kdewebkit-devel-32bit Prefer: -kdnssd-framework-devel-32bit Prefer: -kdoctools-devel-32bit Prefer: -kemoticons-devel-32bit Prefer: -keyutils-devel-32bit Prefer: -kglobalaccel-devel-32bit Prefer: -kguiaddons-devel-32bit Prefer: -khtml-devel-32bit Prefer: -ki18n-devel-32bit Prefer: -kiconthemes-devel-32bit Prefer: -kidletime-devel-32bit Prefer: -kio-devel-32bit Prefer: -kitemmodels-devel-32bit Prefer: -kitemviews-devel-32bit Prefer: -kjobwidgets-devel-32bit Prefer: -kjs-devel-32bit Prefer: -kjsembed-devel-32bit Prefer: -kmediaplayer-devel-32bit Prefer: -knewstuff-devel-32bit Prefer: -knotifications-devel-32bit Prefer: -knotifyconfig-devel-32bit Prefer: -kpackage-devel-32bit Prefer: -kparts-devel-32bit Prefer: -kpeople5-devel-32bit Prefer: -kplotting-devel-32bit Prefer: -kpty-devel-32bit Prefer: -krb5-devel-32bit Prefer: -kross-devel-32bit Prefer: -krunner-devel-32bit Prefer: -kservice-devel-32bit Prefer: -ktexteditor-devel-32bit Prefer: -ktextwidgets-devel-32bit Prefer: -kunitconversion-devel-32bit Prefer: -kwallet-devel-32bit Prefer: -kwayland-devel-32bit Prefer: -kwidgetsaddons-devel-32bit Prefer: -kwindowsystem-devel-32bit Prefer: -kxmlgui-devel-32bit Prefer: -kxmlrpcclient5-devel-32bit Prefer: -lapack-devel-32bit Prefer: -lapacke-devel-32bit Prefer: -libBox2D-devel-32bit Prefer: -libFS-devel-32bit Prefer: -libGLw-devel-32bit Prefer: -libHX-devel-32bit Prefer: -libICE-devel-32bit Prefer: -libKF5NetworkManagerQt-devel-32bit Prefer: -libMagick++-devel-32bit Prefer: -libOSMesa-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: -libQt5WebKit5-devel-32bit Prefer: -libQt5WebKitWidgets-devel-32bit Prefer: -libQt5Widgets-devel-32bit Prefer: -libQt5Xml-devel-32bit Prefer: -libSDL-devel-32bit Prefer: -libSDL2-devel-32bit Prefer: -libSDL2_gfx-devel-32bit Prefer: -libSDL2_image-devel-32bit Prefer: -libSDL2_mixer-devel-32bit Prefer: -libSDL2_net-devel-32bit Prefer: -libSDL2_ttf-devel-32bit Prefer: -libSDL_Pango-devel-32bit Prefer: -libSDL_gfx-devel-32bit Prefer: -libSDL_image-devel-32bit Prefer: -libSDL_mixer-devel-32bit -libSDL_mixer-devel-64bit Prefer: -libSDL_net-devel-32bit Prefer: -libSDL_sound-devel-32bit Prefer: -libSDL_ttf-devel-32bit -libSDL_ttf-devel-64bit Prefer: -libSDLmm-devel-32bit Prefer: -libSM-devel-32bit Prefer: -libX11-devel-32bit Prefer: -libXau-devel-32bit Prefer: -libXaw-devel-32bit Prefer: -libXaw3d-devel-32bit Prefer: -libXcomposite-devel-32bit Prefer: -libXcursor-devel-32bit Prefer: -libXdamage-devel-32bit Prefer: -libXdmcp-devel-32bit Prefer: -libXevie-devel-32bit Prefer: -libXext-devel-32bit Prefer: -libXfixes-devel-32bit Prefer: -libXfont-devel-32bit Prefer: -libXfont2-devel-32bit Prefer: -libXfontcache-devel-32bit Prefer: -libXft-devel-32bit Prefer: -libXi-devel-32bit Prefer: -libXinerama-devel-32bit Prefer: -libXmu-devel-32bit Prefer: -libXp-devel-32bit Prefer: -libXpm-devel-32bit Prefer: -libXprintAppUtil-devel-32bit Prefer: -libXprintUtil-devel-32bit Prefer: -libXrandr-devel-32bit Prefer: -libXrender-devel-32bit Prefer: -libXres-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: -libXxf86vm-devel-32bit Prefer: -libacl-devel-32bit Prefer: -libadns-devel-32bit Prefer: -libaio-devel-32bit Prefer: -libart_lgpl-devel-32bit Prefer: -libattr-devel-32bit Prefer: -libavc1394-devel-32bit Prefer: -libbasicobjects-devel-32bit Prefer: -libblkid-devel-32bit Prefer: -libbotan-devel-32bit Prefer: -libbz2-devel-32bit Prefer: -libcelt-devel-32bit Prefer: -libcmocka-devel-32bit Prefer: -libcollection-devel-32bit Prefer: -libcom_err-devel-32bit Prefer: -libcrystalhd-devel-32bit Prefer: -libcurl-devel-32bit Prefer: -libdb-4_8-devel-32bit Prefer: -libdbi-devel-32bit Prefer: -libdbusmenu-qt5-devel-32bit Prefer: -libdhash-devel-32bit Prefer: -libdmx-devel-32bit Prefer: -libdrm-devel-32bit Prefer: -libdwarves-devel-32bit Prefer: -libeditorconfig-devel-32bit Prefer: -libelf-devel-32bit Prefer: -libexif-devel-32bit Prefer: -libexpat-devel-32bit Prefer: -libext2fs-devel-32bit Prefer: -libfabric-devel-32bit Prefer: -libfdisk-devel-32bit Prefer: -libfdt-devel-32bit Prefer: -libffi-devel-32bit Prefer: -libfl-devel-32bit Prefer: -libfontenc-devel-32bit Prefer: -libgbm-devel-32bit Prefer: -libgck-devel-32bit Prefer: -libgcr-devel-32bit Prefer: -libgcrypt-devel-32bit Prefer: -libglue-devel-32bit Prefer: -libglvnd-devel-32bit Prefer: -libgnutls-devel-32bit Prefer: -libgpg-error-devel-32bit Prefer: -libgphoto2-devel-32bit Prefer: -libgsm-devel-32bit Prefer: -libhts-devel-32bit Prefer: -libicu-devel-32bit Prefer: -libini_config-devel-32bit Prefer: -libjack-devel-32bit Prefer: -libjbig-devel-32bit Prefer: -libjpeg62-devel-32bit Prefer: -libjpeg8-devel-32bit Prefer: -libkdecoration2-devel-32bit Prefer: -libkms-devel-32bit Prefer: -libkscreen2-devel-32bit Prefer: -liblbxutil-devel-32bit Prefer: -liblcms2-devel-32bit Prefer: -libmount-devel-32bit Prefer: -libnetapi-devel-32bit Prefer: -libnettle-devel-32bit Prefer: -libnl3-devel-32bit Prefer: -libnotify-devel-32bit Prefer: -liboldX-devel-32bit Prefer: -libopenssl-1_0_0-devel-32bit Prefer: -libopenssl-1_1-devel-32bit Prefer: -liboping-devel-32bit Prefer: -libotf-devel-32bit Prefer: -libpackagekit-glib2-devel-32bit Prefer: -libpath_utils-devel-32bit Prefer: -libpcap-devel-32bit Prefer: -libpng12-compat-devel-32bit Prefer: -libpng12-devel-32bit Prefer: -libpng16-compat-devel-32bit Prefer: -libpng16-devel-32bit Prefer: -libpolkit-qt5-1-devel-32bit Prefer: -libpulse-devel-32bit Prefer: -libqb-devel-32bit Prefer: -libqt5-qtconnectivity-devel-32bit Prefer: -libqt5-qtdeclarative-devel-32bit Prefer: -libqt5-qtgamepad-devel-32bit Prefer: -libqt5-qtlocation-devel-32bit Prefer: -libqt5-qtmultimedia-devel-32bit Prefer: -libqt5-qtnetworkauth-devel-32bit Prefer: -libqt5-qtremoteobjects-devel-32bit Prefer: -libqt5-qtscript-devel-32bit Prefer: -libqt5-qtscxml-devel-32bit Prefer: -libqt5-qtsensors-devel-32bit Prefer: -libqt5-qtserialbus-devel-32bit Prefer: -libqt5-qtserialport-devel-32bit Prefer: -libqt5-qtspeech-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: -libraw1394-devel-32bit Prefer: -libref_array-devel-32bit Prefer: -libreiserfs-devel-32bit Prefer: -libressl-devel-32bit Prefer: -libscalapack2-mvapich2-devel-32bit Prefer: -libscalapack2-openmpi1-devel-32bit Prefer: -libscalapack2-openmpi2-devel-32bit Prefer: -libscalapack2-openmpi3-devel-32bit Prefer: -libscalapack2-openmpi4-devel-32bit Prefer: -libsmartcols-devel-32bit Prefer: -libsoup-devel-32bit Prefer: -libstatgrab-devel-32bit Prefer: -libstdc++-devel-32bit Prefer: -libtasn1-devel-32bit Prefer: -libtiff-devel-32bit Prefer: -libudev-devel-32bit Prefer: -libunistring-devel-32bit Prefer: -libusb-1_0-devel-32bit Prefer: -libuuid-devel-32bit Prefer: -libv4l-devel-32bit Prefer: -libva-devel-32bit Prefer: -libva-gl-devel-32bit Prefer: -libvdpau-devel-32bit Prefer: -libverto-devel-32bit Prefer: -libvirt-devel-32bit Prefer: -libvorbis-devel-32bit Prefer: -libvpd2-devel-32bit Prefer: -libwebp-devel-32bit Prefer: -libxcb-devel-32bit Prefer: -libxcrypt-devel-32bit Prefer: -libxkbcommon-devel-32bit Prefer: -libxkbcommon-x11-devel-32bit Prefer: -libxkbfile-devel-32bit Prefer: -libxkbui-devel-32bit Prefer: -libxml2-devel-32bit Prefer: -libxslt-devel-32bit Prefer: -libyajl-devel-32bit Prefer: -libyaz-devel-32bit Prefer: -libzstd-devel-32bit Prefer: -llvm10-LTO-devel-32bit Prefer: -llvm10-devel-32bit Prefer: -llvm7-LTO-devel-32bit Prefer: -llvm7-devel-32bit Prefer: -llvm8-LTO-devel-32bit Prefer: -llvm8-devel-32bit Prefer: -llvm9-LTO-devel-32bit Prefer: -llvm9-devel-32bit Prefer: -lzo-devel-32bit Prefer: -motif-devel-32bit Prefer: -mpc-devel-32bit Prefer: -mpfr-devel-32bit Prefer: -mpg123-devel-32bit Prefer: -munge-devel-32bit Prefer: -muparser-devel-32bit Prefer: -ncurses-devel-32bit Prefer: -ncurses5-devel-32bit Prefer: -net-snmp-devel-32bit Prefer: -ocl-icd-devel-32bit Prefer: -openal-soft-devel-32bit Prefer: -openjpeg-devel-32bit Prefer: -openldap2-devel-32bit Prefer: -opensm-devel-32bit Prefer: -pam-devel-32bit Prefer: -pango-devel-32bit Prefer: -papi-devel-32bit Prefer: -parpack-openmpi1-devel-32bit Prefer: -parpack-openmpi2-devel-32bit Prefer: -parpack-openmpi3-devel-32bit Prefer: -pciutils-devel-32bit Prefer: -phonon4qt5-devel-32bit Prefer: -pipewire-libjack-0_3-32bit Prefer: -plasma-framework-devel-32bit Prefer: -popt-devel-32bit Prefer: -prison-qt5-devel-32bit Prefer: -purpose-devel-32bit Prefer: -rdma-core-devel-32bit Prefer: -readline-devel-32bit Prefer: -readline5-devel-32bit Prefer: -readline6-devel-32bit Prefer: -sane-backends-devel-32bit Prefer: -solid-devel-32bit Prefer: -sonnet-devel-32bit Prefer: -spirv-tools-devel-32bit Prefer: -syntax-highlighting-devel-32bit Prefer: -telepathy-qt5-devel-32bit Prefer: -threadweaver-devel-32bit Prefer: -tslib-devel-32bit Prefer: -unixODBC-devel-32bit Prefer: -utempter-devel-32bit Prefer: -vkd3d-devel-32bit Prefer: -vulkan-devel-32bit Prefer: -wayland-devel-32bit Prefer: -wine-devel-32bit Prefer: -wine-staging-devel-32bit Prefer: -wxWidgets-3_0-devel-32bit Prefer: -xcb-util-cursor-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: -zziplib-devel-32bit # have choice for python3-Sphinx needed by trytond: python3-Sphinx python3-Sphinx2 Prefer: python3-Sphinx -python36-Sphinx2 -python38-Sphinx2 -python38-Sphinx2-latex -python39-Sphinx2 -python39-Sphinx2-latex # 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.7-rubygem-fast_gettext Prefer: ruby2.7-rubygem-i18n Prefer: ruby2.7-rubygem-rack Prefer: ruby2.7-rubygem-sass-rails Prefer: ruby2.7-rubygem-sassc Prefer: ruby2.7-rubygem-thor Prefer: ruby2.7-rubygem-listen ruby2.7-rubygem-mime-types ruby2.7-rubygem-builder # We have opencv and opencv3 - as usual, the unversioned one should win Prefer: opencv-devel # python3-pytest should win over the other python3-pytest variants Prefer: python3-pytest python38-pytest python36-pytest python39-pytest # There is python3-Django and python3-Django1 - as usual, we favor the unversioned one Prefer: -python3-Django1 -python36-Django1 -python38-Django1 -python39-Django1 # Help OBS over the openssl-1_1_0 -> openssl-1_1 rename; OBS keeps the -32bit lingering around # https://github.com/openSUSE/open-build-service/issues/4373 # We prefer the new name Prefer: libopenssl1_1-32bit openssl-1_1 # 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 # Java, especially Maven related bootstrap packages are never preferred: Prefer: -scala-bootstrap -scala-bootstrap-swing 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 -stringtemplate4-bootstrap # 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 # Below list still needs to be reviewed Prefer: xorg-x11-Xvnc:icewm xorg-x11-server-wayland Prefer: cracklib-dict-small Prefer: libstdc++6 libgcc_s1 libquadmath0 Prefer: libstdc++6-32bit libstdc++6-64bit Prefer: syslog-service Prefer: poppler-tools Prefer: libjpeg8-devel libjpeg-turbo Prefer: microcode_ctl:kernel-default Prefer: gnu-jaf yast2-control-center-qt Prefer: wine Prefer: ndesk-dbus ndesk-dbus-glib tomcat-jsp-2_3-api Prefer: -servletapi4 -servletapi5 Prefer: icewm-lite Prefer: monodevelop: mono-addins Prefer: texlive-xmltex texlive-tools texlive-jadetex Prefer: librest-0_7-0 Prefer: -geronimo-jta-1_0_1B-api -geronimo-jms-1_1-api -geronimo-el-1_0-api -geronimo-jta-1_1-api javamail Prefer: rhino:xmlbeans-mini Prefer: mx4j:log4j12-mini Prefer: maven-doxia-module-fo:log4j12-mini Prefer: rpcbind Prefer: boo tog-pegasus Prefer: sysvinit(network) wicked-service Prefer: ant:xerces-j2 Prefer: dhcp-client:dhcp Prefer: libGLw1 # provides typelib(St) Prefer: -cinnamon Prefer: -libreoffice -busybox-links -busybox -busybox-coreutils -busybox-grep -busybox-sed -busybox-xz -busybox-gzip -busybox-which Prefer: -icc-profiles Prefer: vala # in doubt, take higher versions Prefer: geronimo-servlet-2_4-api Prefer: libhdf5_hl100 -libhdf5-103-openmpi1 -libhdf5-103-mvapich2 -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: libvtk1-openmpi2 Prefer: -vtk-openmpi1-qt -vtk-openmpi2-qt -vtk-openmpi3-qt Prefer: -openmpi3-libs -openmpi4-libs 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: -glib2-devel-32bit -typelib-1_0-Gst-1_0-32bit Prefer: postgresql postgresql-server postgresql-devel postgresql-server-devel Prefer: postgresql13-devel-mini # only needed to bootstrap 11, but leave it - 12 will come at some point :) Prefer: -postgresql95 -postgresql95-server Prefer: -unzip-rcc Prefer: -primus -primus-32bit Prefer: -staging-build-key Prefer: -clutter-gst-devel # We have multiple versions of ffmpeg available, the preferred one is ffmpeg4, followd by 3, followed by 2 Prefer: ffmpeg-4-libavcodec-devel ffmpeg-4-libavformat-devel ffmpeg-4-libavutil-devel ffmpeg-4-libswscale-devel ffmpeg-4-libavdevice-devel # oxygen5-icon-theme osboletes oxygen-icon-theme Prefer: oxygen5-icon-theme # kernel bug (coolo) Prefer: kernel-default-devel Prefer: -wxWidgets-3_0-devel wxWidgets-3_2-devel Prefer: -libwx_baseu-suse-nostl4_0_0 -libwx_baseu-suse-nostl3_0_5 -libwx_baseu-suse3_0_5 Prefer: libopenssl-devel Prefer: -xaw3dd -amanda Prefer: libgcc_s1 libgcc_s1-32bit libgcc_s1-64bit Prefer: libffi-devel Prefer: libatomic1 libitm1 liblsan0 libtsan0 libubsan0 Prefer: libatomic1-32bit libcilkrts5-32bit libitm1-32bit libubsan0-32bit Prefer: libgomp1 libgomp1-32bit libgomp1-64bit Prefer: libobjc4 libquadmath0 Prefer: gnu-crypto libusb-compat-devel Prefer: libusb-0_1-4 Prefer: libreoffice:xerces-j2 Prefer: glibc-devel Prefer: netcdf-devel Prefer: libnetcdf18 Prefer: NetworkManager:dhcp-client Prefer: pcre-tools Prefer: libpopt0 makeinfo Prefer: -apache2-mod_perl -otrs Prefer: libgnome-keyring-devel Prefer: gnome-keyring-32bit Prefer: linux-glibc-devel Prefer: squid sysvinit Prefer: libpng16-compat-devel Prefer: -python -python3-gobject-devel -python3-gobject2-devel -libpng12-0 Prefer: python3-docutils Prefer: perl-Mail-SPF:perl-Error Prefer: -xml-commons-apis-bootstrap -xml-commons-resolver-bootstrap 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 # replacing mkinitrd Prefer: dracut # 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 -typelib-1_0-GooCanvas-2_0 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 # Prefer libsane1 over utsushi Prefer: libsane1 # libglfw3 over libglfw3-wayland Prefer: libglfw3 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: openSUSE-MicroOS-release:openSUSE-MicroOS-release-dvd,openSUSE-MicroOS-release-kubic-dvd Ignore: MicroOS-release:openSUSE-MicroOS-release-dvd,openSUSE-MicroOS-release-kubic-dvd Ignore: MicroOS-release:MicroOS-release-ftp,MicroOS-release-dvd 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: python2-pyudev:libudev1 Ignore: python3-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 # Disabled on 2019-05-13 by dimstar: pango.pc newly also requires cairo.pc #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: libgio-2_0-0:dbus-launch 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: 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: libgio-2_0-0:dbus-1 Prefer: libgio-2_0-0:dbus-1 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 # ruby aswell. # # IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT # ### And now Ruby 2.7 %rubygemsruby27() rubygem(ruby:2.7.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}} %rubygemsxruby27() %{expand:%%{rubygemsx%*}} %rubyruby27() ruby2.7 %{expand:%%rubyx%*} %{expand:%%{ruby%*}} %rubyxruby27() %{expand:%%{rubyx%*}} %rubydevelruby27() ruby2.7-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}} %rubydevelxruby27() %{expand:%%{rubydevelx%*}} ### And now Ruby 3.0 %rubygemsruby30() rubygem(ruby:3.0.0:%{expand:%%rubygemsx%*} %{expand:%%{rubygems%*}} %rubygemsxruby30() %{expand:%%{rubygemsx%*}} %rubyruby30() ruby3.0 %{expand:%%rubyx%*} %{expand:%%{ruby%*}} %rubyxruby30() %{expand:%%{rubyx%*}} %rubydevelruby30() ruby3.0-devel %{expand:%%rubydevelx%*} %{expand:%%{rubydevel%*}} %rubydevelxruby30() %{expand:%%{rubydevelx%*}} ### Things to define default ruby stuff for the distro %rb_default_ruby ruby27 %rb_default_ruby_suffix ruby2.7 %rb_default_ruby_abi ruby:2.7.0 %rb_build_ruby_abis ruby:2.7.0 ruby:3.0.0 %rb_build_versions ruby27 ruby30 :Macros Macros: %_with_ruby27 1 %_with_ruby30 1 :Macros %define _with_ruby27 1 %define _with_ruby30 1 %define rb_default_ruby ruby27 %define rb_default_ruby_suffix ruby2.7 %define rb_default_ruby_abi ruby:2.7.0 %define rb_build_ruby_abis ruby:2.7.0 ruby:3.0.0 %define rb_build_versions ruby27 ruby30 Prefer: %{rb_default_ruby_suffix}-rubygem-asciidoctor Prefer: %{rb_default_ruby_suffix}-rubygem-bundler Prefer: %{rb_default_ruby_suffix}-rubygem-cfa Prefer: %{rb_default_ruby_suffix}-rubygem-cheetah Prefer: %{rb_default_ruby_suffix}-rubygem-gem2rpm Prefer: %{rb_default_ruby_suffix}-rubygem-inifile Prefer: %{rb_default_ruby_suffix}-rubygem-mini_portile2 Prefer: %{rb_default_ruby_suffix}-rubygem-ronn Prefer: %{rb_default_ruby_suffix}-rubygem-rspec Prefer: -ruby3.0-rubygem-rspec-3_5 Prefer: %{rb_default_ruby_suffix}-rubygem-ruby-dbus Prefer: %{rb_default_ruby_suffix}-rubygem-sass Prefer: %{rb_default_ruby_suffix}-rubygem-sass-rails Prefer: %{rb_default_ruby_suffix}-rubygem-yard Prefer: %{rb_default_ruby_suffix}-rubygem-yast-rake # END RUBY STUFF # PYTHON STUFF %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:%{?!skip_python36:python36} %{?!skip_python39:python39} %{?!skip_python38:python38}} %add_python() %{expand:%%define pythons %1 %pythons} %_without_python2 1 # prjconf definitions for python-rpm-macros # This method for generating python_modules gets too deep to expand for rpm at about 5 python flavors. # Hence, python_module_iter is replaced by python_module_lua in macros.lua. # However, OBS cannot expand lua, but has a much higher expansion depth, so this works fine for the server side resolver. %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 %{**}} ## PYTHON MACROS END :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-devel java-11-openjdk java-11-openjdk-headless java-11-openjdk-javadoc %ifarch s390x Prefer: java-1_8_0-openj9-devel java-1_8_0-openj9 java-1_8_0-openj9-headless %endif Prefer: java-1_8_0-openjdk-devel java-1_8_0-openjdk java-1_8_0-openjdk-headless java-1_8_0-openjdk-javadoc Prefer: java-15-openjdk-devel java-15-openjdk java-15-openjdk-headless java-15-openjdk-javadoc Prefer: java-14-openjdk-devel java-14-openjdk java-14-openjdk-headless java-14-openjdk-javadoc Prefer: java-1_7_0-bootstrap-devel java-1_7_0-bootstrap java-1_7_0-bootstrap-headless %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 Optflags: i686 -march=i686 -mtune=generic -fomit-frame-pointer Optflags: x86_64 Optflags: ppc Optflags: ppc64 Optflags: ia64 Optflags: s390 Optflags: s390 Optflags: armv7l Optflags: armv7hl Optflags: armv6l Optflags: armv6hl Optflags: aarch64 -mbranch-protection=standard Optflags: ppc64le # need mcpu=ultrasparc to complete sparcv8plus to sparcv9 (adds, for example, atomic ops) Optflags: sparcv9 -mcpu=ultrasparc Optflags: sparc64 -mcpu=ultrasparc %ifarch sparcv9 Target: sparcv9 %endif %ifarch armv6l armv6hl Target: armv6hl-suse-linux %endif %ifarch armv7l armv7hl Target: armv7hl-suse-linux %endif %ifnarch ppc64 Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type %%{?_lto_cflags} %else Optflags: * -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type %endif # 15.5 does not exist ! %define suse_version 1550 %define is_opensuse 1 %define skelcd_compat 0 Macros: %suse_version 1550 %is_opensuse 1 %skelcd_compat 0 # trim binary changelogs back to Jan 01 2018 # maxnum,cuttime,minnum # 2018/01/01 %_binarychangelogtrim 0,1514764800,10 # %_changelog_trimtime 1514764800 %build_ldflags %{?_lto_cflags} %insserv_prereq insserv sed %fillup_prereq fillup /usr/bin/mkdir /usr/bin/touch %suseconfig_fonts_prereq perl aaa_base # I can't just not define it, as otherwise all specs using it break: [ 25s] error: line 27: Empty tag: Requires(post): %install_info_prereq /bin/sh %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 # clamp_mtime_to_source_date_epoch Y # define which gcc package builds the system libraries %product_libs_gcc_ver 11 # 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 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 %gcc_version 10 %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