forked from pool/000product
1fe30380d3
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/000product?expand=0&rev=788
173 lines
6.4 KiB
RPMSpec
173 lines
6.4 KiB
RPMSpec
#
|
|
# spec file for package openSUSE
|
|
#
|
|
# 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 ___PRODUCT_NAME___
|
|
#define betaversion ___BETA_VERSION___%{nil}
|
|
%define codename Tumbleweed
|
|
Name: ___PACKAGE_NAME___
|
|
Version: ___VERSION___
|
|
Release: 0
|
|
# ___RELEASE___ is the product release, not the build release of this package
|
|
Summary: ___SUMMARY___
|
|
License: BSD-3-Clause
|
|
Group: System/Fhs
|
|
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
|
|
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}) < ___VERSION___
|
|
# 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
|
|
___PRODUCT_PROVIDES___
|
|
___OBSOLETE_PACKAGES___
|
|
|
|
%description
|
|
___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 %{_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 <<EOF
|
|
NAME="openSUSE Tumbleweed"
|
|
# VERSION="%{version}%{?betaversion: %{betaversion}}"
|
|
ID="opensuse-tumbleweed"
|
|
ID_LIKE="opensuse suse"
|
|
VERSION_ID="$VERSION_ID"
|
|
PRETTY_NAME="openSUSE Tumbleweed"
|
|
ANSI_COLOR="0;32"
|
|
CPE_NAME="cpe:/o:opensuse:tumbleweed:%{version}"
|
|
BUG_REPORT_URL="https://bugs.opensuse.org"
|
|
HOME_URL="https://www.opensuse.org/"
|
|
EOF
|
|
ln -s ..%{_libexecdir}/os-release %{buildroot}%{_sysconfdir}/os-release
|
|
|
|
echo "Have a lot of fun..." > %{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}%{_sysconfdir}/YaST2/licenses/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}%{_sysconfdir}/YaST2/licenses/base/$i
|
|
done
|
|
|
|
___CREATE_PRODUCT_FILES___
|
|
# 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 %{_sysconfdir}/YaST2/licenses
|
|
%{_sysconfdir}/YaST2/licenses/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
|