# # spec file for package openSUSE-release.spec # # Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # %define product openSUSE #define betaversion %{nil} %define codename Tumbleweed Name: openSUSE-release Version: 20190419 Release: 0 # 0 is the product release, not the build release of this package Summary: openSUSE Tumbleweed License: BSD-3-Clause Group: System/Fhs Source100: weakremovers.inc BuildRequires: skelcd-control-openSUSE BuildRequires: skelcd-openSUSE # /etc/issue is no longer a default file, but is auto-generated at bootup Requires: issue-generator #PreReq: coreutils # the post scriptlets uses awk, boo#976913 Requires(post): awk Requires(post): issue-generator Recommends: branding-openSUSE Recommends: distribution-logos-openSUSE-Tumbleweed Suggests: java-11-openjdk Suggests: mariadb Suggests: mariadb-client Conflicts: core-release <= 10 Conflicts: distribution-release Conflicts: sled-release <= 10 Conflicts: sles-release <= 10 Provides: aaa_version Provides: distribution-release Provides: suse-release = %{version}-%{release} Provides: suse-release-oss = %{version}-%{release} # Give zypp a hint that this product must be kept up-to-date using zypper dup, not up (boo#1061384) Provides: product-update() = dup # Since we have more than one product in the FTP tree, we need to give yast a hint Provides: system-installation() = openSUSE Obsoletes: aaa_version Obsoletes: openSUSE-Promo-release <= 11.1 Obsoletes: openSUSE-release-live <= 11.0 Obsoletes: product_flavor(%{product}) < 20190419 # bnc#826592 Provides: weakremover(kernel-default) < 3.11 Provides: weakremover(kernel-desktop) < 4.2 Provides: weakremover(kernel-ec2) < 3.11 Provides: weakremover(kernel-pae) < 3.11 Provides: weakremover(kernel-vanilla) < 3.11 Provides: weakremover(kernel-xen) < 3.11 # migrated from MANUAL_OBSOLETES/packages Provides: weakremover(boost-license1_56_0) Provides: weakremover(boost-license1_59_0) Provides: weakremover(gpg-pubkey-3d25d3d9-36e12d04) Provides: weakremover(lib++dfb-1_7-6) Provides: weakremover(libastro-qt5-1) Provides: weakremover(libboost_atomic1_59_0) Provides: weakremover(libboost_atomic1_60_0) Provides: weakremover(libboost_atomic1_62_0) Provides: weakremover(libboost_atomic1_63_0) Provides: weakremover(libboost_chrono1_59_0) Provides: weakremover(libboost_chrono1_60_0) Provides: weakremover(libboost_chrono1_62_0) Provides: weakremover(libboost_chrono1_63_0) Provides: weakremover(libboost_container1_59_0) Provides: weakremover(libboost_container1_60_0) Provides: weakremover(libboost_container1_62_0) Provides: weakremover(libboost_container1_63_0) Provides: weakremover(libboost_context1_59_0) Provides: weakremover(libboost_context1_60_0) Provides: weakremover(libboost_context1_62_0) Provides: weakremover(libboost_context1_63_0) Provides: weakremover(libboost_coroutine1_59_0) Provides: weakremover(libboost_coroutine1_60_0) Provides: weakremover(libboost_coroutine1_62_0) Provides: weakremover(libboost_coroutine1_63_0) Provides: weakremover(libboost_date_time1_59_0) Provides: weakremover(libboost_date_time1_60_0) Provides: weakremover(libboost_date_time1_62_0) Provides: weakremover(libboost_date_time1_63_0) Provides: weakremover(libboost_filesystem1_59_0) Provides: weakremover(libboost_filesystem1_60_0) Provides: weakremover(libboost_filesystem1_62_0) Provides: weakremover(libboost_filesystem1_63_0) Provides: weakremover(libboost_graph1_59_0) Provides: weakremover(libboost_graph1_60_0) Provides: weakremover(libboost_graph1_62_0) Provides: weakremover(libboost_graph1_63_0) Provides: weakremover(libboost_iostreams1_59_0) Provides: weakremover(libboost_locale1_59_0) Provides: weakremover(libboost_log1_59_0) Provides: weakremover(libboost_log1_60_0) Provides: weakremover(libboost_log1_62_0) Provides: weakremover(libboost_log1_63_0) Provides: weakremover(libboost_math1_59_0) Provides: weakremover(libboost_program_options1_59_0) Provides: weakremover(libboost_python1_59_0) Provides: weakremover(libboost_random1_59_0) Provides: weakremover(libboost_regex1_59_0) Provides: weakremover(libboost_regex1_60_0) Provides: weakremover(libboost_regex1_62_0) Provides: weakremover(libboost_regex1_63_0) Provides: weakremover(libboost_serialization1_59_0) Provides: weakremover(libboost_signals1_59_0) Provides: weakremover(libboost_system1_56_0) Provides: weakremover(libboost_system1_59_0) Provides: weakremover(libboost_test1_59_0) Provides: weakremover(libboost_thread1_56_0) Provides: weakremover(libboost_thread1_59_0) Provides: weakremover(libboost_timer1_59_0) Provides: weakremover(libboost_wave1_59_0) Provides: weakremover(libcamel-1_2-54) Provides: weakremover(libdialog12) Provides: weakremover(libdirectfb-1_7-6) Provides: weakremover(libdns146) Provides: weakremover(libdns160) Provides: weakremover(libdns161) Provides: weakremover(libgdict-1_0-9) Provides: weakremover(libgit2-23) Provides: weakremover(libgpaste4) Provides: weakremover(libhdf5-11) Provides: weakremover(libhdf5_hl11) Provides: weakremover(libicu54_1) Provides: weakremover(libicu54_1-ledata) Provides: weakremover(libicu55_1) Provides: weakremover(libicu55_1-ledata) Provides: weakremover(libicu56_1) Provides: weakremover(libicu56_1-ledata) Provides: weakremover(libimobiledevice5) Provides: weakremover(libisc142) Provides: weakremover(libisc148) Provides: weakremover(libisl13) Provides: weakremover(libixion-0_10-0) Provides: weakremover(liblmdb-0_9_16) Provides: weakremover(libmicrohttpd11) Provides: weakremover(libminiupnpc15) Provides: weakremover(libnis1) Provides: weakremover(libntfs-3g86) Provides: weakremover(liborcus-0_10-0) Provides: weakremover(libpoppler47) Provides: weakremover(libpoppler48) Provides: weakremover(libpoppler49) Provides: weakremover(libpoppler50) Provides: weakremover(libpoppler51) Provides: weakremover(libpoppler52) Provides: weakremover(libpoppler53) Provides: weakremover(libpoppler54) Provides: weakremover(libpoppler55) Provides: weakremover(libpoppler56) Provides: weakremover(libpoppler57) Provides: weakremover(libpoppler58) Provides: weakremover(libpoppler59) Provides: weakremover(libpoppler61) Provides: weakremover(libpoppler62) Provides: weakremover(libpoppler63) Provides: weakremover(libpoppler64) Provides: weakremover(libpoppler65) Provides: weakremover(libprocps4) Provides: weakremover(libprocps5) Provides: weakremover(libpsl0) Provides: weakremover(libsgutils2-1_40-2) Provides: weakremover(libsgutils2-1_41-2) Provides: weakremover(libvpx2) Provides: weakremover(libxtables11) Provides: weakremover(libzip4) Provides: weakremover(mt_st) Provides: weakremover(openssl-debuginfo) %include %{SOURCE100} Provides: %name-%version Provides: product() = openSUSE Provides: product(openSUSE) = 20190419-0 %ifarch x86_64 Provides: product-register-target() = openSUSE%2DTumbleweed%2Dx86_64 %endif %ifarch s390x Provides: product-register-target() = openSUSE%2DTumbleweed%2Ds390x %endif %ifarch ppc64le Provides: product-register-target() = openSUSE%2DTumbleweed%2Dppc64le %endif %ifarch aarch64 Provides: product-register-target() = openSUSE%2DTumbleweed%2Daarch64 %endif Provides: product-label() = openSUSE Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%3A20190419 Provides: product-url(releasenotes) = http%3A%2F%2Fdoc.opensuse.org%2Frelease%2Dnotes%2Fx86_64%2FopenSUSE%2FTumbleweed%2Frelease%2Dnotes%2DopenSUSE.rpm Provides: product-url(repository) = http%3A%2F%2Fdownload.opensuse.org%2Ftumbleweed%2Frepo%2Foss%2F Requires: product_flavor(openSUSE) %description openSUSE Tumbleweed is the rolling distribution by the openSUSE.org project. %package ftp License: BSD-3-Clause Group: System/Fhs Provides: product_flavor() Provides: flavor(ftp) Provides: product_flavor(openSUSE) = 20190419-0 Summary: openSUSE Tumbleweed %description ftp openSUSE Tumbleweed is the rolling distribution by the openSUSE.org project. %files ftp %defattr(-,root,root) %doc %{_defaultdocdir}/openSUSE-release-ftp %package mini License: BSD-3-Clause Group: System/Fhs Provides: product_flavor() Provides: flavor(mini) Provides: product_flavor(openSUSE) = 20190419-0 Summary: openSUSE Tumbleweed %description mini openSUSE Tumbleweed is the rolling distribution by the openSUSE.org project. %files mini %defattr(-,root,root) %doc %{_defaultdocdir}/openSUSE-release-mini %package dvd License: BSD-3-Clause Group: System/Fhs Provides: product_flavor() Provides: flavor(dvd) Provides: product_flavor(openSUSE) = 20190419-0 Summary: openSUSE Tumbleweed %description dvd openSUSE Tumbleweed is the rolling distribution by the openSUSE.org project. %files dvd %defattr(-,root,root) %doc %{_defaultdocdir}/openSUSE-release-dvd %package livecd-kde License: BSD-3-Clause Group: System/Fhs Provides: product_flavor() Provides: flavor(livecd-kde) Provides: product_flavor(openSUSE) = 20190419-0 Summary: openSUSE Tumbleweed %description livecd-kde openSUSE Tumbleweed is the rolling distribution by the openSUSE.org project. %files livecd-kde %defattr(-,root,root) %doc %{_defaultdocdir}/openSUSE-release-livecd-kde %package livecd-x11 License: BSD-3-Clause Group: System/Fhs Provides: product_flavor() Provides: flavor(livecd-x11) Provides: product_flavor(openSUSE) = 20190419-0 Summary: openSUSE Tumbleweed %description livecd-x11 openSUSE Tumbleweed is the rolling distribution by the openSUSE.org project. %files livecd-x11 %defattr(-,root,root) %doc %{_defaultdocdir}/openSUSE-release-livecd-x11 %package livecd-gnome License: BSD-3-Clause Group: System/Fhs Provides: product_flavor() Provides: flavor(livecd-gnome) Provides: product_flavor(openSUSE) = 20190419-0 Summary: openSUSE Tumbleweed %description livecd-gnome openSUSE Tumbleweed is the rolling distribution by the openSUSE.org project. %files livecd-gnome %defattr(-,root,root) %doc %{_defaultdocdir}/openSUSE-release-livecd-gnome %package livecd-xfce License: BSD-3-Clause Group: System/Fhs Provides: product_flavor() Provides: flavor(livecd-xfce) Provides: product_flavor(openSUSE) = 20190419-0 Summary: openSUSE Tumbleweed %description livecd-xfce openSUSE Tumbleweed is the rolling distribution by the openSUSE.org project. %files livecd-xfce %defattr(-,root,root) %doc %{_defaultdocdir}/openSUSE-release-livecd-xfce %package usb-kde License: BSD-3-Clause Group: System/Fhs Provides: product_flavor() Provides: flavor(usb-kde) Provides: product_flavor(openSUSE) = 20190419-0 Summary: openSUSE Tumbleweed %description usb-kde openSUSE Tumbleweed is the rolling distribution by the openSUSE.org project. %files usb-kde %defattr(-,root,root) %doc %{_defaultdocdir}/openSUSE-release-usb-kde %package usb-gnome License: BSD-3-Clause Group: System/Fhs Provides: product_flavor() Provides: flavor(usb-gnome) Provides: product_flavor(openSUSE) = 20190419-0 Summary: openSUSE Tumbleweed %description usb-gnome openSUSE Tumbleweed is the rolling distribution by the openSUSE.org project. %files usb-gnome %defattr(-,root,root) %doc %{_defaultdocdir}/openSUSE-release-usb-gnome %package usb-x11 License: BSD-3-Clause Group: System/Fhs Provides: product_flavor() Provides: flavor(usb-x11) Provides: product_flavor(openSUSE) = 20190419-0 Summary: openSUSE Tumbleweed %description usb-x11 openSUSE Tumbleweed is the rolling distribution by the openSUSE.org project. %files usb-x11 %defattr(-,root,root) %doc %{_defaultdocdir}/openSUSE-release-usb-x11 %prep %setup -qcT mkdir license if [ -f /CD1/license.tar.gz ]; then tar -C license -xzf /CD1/license.tar.gz elif [ -f %{_libexecdir}/skelcd/CD1/license.tar.gz ]; then tar -C license -xzf %{_libexecdir}/skelcd/CD1/license.tar.gz fi %build %install mkdir -p %{buildroot}%{_sysconfdir} %{buildroot}%{_libexecdir}/issue.d %{buildroot}/run echo -e 'Welcome to %{product} %{codename} %{version}%{?betaversion: %{betaversion}} - Kernel \\r (\\l).\n' > %{buildroot}%{_libexecdir}/issue.d/10-openSUSE.conf echo -e "\n" > %{buildroot}%{_libexecdir}/issue.d/90-openSUSE.conf echo 'Welcome to %{product} %{codename} %{version}%{?betaversion: %{betaversion}} - Kernel %%r (%%t).' > %{buildroot}%{_sysconfdir}/issue.net VERSION_ID=`echo %{version}|tr '[:upper:]' '[:lower:]'|sed -e 's/ //g;'` # note: VERSION is an optional field and has no meaning other than informative on a rolling distro # We do thus not add it to the os-release file cat > %{buildroot}%{_libexecdir}/os-release < %{buildroot}%{_sysconfdir}/motd # Bug 404141 - /etc/YaST/control.xml should be owned by some package mkdir -p %{buildroot}%{_sysconfdir}/YaST2/ echo %{buildroot} if [ -f /CD1/control.xml ]; then install -m 644 /CD1/control.xml %{buildroot}%{_sysconfdir}/YaST2/ elif [ -f %{_libexecdir}/skelcd/CD1/control.xml ]; then install -m 644 %{_libexecdir}/skelcd/CD1/control.xml %{buildroot}%{_sysconfdir}/YaST2/ fi # fate#319341, make openSUSE-release own YaST license files. TODO: # get rid of /etc/YaST2/licenses install -D -d -m 755 "%{buildroot}%_defaultlicensedir/product/base" install -D -d -m 755 "%{buildroot}%_defaultlicensedir" cp -a license "%{buildroot}%_defaultlicensedir/%name" pushd license for i in *; do ln -s "%_defaultlicensedir/%name/$i" %{buildroot}%_defaultlicensedir/product/base/$i done mkdir -p $RPM_BUILD_ROOT/etc/products.d cat >$RPM_BUILD_ROOT/etc/products.d/openSUSE.prod << EOF openSUSE openSUSE 20190419 0 %{_target_cpu} cpe:/o:opensuse:opensuse:20190419 openSUSE openSUSE-Tumbleweed-x86_64 openSUSE-Tumbleweed-s390x openSUSE-Tumbleweed-ppc64le openSUSE-Tumbleweed-aarch64 000000000 openSUSE Tumbleweed openSUSE openSUSE Tumbleweed is the rolling distribution by the openSUSE.org project. cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW http://doc.opensuse.org/release-notes/x86_64/openSUSE/Tumbleweed/release-notes-openSUSE.rpm http://download.opensuse.org/tumbleweed/repo/oss/ openSUSE true en_US openSUSE EOF mkdir -p $RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-ftp cat >$RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-ftp/README << EOF This package only exists for providing the product flavor 'ftp'. EOF mkdir -p $RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-mini cat >$RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-mini/README << EOF This package only exists for providing the product flavor 'mini'. EOF mkdir -p $RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-dvd cat >$RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-dvd/README << EOF This package only exists for providing the product flavor 'dvd'. EOF mkdir -p $RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-livecd-kde cat >$RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-livecd-kde/README << EOF This package only exists for providing the product flavor 'livecd-kde'. EOF mkdir -p $RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-livecd-x11 cat >$RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-livecd-x11/README << EOF This package only exists for providing the product flavor 'livecd-x11'. EOF mkdir -p $RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-livecd-gnome cat >$RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-livecd-gnome/README << EOF This package only exists for providing the product flavor 'livecd-gnome'. EOF mkdir -p $RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-livecd-xfce cat >$RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-livecd-xfce/README << EOF This package only exists for providing the product flavor 'livecd-xfce'. EOF mkdir -p $RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-usb-kde cat >$RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-usb-kde/README << EOF This package only exists for providing the product flavor 'usb-kde'. EOF mkdir -p $RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-usb-gnome cat >$RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-usb-gnome/README << EOF This package only exists for providing the product flavor 'usb-gnome'. EOF mkdir -p $RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-usb-x11 cat >$RPM_BUILD_ROOT/%{_defaultdocdir}/openSUSE-release-usb-x11/README << EOF This package only exists for providing the product flavor 'usb-x11'. EOF # this is a base product, create symlink ln -s openSUSE.prod %{buildroot}%{_sysconfdir}/products.d/baseproduct %post # Upgrade path - if /etc/default/grub contains any of the DISTRIBUTOR= tags # we ever put, replace it with "", which means grub will use /etc/os-release to make something up if [ -f %{_sysconfdir}/default/grub ]; then DISTRIBUTOR=$(awk -F= '/^GRUB_DISTRIBUTOR/ {print $2}' %{_sysconfdir}/default/grub | tr -d '"') case "$DISTRIBUTOR" in "openSUSE" | \ "openSUSE 13.1" | \ "openSUSE 13.2") # replace GRUB_DISTRIBUTOR in %{_sysconfdir}/default/grub with "" sed -i "s/^GRUB_DISTRIBUTOR=.*/GRUB_DISTRIBUTOR=/" %{_sysconfdir}/default/grub ;; esac fi %posttrans # Launch the issue-generator: we have a new config file in /usr/lib/issue.d that needs to be represented if [ -x %{_sbindir}/issue-generator ]; then if [ -x %{_bindir}/systemd-tmpfiles ]; then %{_bindir}/systemd-tmpfiles --create issue-generator.conf || : fi %{_sbindir}/issue-generator || : fi %files %defattr(644,root,root,755) %dir %_defaultlicensedir/product %_defaultlicensedir/product/base %license license/* %{_sysconfdir}/os-release %{_libexecdir}/os-release # Bug 404141 - /etc/YaST/control.xml should be owned by some package %dir %{_sysconfdir}/YaST2/ %config %{_sysconfdir}/YaST2/control.xml %config(noreplace) %{_sysconfdir}/motd %dir %{_libexecdir}/issue.d/ %{_libexecdir}/issue.d/10-openSUSE.conf %{_libexecdir}/issue.d/90-openSUSE.conf %config(noreplace) %{_sysconfdir}/issue.net %{_sysconfdir}/products.d %changelog