diff --git a/ALP-release.spec.in b/ALP-release.spec.in index 8d212f0..097d9bb 100644 --- a/ALP-release.spec.in +++ b/ALP-release.spec.in @@ -16,32 +16,32 @@ # -Name: ALP-release +%define product ___PRODUCT_NAME___ +%define betaversion ___BETA_VERSION___%{nil} +%define codename %{nil} +Name: ___PACKAGE_NAME___ Version: ___VERSION___ Release: 0 +# ___RELEASE___ is the product release, not the build release of this package Summary: ___SUMMARY___ ___BETA_VERSION___ License: GPL-2.0-or-later Group: System/Fhs Source100: weakremovers.inc +BuildRequires: skelcd-control-ALP BuildRequires: skelcd-openSUSE -# Make sure we are at SLES12 SP2 level -PreReq: glibc >= 2.19 -# in rare cases, 'ln' is not found... -Requires(post): coreutils Suggests: branding-openSUSE Suggests: distribution-logos-openSUSE-ALP +Suggests: java-11-openjdk +Suggests: mariadb +Suggests: mariadb-client Suggests: openSUSE-build-key +Suggests: openssl-1_1 +Conflicts: core-release <= 10 Conflicts: distribution-release -Conflicts: kernel < 4.4 Provides: distribution-release # ALP is a SUSE Linux type distribution Provides: suse-release = %{version}-%{release} Provides: suse-release-oss = %{version}-%{release} -# ALP-release replaces Tumbleweed-Kubic-release -Provides: openSUSE-Tumbleweed-Kubic-release -Obsoletes: openSUSE-Tumbleweed-Kubic-release <= 20190324 -Provides: openSUSE-ALP-release = %{version} -Obsoletes: openSUSE-ALP-release <= %{version} # Build using microos patterns Provides: MicroOS-release Obsoletes: MicroOS-release @@ -50,135 +50,11 @@ Provides: product-update() = dup # With more than one product in the FTP tree, yast needs to know which products are installable # The name is referenced by the control file as well Provides: system-installation() = ALP -# 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) + # this package should only be available for the "basearchs" of a product ExclusiveArch: %ix86 x86_64 ppc64le s390x aarch64 %arm %include %{SOURCE100} ___PRODUCT_PROVIDES___ -___PRODUCT_DEPENDENCIES___ %description ___DESCRIPTION___ @@ -186,23 +62,22 @@ ___DESCRIPTION___ ___FLAVOR_PACKAGES___ %prep +%setup -qcT +mkdir license +if [ -f /CD1/license.tar.gz ]; then + tar -C license -xzf /CD1/license.tar.gz +elif [ -f %{_prefix}/lib/skelcd/CD1/license.tar.gz ]; then + tar -C license -xzf %{_prefix}/lib/skelcd/CD1/license.tar.gz +fi %build %install -mkdir -p %{buildroot}%{_sysconfdir} -mkdir -p %{buildroot}%{_prefix}/lib/issue.d -echo -e "\nWelcome to ___SUMMARY___ (%{_target_cpu}) - Kernel \\\r (\\\l).\n" > %{buildroot}%{_prefix}/lib/issue.d/10-OS -echo -e "\n" > %{buildroot}%{_prefix}/lib/issue.d/90-OS +mkdir -p %{buildroot}%{_sysconfdir} %{buildroot}%{_prefix}/lib/issue.d %{buildroot}/run -# Put EULA into correct place -mkdir -p %{buildroot}/%{_sysconfdir}/YaST2/licenses/base -cd %{buildroot}/%{_sysconfdir}/YaST2/licenses/base -if [ -f /CD1/license.tar.gz ]; then - tar -xzf /CD1/license.tar.gz -elif [ -f %{_prefix}/lib/skelcd/CD1/license.tar.gz ]; then - tar -xzf %{_prefix}/lib/skelcd/CD1/license.tar.gz -fi +echo -e 'Welcome to %{product} %{codename} %{version}%{?betaversion: %{betaversion}} - Kernel \\r (\\l).\n' > %{buildroot}%{_prefix}/lib/issue.d/10-ALP.conf +echo -e "\n" > %{buildroot}%{_prefix}/lib/issue.d/90-ALP.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 @@ -223,34 +98,63 @@ LOGO="distributor-logo" EOF ln -s ..%{_prefix}/lib/os-release %{buildroot}%{_sysconfdir}/os-release +mkdir -p %{buildroot}%{_prefix}/lib/motd.d/ +echo "Have a lot of fun..." > %{buildroot}%{_prefix}/lib/motd.d/welcome +# 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 %{_prefix}/lib/skelcd/CD1/control.xml ]; then + install -m 644 %{_prefix}/lib/skelcd/CD1/control.xml %{buildroot}%{_sysconfdir}/YaST2/ +fi + +# enable vendor change openSUSE,SUSE for DUP from 15.3 to TW (boo#1198332) +mkdir -p %{buildroot}%{_sysconfdir}/zypp/vendors.d +echo -e "[main]\nvendors=openSUSE,SUSE,SUSE LLC \n" > %{buildroot}%{_sysconfdir}/zypp/vendors.d/00-openSUSE.conf + + +# 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 + ___CREATE_PRODUCT_FILES___ +# this is a base product, create symlink +ln -s ALP.prod %{buildroot}%{_sysconfdir}/products.d/baseproduct -%post -# Update from openSUSE-Tumbleweed-Kubic to openSUSE-ALP -# Fix the baseproduct symlink and make sure, it exists -if [ -L %{_sysconfdir}/products.d/baseproduct ] ; then - PRODLINK=$(basename $(readlink -f %{_sysconfdir}/products.d/baseproduct)) - if [ "$PRODLINK" = "openSUSE-Tumbleweed-Kubic.prod" -o "$PRODLINK" = "openSUSE-ALP.prod" ]; then - rm -f %{_sysconfdir}/products.d/baseproduct +%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 -fi -if [ ! -e %{_sysconfdir}/products.d/baseproduct ]; then - ln -sf ALP.prod %{_sysconfdir}/products.d/baseproduct + %{_sbindir}/issue-generator || : fi %files %defattr(644,root,root,755) +%dir %_defaultlicensedir/product +%_defaultlicensedir/product/base +%license license/* %{_sysconfdir}/os-release %{_prefix}/lib/os-release -%dir %{_sysconfdir}/products.d -%{_sysconfdir}/products.d/* +# Bug 404141 - /etc/YaST/control.xml should be owned by some package %dir %{_sysconfdir}/YaST2/ -%dir %{_sysconfdir}/YaST2/licenses/ -%dir %{_sysconfdir}/YaST2/licenses/base/ -# no %doc here, or we will not install them -%{_sysconfdir}/YaST2/licenses/base/license*txt -%{_sysconfdir}/YaST2/licenses/base/no-acceptance-needed -%dir %{_prefix}/lib/issue.d -%{_prefix}/lib/issue.d/*-OS +%config %{_sysconfdir}/YaST2/control.xml +%dir %{_sysconfdir}/zypp +%dir %{_sysconfdir}/zypp/vendors.d +%config %{_sysconfdir}/zypp/vendors.d/00-openSUSE.conf +%{_prefix}/lib/motd.d/welcome +%dir %{_prefix}/lib/issue.d/ +%{_prefix}/lib/issue.d/10-ALP.conf +%{_prefix}/lib/issue.d/90-ALP.conf +%config(noreplace) %{_sysconfdir}/issue.net +%{_sysconfdir}/products.d %changelog diff --git a/ALP.product.in b/ALP.product.in index f7dd47d..ef2e911 100644 --- a/ALP.product.in +++ b/ALP.product.in @@ -19,11 +19,14 @@ en_US - + http://download.opensuse.org/repositories/devel:/LEO:/standard/ + + ALP diff --git a/groups.yml b/groups.yml index 055108f..d8912c2 100644 --- a/groups.yml +++ b/groups.yml @@ -48,3 +48,4 @@ opensuse_microos: - u-boot-rpiarm64: [aarch64] # bsc 1130015, jsc SLE-7276 / bsc 1164080 - u-boot-rpiarm64-doc: [aarch64] # jsc SLE-7276 / bsc 1164080 - kdump # needed by yast when the option to enable it is selected + - k3s-install