yast2-installation/yast2-installation.spec

259 lines
7.2 KiB
RPMSpec
Raw Normal View History

#
# spec file for package yast2-installation
#
# Copyright (c) 2012 SUSE LINUX Products 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: yast2-installation
Version: 2.22.8
Release: 0
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source0: yast2-installation-%{version}.tar.bz2
Summary: YaST2 - Installation Parts
License: GPL-2.0
Group: System/YaST
Source1: YaST2-Second-Stage.service
Source2: YaST2-Firstboot.service
BuildRequires: docbook-xsl-stylesheets
BuildRequires: doxygen
BuildRequires: libxslt
BuildRequires: perl-XML-Writer
BuildRequires: sgml-skel
BuildRequires: update-desktop-files
BuildRequires: yast2-core-devel
BuildRequires: yast2-devtools
BuildRequires: yast2-testsuite
# FileSystems::possible_root_fs
BuildRequires: yast2-storage >= 2.19.12
# xmllint
BuildRequires: libxml2
# to convert control.rnc o control.rng
BuildRequires: trang
# PackageCallbacks::RegisterEmptyProgressCallbacks()
BuildRequires: yast2 >= 2.16.52
# Pkg::Add/RemoveUpgradeRepo()
BuildRequires: yast2-pkg-bindings >= 2.21.2
# Unified progress bar (done by visnov)
BuildRequires: yast2-packager >= 2.17.9
# AutoinstConfig::getProposalList
Requires: autoyast2-installation >= 2.17.1
# ProductControl::DisabledACItems, ::DisabledSubProposals
Requires: yast2 >= 2.18.23
# Language::GetLanguageItems and other API
# Language::Set (handles downloading the translation extensions)
Requires: yast2-country-data >= 2.16.11
# Pkg::SourceProvideDigestedFile()
Conflicts: yast2-pkg-bindings < 2.17.25
# Pkg::Add/RemoveUpgradeRepo()
Requires: yast2-pkg-bindings >= 2.21.2
# Mouse-related scripts moved to yast2-mouse
Conflicts: yast2-mouse < 2.18.0
# New API for ProductLicense
Requires: yast2-packager >= 2.19.2
# FileSystems::possible_root_fs
Requires: yast2-storage >= 2.19.12
# use in startup scripts
Requires: initviocons
# Proxy settings for 2nd stage (bnc#764951)
Requires: yast2-proxy
# Only in inst-sys
# Requires: yast2-network
# Requires: yast2-add-on
# Requires: yast2-update
# Pkg::SourceProvideSignedFile Pkg::SourceProvideDigestedFile
# pkg-bindings are not directly required
Conflicts: yast2-pkg-bindings < 2.17.25
# InstError
Conflicts: yast2 < 2.18.6
# Added new function WFM::ClientExists
Conflicts: yast2-core < 2.17.10
# ButtonBox widget
Conflicts: yast2-ycp-ui-bindings < 2.17.3
# tar-gzip some system files and untar-ungzip them after the installation (FATE #300421, #120103)
Requires: coreutils
Requires: gzip
Requires: tar
%if 0%{?suse_version} >= 1210
BuildRequires: systemd-devel
%{systemd_requires}
%endif
# for the first/second stage of installation
# currently not used
# bugzilla #208307
#Requires: /usr/bin/jpegtopnm
#Requires: /usr/bin/pnmtopng
# BNC 446533, /sbin/lspci called but not installed
Requires: pciutils
Recommends: yast2-registration
Recommends: yast2-online-update
Recommends: yast2-users
Recommends: yast2-firewall
Recommends: release-notes
Recommends: curl
Recommends: yast2-update
Recommends: yast2-add-on
PreReq: %fillup_prereq
BuildArch: noarch
%package devel-doc
Requires: yast2-installation >= 2.15.34
PreReq: %fillup_prereq
Summary: YaST2 - Installation Parts
Group: Documentation/HTML
%description
System installation code as present on installation media.
%description devel-doc
System installation code as present on installation media.
%prep
%setup -n yast2-installation-%{version}
%build
%{_prefix}/bin/y2tool y2autoconf
%{_prefix}/bin/y2tool y2automake
autoreconf --force --install
export CFLAGS="$RPM_OPT_FLAGS -DNDEBUG"
export CXXFLAGS="$RPM_OPT_FLAGS -DNDEBUG"
./configure --libdir=%{_libdir} --prefix=%{_prefix} --mandir=%{_mandir}
# V=1: verbose build in case we used AM_SILENT_RULES(yes)
# so that RPM_OPT_FLAGS check works
make %{?jobs:-j%jobs} V=1
%install
make install DESTDIR="$RPM_BUILD_ROOT"
[ -e "%{_prefix}/share/YaST2/data/devtools/NO_MAKE_CHECK" ] || Y2DIR="$RPM_BUILD_ROOT/usr/share/YaST2" make check DESTDIR="$RPM_BUILD_ROOT"
for f in `find $RPM_BUILD_ROOT/%{_prefix}/share/applications/YaST2/ -name "*.desktop"` ; do
d=${f##*/}
%suse_update_desktop_file -d ycc_${d%.desktop} ${d%.desktop}
done
for f in `find %{buildroot}%{_datadir}/autoinstall/modules -name "*.desktop"`; do
%suse_update_desktop_file $f
done
mkdir -p $RPM_BUILD_ROOT/lib/systemd/system/
install -m 644 %{SOURCE1} $RPM_BUILD_ROOT/lib/systemd/system/
install -m 644 %{SOURCE2} $RPM_BUILD_ROOT/lib/systemd/system/
%clean
rm -rf "$RPM_BUILD_ROOT"
%post
%{fillup_only -ns security checksig}
%if 0%{suse_version} > 1140
%service_add_post YaST2-Second-Stage.service YaST2-Firstboot.service
%pre
%service_add_pre YaST2-Second-Stage.service YaST2-Firstboot.service
%preun
%service_del_preun YaST2-Second-Stage.service YaST2-Firstboot.service
%postun
%service_del_postun YaST2-Second-Stage.service YaST2-Firstboot.service
%endif #suse_version
%files
%defattr(-,root,root)
%dir /usr/share/YaST2/control
/usr/share/YaST2/control/*.xml
# Fixme: move to another package (to make build of other packages faster)
/usr/share/YaST2/control/*.rng
/usr/share/YaST2/control/*.rnc
# systemd service files
/lib/systemd/system/YaST2-Second-Stage.service
/lib/systemd/system/YaST2-Firstboot.service
/usr/share/YaST2/clients/*.ycp
/usr/share/YaST2/modules/*.ycp
/usr/share/YaST2/modules/*.ybc
%{_prefix}/share/applications/YaST2/*.desktop
/usr/share/autoinstall/modules/*.desktop
/usr/share/YaST2/schema/autoyast/rnc/deploy_image.rnc
%dir /usr/share/autoinstall
%dir /usr/share/autoinstall/modules
%dir /usr/share/YaST2/include/installation
/usr/share/YaST2/include/installation/*
# agents
/usr/share/YaST2/scrconf/etc_passwd.scr
/usr/share/YaST2/scrconf/cfg_boot.scr
/usr/share/YaST2/scrconf/cfg_windowmanager.scr
/usr/share/YaST2/scrconf/cfg_fam.scr
/usr/share/YaST2/scrconf/etc_install_inf.scr
/usr/share/YaST2/scrconf/etc_install_inf_alias.scr
/usr/share/YaST2/scrconf/etc_install_inf_options.scr
/usr/share/YaST2/scrconf/proc_modules.scr
/usr/share/YaST2/scrconf/run_df.scr
# fillup
/var/adm/fillup-templates/sysconfig.security-checksig
# programs and scripts
%{_prefix}/lib/YaST2/startup
%dir %{_prefix}/share/doc/packages/yast2-installation
%{_prefix}/share/doc/packages/yast2-installation/COPYING
%readme %{_prefix}/share/doc/packages/yast2-installation/README
%files devel-doc
%defattr(-,root,root)
%doc %{_prefix}/share/doc/packages/yast2-installation
%exclude %{_prefix}/share/doc/packages/yast2-installation/COPYING
%exclude %{_prefix}/share/doc/packages/yast2-installation/README
%changelog