2024-05-04 02:20:15 +02:00
#
# spec file for package yast2
#
2024-12-09 16:37:44 +01:00
# Copyright (c) 2024 SUSE LLC
2024-05-04 02:20:15 +02:00
#
# 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/
#
Name : yast2
2024-12-09 16:37:44 +01:00
Version : 5.0.10
2024-05-04 02:20:15 +02:00
Release : 0
Summary : YaST2 Main Package
License : GPL-2.0-only
Group : System/YaST
URL : https://github.com/yast/yast-yast2
Source0 : %{name} -%{version} .tar.bz2
Source1 : yast2-rpmlintrc
# for symlinking yardoc duplicates
BuildRequires : fdupes
# Needed for tests
BuildRequires : grep
# for some system directories
BuildRequires : filesystem
# for defining abstract methods in libraries
BuildRequires : rubygem(%{rb_default_ruby_abi} :abstract_method)
# for file access using augeas
BuildRequires : rubygem(%{rb_default_ruby_abi} :cfa)
# for used augeas lenses
BuildRequires : augeas-lenses
# for running scripts
BuildRequires : update-desktop-files
BuildRequires : rubygem(%{rb_default_ruby_abi} :cheetah)
# For running RSpec tests during build
BuildRequires : rubygem(%{rb_default_ruby_abi} :rspec)
# For converting to/from punycode strings
BuildRequires : rubygem(%{rb_default_ruby_abi} :simpleidn)
# Needed already in build time
BuildRequires : yast2-core >= 2.18.12
BuildRequires : yast2-devtools >= 3.1.10
# Pkg.Resolvables() with "path" search support
BuildRequires : yast2-pkg-bindings >= 4.3.7
BuildRequires : rubygem(%rb_default_ruby_abi:yast-rake)
# for XML module
BuildRequires : rubygem(%rb_default_ruby_abi:nokogiri)
# log.group call
BuildRequires : yast2-ruby-bindings >= 4.5.4
BuildRequires : yast2-testsuite
# Nested items in tables
BuildRequires : yast2-ycp-ui-bindings >= 4.3.3
# for the PackageExtractor tests, just make sure they are present,
# these should be installed in the default build anyway
BuildRequires : cpio
BuildRequires : rpm
# for ag_tty (/bin/stty)
# for /usr/bin/md5sum
Requires : coreutils
# for GPG.ycp
Requires : gpg2
# for defining abstract methods in libraries
Requires : rubygem(%{rb_default_ruby_abi} :abstract_method)
# for file access using augeas
Requires : rubygem(%{rb_default_ruby_abi} :cfa)
# for used augeas lenses
Requires : augeas-lenses
# For converting to/from punycode strings
Requires : sysconfig >= 0.80.0
Requires : rubygem(%{rb_default_ruby_abi} :simpleidn)
# for running scripts
Requires : rubygem(%{rb_default_ruby_abi} :cheetah)
# for XML module
Requires : rubygem(%rb_default_ruby_abi:nokogiri)
# ag_ini section_private
# ag_ini with (un)quoting support
Requires : yast2-core >= 2.23.0
Requires : yast2-hardware-detection
# for SLPAPI.pm
Requires : yast2-perl-bindings
# Pkg.Resolvables() with "path" search support
Requires : yast2-pkg-bindings >= 4.3.7
# log.group
Requires : yast2-ruby-bindings >= 4.5.4
# Nested items in tables
Requires : yast2-ycp-ui-bindings >= 4.3.3
Requires : yui_backend
# scripts for collecting YAST logs
Requires : yast2-logs
# for the PackageExtractor class, just make sure they are present,
# these should be present even in a very minimal installation
Requires : cpio
Requires : rpm
# /usr/bin/hostname command
Requires : hostname
# pre-requires for filling the sysconfig template (sysconfig.yast2)
PreReq : %fillup_prereq
# xdg-su in .desktops
Recommends: xdg-utils
# removed the XVersion API
Conflicts : yast2-country < 4.2.3
# SrvStatusComponent moved to yast2.rpm
Conflicts : yast2-dns-server < 3.1.17
# removed ProductProfiles
Conflicts : yast2-installation < 4.4.25
# removed ProductProfiles
Conflicts : yast2-add-on < 4.4.5
# moved cfg_mail.scr
Conflicts : yast2-mail < 3.1.7
# anyxml droppped
Conflicts : yast2-packager < 4.3.2
# anyxml droppped
Conflicts : yast2-update < 4.3.0
# Older snapper does not provide machine-readable output
Conflicts : snapper < 0.8.6
Obsoletes : yast2-devel-doc
%description
This package contains scripts and data needed for SUSE Linux
installation with YaST2
%package logs
Summary : Scripts for handling YAST logs
Group : System/YaST
Provides : yast2:/usr/sbin/save_y2logs
Requires : tar
%description logs
This package contains scripts for handling YAST logs.
%prep
%setup -q
%check
export Y2STRICTTEXTDOMAIN=1
%yast_check
%build
# removed explicit adding of translations to group desktop files, since it is covered by the general call (they are in a subdirectory) and it caused build fail
%install
mkdir -p %{buildroot} %{yast_clientdir}
mkdir -p %{buildroot} %{yast_desktopdir}
mkdir -p %{buildroot} %{yast_imagedir}
mkdir -p %{buildroot} %{yast_localedir}
mkdir -p %{buildroot} %{yast_moduledir}
mkdir -p %{buildroot} %{yast_scrconfdir}
mkdir -p %{buildroot} %{yast_ybindir}
mkdir -p %{buildroot} %{yast_ydatadir}
mkdir -p %{buildroot} %{yast_yncludedir}
mkdir -p %{buildroot} %{yast_libdir}
mkdir -p %{buildroot} %{yast_vardir}
mkdir -p %{buildroot} %{yast_vardir} /hooks
mkdir -p %{buildroot} %{yast_schemadir} /control/rnc
mkdir -p %{buildroot} %{yast_schemadir} /autoyast/rnc
mkdir -p %{buildroot} %{_sysconfdir} /YaST2
%yast_install
%if 0%{?suse_version} < 1550
mkdir -p %{buildroot} /sbin
ln -s ../%{_sbindir} /yast %{buildroot} /sbin
ln -s ../%{_sbindir} /yast2 %{buildroot} /sbin
%endif
# symlink the yardoc duplicates, saves over 2MB in installed system
# (the RPM package size is decreased just by few kilobytes
# because of the compression)
%fdupes -s %{buildroot} /%{_docdir} /yast2
%post
%{fillup_only -n yast2}
if [ -f " / e t c / s y s c t l . d / 3 0 - y a s t . c o n f " ]; then
if [ -f " / e t c / s y s c t l . d / 7 0 - y a s t . c o n f " ]; then
rm /etc/sysctl.d/30-yast.conf
else
mv /etc/sysctl.d/30-yast.conf /etc/sysctl.d/70-yast.conf
fi
fi
%files
# basic directory structure
%dir %{yast_clientdir}
%dir %{yast_desktopdir}
%{yast_desktopdir} /groups
%dir %{yast_imagedir}
%dir %{yast_localedir}
%dir %{yast_moduledir}
%dir %{yast_scrconfdir}
%dir %{yast_ybindir}
%dir %{yast_ydatadir}
%dir %{yast_yncludedir}
%dir %{yast_vardir}
%dir %{yast_libdir}
%dir %{yast_schemadir}
%dir %{yast_schemadir} /control
%dir %{yast_schemadir} /control/rnc
%dir %{yast_schemadir} /autoyast
%dir %{yast_schemadir} /autoyast/rnc
%dir %{_sysconfdir} /YaST2
%dir %{yast_vardir} /hooks
# yast2
%{yast_ydatadir} /*.ycp
%{yast_clientdir} /*
%{yast_moduledir} /*
%{yast_libdir} /*
%{yast_scrconfdir} /*
%{yast_ybindir} /*
%{yast_agentdir} /ag_*
%{_fillupdir} /sysconfig.yast2
%{_datadir} /bash-completion/completions
# documentation (not included in devel subpackage)
%doc %dir %{yast_docdir}
%license %{yast_docdir} /COPYING
%doc %{yast_docdir} /README.md
%{_mandir} /*/*
%doc %{yast_vardir} /hooks/README.md
%if 0%{?suse_version} < 1550
/sbin/yast*
%endif
%{_sbindir} /yast*
# wizard
%dir %{yast_yncludedir} /wizard
%{yast_yncludedir} /wizard/*.rb
# packages
%dir %{yast_yncludedir} /packages
%{yast_yncludedir} /packages/*.rb
# system
%dir %{yast_yncludedir} /hwinfo
%{yast_yncludedir} /hwinfo/*.rb
%{yast_desktopdir} /messages.desktop
# icons
%{yast_icondir}
%files logs
/usr/sbin/save_y2logs
%changelog