File SLES-release.spec of Package 000release-packages

#
# spec file for package SLES
#
# Copyright (c) 2018 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 http://bugs.opensuse.org/
#


Name:           sles-release
Summary:        SUSE Linux Enterprise Server 15 
License:        MIT
Group:          System/Fhs
Version:        15
Release:        0
BuildRequires:  skelcd-EULA-sles
Recommends:     branding
# in rare cases, 'ln' is not found...
Requires(post): coreutils
Recommends:     issue-generator
# bsc#1078737#c7
Recommends:     release-notes-sles
Recommends:     (yast2-vm if patterns-yast-yast2_basis)
Provides:       distribution-release
Provides:       product(SUSE_SLE) = %{version}-%{release}
Provides:       product(SUSE_SLE-SP0) = %{version}-%{release}

# used by yast to show where the product will be shown during installation.
# lowest number will be top-most
Provides:       displayorder(200)

# bsc#1055299
Conflicts:      otherproviders(distribution-release)

# bsc#1049164
Obsoletes:      leanos-release

#bsc#1071720
Obsoletes:      sles-release-DVD  < 15
Obsoletes:      sles-release-MINI < 15
Obsoletes:      sles-release-POOL < 15

#bsc#1089031 migration from Leap 15 to SLES 15
Obsoletes:	openSUSE-release <= 15.0
Obsoletes:	product:openSUSE <= 15.0
Obsoletes:	openSUSE-release-dvd <= 15.0
Obsoletes:	openSUSE-release-appliance-custom <= 15.0

Provides:       %name-%version
Provides:       product() = SLES
Provides:       product(SLES) = 15-0
%ifarch x86_64
Provides:       product-register-target() = sle%2D15%2Dx86_64
%endif
%ifarch s390x
Provides:       product-register-target() = sle%2D15%2Ds390x
%endif
%ifarch ppc64le
Provides:       product-register-target() = sle%2D15%2Dppc64le
%endif
%ifarch aarch64
Provides:       product-register-target() = sle%2D15%2Daarch64
%endif
Provides:       product-label() = SLES15
Provides:       product-cpeid() = cpe%3A%2Fo%3Asuse%3Asles%3A15
Provides:       product-url(releasenotes) = https%3A%2F%2Fwww.suse.com%2Freleasenotes%2F%{_target_cpu}%2FSUSE%2DSLES%2F15%2Frelease%2Dnotes%2Dsles.rpm
%ifarch x86_64
Provides:       product-updates-repoid() = obsrepository%3A%2F%2Fbuild.suse.de%2FSUSE%3AUpdates%3ASLE%2DProduct%2DSLES%3A15%3Ax86_64%2Fupdate
%endif
%ifarch s390x
Provides:       product-updates-repoid() = obsrepository%3A%2F%2Fbuild.suse.de%2FSUSE%3AUpdates%3ASLE%2DProduct%2DSLES%3A15%3As390x%2Fupdate
%endif
%ifarch ppc64le
Provides:       product-updates-repoid() = obsrepository%3A%2F%2Fbuild.suse.de%2FSUSE%3AUpdates%3ASLE%2DProduct%2DSLES%3A15%3Appc64le%2Fupdate
%endif
%ifarch aarch64
Provides:       product-updates-repoid() = obsrepository%3A%2F%2Fbuild.suse.de%2FSUSE%3AUpdates%3ASLE%2DProduct%2DSLES%3A15%3Aaarch64%2Fupdate
%endif
%ifarch x86_64
Provides:       product-updates-repoid() = obsrepository%3A%2F%2Fbuild.suse.de%2FSUSE%3AUpdates%3ASLE%2DProduct%2DSLES%3A15%3Ax86_64%2Fupdate_debug
%endif
%ifarch s390x
Provides:       product-updates-repoid() = obsrepository%3A%2F%2Fbuild.suse.de%2FSUSE%3AUpdates%3ASLE%2DProduct%2DSLES%3A15%3As390x%2Fupdate_debug
%endif
%ifarch ppc64le
Provides:       product-updates-repoid() = obsrepository%3A%2F%2Fbuild.suse.de%2FSUSE%3AUpdates%3ASLE%2DProduct%2DSLES%3A15%3Appc64le%2Fupdate_debug
%endif
%ifarch aarch64
Provides:       product-updates-repoid() = obsrepository%3A%2F%2Fbuild.suse.de%2FSUSE%3AUpdates%3ASLE%2DProduct%2DSLES%3A15%3Aaarch64%2Fupdate_debug
%endif
%ifarch x86_64
Provides:       product-updates-repoid() = obsrepository%3A%2F%2Fbuild.suse.de%2FSUSE%3AUpdates%3ASLE%2DINSTALLER%3A15%3Ax86_64%2Fupdate
%endif
%ifarch s390x
Provides:       product-updates-repoid() = obsrepository%3A%2F%2Fbuild.suse.de%2FSUSE%3AUpdates%3ASLE%2DINSTALLER%3A15%3As390x%2Fupdate
%endif
%ifarch ppc64le
Provides:       product-updates-repoid() = obsrepository%3A%2F%2Fbuild.suse.de%2FSUSE%3AUpdates%3ASLE%2DINSTALLER%3A15%3Appc64le%2Fupdate
%endif
%ifarch aarch64
Provides:       product-updates-repoid() = obsrepository%3A%2F%2Fbuild.suse.de%2FSUSE%3AUpdates%3ASLE%2DINSTALLER%3A15%3Aaarch64%2Fupdate
%endif
Provides:       product-endoflife()


Provides:       product(SUSE_SLE) = 15
Provides:       product(SUSE_SLE-SP0) = 15


# Make sure we are at SLES15 level
# TBD
PreReq:         glibc >= 2.22
Conflicts:      kernel < 4.4
Conflicts:      perl-Bootloader < 0.904

# old package obsoletes removed. If we support 11 SP4 migration to 15, we may
# need to re-add some.

# ./.

BuildRoot:      %{_tmppath}/%{name}-%{version}-build
# this package should only be available for the "basearchs" of a product
# i586 added as installation-images-SLES reequires it.
ExclusiveArch:  i586 x86_64 ppc64le s390x aarch64

Source100:      weakremovers.inc
%include %{SOURCE100}

%description
SUSE Linux Enterprise offers a comprehensive
        suite of products built on a single code base.
        The platform addresses business needs from
        the smallest thin-client devices to the world's
        most powerful high-performance computing
        and mainframe servers. SUSE Linux Enterprise
        offers common management tools and technology
        certifications across the platform, and
        each product is enterprise-class.




%prep

%build

%install
mkdir -p $RPM_BUILD_ROOT/etc
mkdir -p $RPM_BUILD_ROOT/usr/lib/issue.d

# Create set-up for issue-generator
echo -e "\nWelcome to SUSE Linux Enterprise Server 15  (%{_target_cpu}) - Kernel \\\r (\\\l).\n" > $RPM_BUILD_ROOT/usr/lib/issue.d/10-SUSE
echo -e "\n" >  $RPM_BUILD_ROOT/usr/lib/issue.d/90-SUSE

# create /etc/SuSE-release - deprecated, FATE#316268
# no longer build, in case you wonder

touch $RPM_BUILD_ROOT/etc/motd

# Setup rpm macros
mkdir -p $RPM_BUILD_ROOT/etc/rpm/
echo "#" > $RPM_BUILD_ROOT/etc/rpm/macros.sle
echo "# RPM macros to identify SLE distribution" >> $RPM_BUILD_ROOT/etc/rpm/macros.sle
echo "#" >> $RPM_BUILD_ROOT/etc/rpm/macros.sle
echo "#==================================================" >> $RPM_BUILD_ROOT/etc/rpm/macros.sle
echo "" >> $RPM_BUILD_ROOT/etc/rpm/macros.sle
echo "%%sle_version %sle_version" >> $RPM_BUILD_ROOT/etc/rpm/macros.sle

# Put EULA into correct place
mkdir -p $RPM_BUILD_ROOT//etc/YaST2/licenses/SLES
cd $RPM_BUILD_ROOT//etc/YaST2/licenses/SLES
tar -xf /usr/lib/skelcd/CD1/license-SLES.tar.gz  # --overwrite
echo "directory.yast" > directory.yast
ls lic* > directory.yast

mkdir -p $RPM_BUILD_ROOT/etc
cat >$RPM_BUILD_ROOT/etc/os-release << EOF
NAME="SLES"
VERSION="15%{?betaversion: }%{?betaversion}"
VERSION_ID="%{version}%{?betaversion?: }%{?betaversion}"
PRETTY_NAME="SUSE Linux Enterprise Server 15"
ID="sles"
ID_LIKE="suse"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:suse:sles:15"
EOF


mkdir -p $RPM_BUILD_ROOT/etc/products.d
cat >$RPM_BUILD_ROOT/etc/products.d/SLES.prod << EOF
<?xml version="1.0" encoding="UTF-8"?>
<product schemeversion="0">
  <vendor>SUSE</vendor>
  <name>SLES</name>
  <version>15</version>
  <baseversion>15</baseversion>
  <patchlevel>0</patchlevel>
  <release>0</release>
  <endoflife></endoflife>
  <arch>%{_target_cpu}</arch>
  <cpeid>cpe:/o:suse:sles:15</cpeid>
  <productline>sles</productline>
  <codestream>
    <name>SUSE Linux Enterprise Server 15</name>
    <endoflife>2028-07-31</endoflife>
  </codestream>
  <register>
%ifarch x86_64
      <target>sle-15-x86_64</target>
%endif
%ifarch s390x
      <target>sle-15-s390x</target>
%endif
%ifarch ppc64le
      <target>sle-15-ppc64le</target>
%endif
%ifarch aarch64
      <target>sle-15-aarch64</target>
%endif
  </register>
  <repositories>
%ifarch x86_64
      <repository type="update" repoid="obsrepository://build.suse.de/SUSE:Updates:SLE-Product-SLES:15:x86_64/update" />
%endif
%ifarch s390x
      <repository type="update" repoid="obsrepository://build.suse.de/SUSE:Updates:SLE-Product-SLES:15:s390x/update" />
%endif
%ifarch ppc64le
      <repository type="update" repoid="obsrepository://build.suse.de/SUSE:Updates:SLE-Product-SLES:15:ppc64le/update" />
%endif
%ifarch aarch64
      <repository type="update" repoid="obsrepository://build.suse.de/SUSE:Updates:SLE-Product-SLES:15:aarch64/update" />
%endif
%ifarch x86_64
      <repository type="update" repoid="obsrepository://build.suse.de/SUSE:Updates:SLE-Product-SLES:15:x86_64/update_debug" />
%endif
%ifarch s390x
      <repository type="update" repoid="obsrepository://build.suse.de/SUSE:Updates:SLE-Product-SLES:15:s390x/update_debug" />
%endif
%ifarch ppc64le
      <repository type="update" repoid="obsrepository://build.suse.de/SUSE:Updates:SLE-Product-SLES:15:ppc64le/update_debug" />
%endif
%ifarch aarch64
      <repository type="update" repoid="obsrepository://build.suse.de/SUSE:Updates:SLE-Product-SLES:15:aarch64/update_debug" />
%endif
%ifarch x86_64
      <repository type="update" repoid="obsrepository://build.suse.de/SUSE:Updates:SLE-INSTALLER:15:x86_64/update" />
%endif
%ifarch s390x
      <repository type="update" repoid="obsrepository://build.suse.de/SUSE:Updates:SLE-INSTALLER:15:s390x/update" />
%endif
%ifarch ppc64le
      <repository type="update" repoid="obsrepository://build.suse.de/SUSE:Updates:SLE-INSTALLER:15:ppc64le/update" />
%endif
%ifarch aarch64
      <repository type="update" repoid="obsrepository://build.suse.de/SUSE:Updates:SLE-INSTALLER:15:aarch64/update" />
%endif
%ifarch x86_64
      <repository type="pool" repoid="obsrepository://build.suse.de/SUSE:Products:SLE-Product-SLES:15:x86_64/images" />
%endif
%ifarch s390x
      <repository type="pool" repoid="obsrepository://build.suse.de/SUSE:Products:SLE-Product-SLES:15:s390x/images" />
%endif
%ifarch ppc64le
      <repository type="pool" repoid="obsrepository://build.suse.de/SUSE:Products:SLE-Product-SLES:15:ppc64le/images" />
%endif
%ifarch aarch64
      <repository type="pool" repoid="obsrepository://build.suse.de/SUSE:Products:SLE-Product-SLES:15:aarch64/images" />
%endif
%ifarch x86_64
      <repository type="pool" repoid="obsrepository://build.suse.de/SUSE:Products:SLE-Product-SLES:15:x86_64/images" />
%endif
%ifarch s390x
      <repository type="pool" repoid="obsrepository://build.suse.de/SUSE:Products:SLE-Product-SLES:15:s390x/images" />
%endif
%ifarch ppc64le
      <repository type="pool" repoid="obsrepository://build.suse.de/SUSE:Products:SLE-Product-SLES:15:ppc64le/images" />
%endif
%ifarch aarch64
      <repository type="pool" repoid="obsrepository://build.suse.de/SUSE:Products:SLE-Product-SLES:15:aarch64/images" />
%endif
%ifarch x86_64
      <repository type="pool" repoid="obsrepository://build.suse.de/SUSE:Products:SLE-Product-SLES:15:x86_64/images" />
%endif
%ifarch s390x
      <repository type="pool" repoid="obsrepository://build.suse.de/SUSE:Products:SLE-Product-SLES:15:s390x/images" />
%endif
%ifarch ppc64le
      <repository type="pool" repoid="obsrepository://build.suse.de/SUSE:Products:SLE-Product-SLES:15:ppc64le/images" />
%endif
%ifarch aarch64
      <repository type="pool" repoid="obsrepository://build.suse.de/SUSE:Products:SLE-Product-SLES:15:aarch64/images" />
%endif
  </repositories>
  <upgrades/>
  <summary>SUSE Linux Enterprise Server 15</summary>
  <shortsummary>SLES15</shortsummary>
  <description>SUSE Linux Enterprise offers a comprehensive
        suite of products built on a single code base.
        The platform addresses business needs from
        the smallest thin-client devices to the world's
        most powerful high-performance computing
        and mainframe servers. SUSE Linux Enterprise
        offers common management tools and technology
        certifications across the platform, and
        each product is enterprise-class.</description>
  <linguas>
    <language>cs</language>
    <language>da</language>
    <language>de</language>
    <language>en</language>
    <language>en_GB</language>
    <language>en_US</language>
    <language>es</language>
    <language>fi</language>
    <language>fr</language>
    <language>hu</language>
    <language>it</language>
    <language>ja</language>
    <language>nb</language>
    <language>nl</language>
    <language>pl</language>
    <language>pt</language>
    <language>pt_BR</language>
    <language>ru</language>
    <language>sv</language>
    <language>zh</language>
    <language>zh_CN</language>
    <language>zh_TW</language>
  </linguas>
  <urls>
    <url name="releasenotes">https://www.suse.com/releasenotes/%{_target_cpu}/SUSE-SLES/15/release-notes-sles.rpm</url>
  </urls>
  <buildconfig>
    <producttheme>SLES</producttheme>
  </buildconfig>
  <installconfig>
    <defaultlang>en_US</defaultlang>
    <releasepackage name="%{name}" flag="EQ" version="%{version}" release="%{release}"/>
    <distribution>SUSE_SLE</distribution>
  </installconfig>
  <runtimeconfig/>
  <productdependency relationship="provides" name="SUSE_SLE" baseversion="15" patchlevel="0" flag="EQ"/>
  <productdependency relationship="provides" name="SUSE_SLE-SP0" baseversion="15" patchlevel="0" flag="EQ"/>
</product>

EOF



%post
if [ -L /etc/products.d/baseproduct ] ; then
    PRODLINK=`readlink -f /etc/products.d/baseproduct`
    PRODLINK=`basename $PRODLINK`
    # bsc#1091952
    if [ $PRODLINK  == "SUSE_SLES.prod" -o $PRODLINK == "openSUSE.prod" ]; then
      ln -sf SLES.prod /etc/products.d/baseproduct
    fi
    # bsc#1057321
elif [ ! -e /etc/products.d/baseproduct ]; then
    ln -sf SLES.prod /etc/products.d/baseproduct
fi

# TBD: Verify that this is still needed for SLE 15..
# bsc#942519: remove hardcoded default valuex
if [ -f /etc/default/grub ] ; then
    sed -i -e 's|GRUB_DISTRIBUTOR=SLES12|GRUB_DISTRIBUTOR=|g' /etc/default/grub ||:
fi
# Put EULA into correct place
if [ ! -e /etc/YaST2/licenses/base ] ; then
          ln -sf SLES /etc/YaST2/licenses/base
fi


%files
%defattr(644,root,root,755)
%config /etc/os-release
%dir /etc/products.d
%ghost /etc/products.d/baseproduct
/etc/products.d/*
%dir /etc/YaST2/
%config /etc/rpm/macros.sle
%config(noreplace) /etc/motd
%dir /etc/YaST2/licenses/
%dir /etc/YaST2/licenses/SLES/
%dir /usr/lib/issue.d/
/usr/lib/issue.d/*-SUSE
/etc/YaST2/licenses/SLES/license*txt
/etc/YaST2/licenses/SLES/directory.yast

%changelog
openSUSE Build Service is sponsored by