Blame aaa_base.spec

Bernhard M. Wiedemann 89dfa3
#
Bernhard M. Wiedemann 89dfa3
# spec file for package aaa_base
Bernhard M. Wiedemann 89dfa3
#
Bernhard M. Wiedemann 61f563
# Copyright (c) 2020 SUSE LLC
Bernhard M. Wiedemann 89dfa3
#
Bernhard M. Wiedemann 89dfa3
# All modifications and additions to the file contributed by third parties
Bernhard M. Wiedemann 89dfa3
# remain the property of their copyright owners, unless otherwise agreed
Bernhard M. Wiedemann 89dfa3
# upon. The license for this file, and modifications and additions to the
Bernhard M. Wiedemann 89dfa3
# file, is the same license as for the pristine package itself (unless the
Bernhard M. Wiedemann 89dfa3
# license for the pristine package is not an Open Source License, in which
Bernhard M. Wiedemann 89dfa3
# case the license is the MIT License). An "Open Source License" is a
Bernhard M. Wiedemann 89dfa3
# license that conforms to the Open Source Definition (Version 1.9)
Bernhard M. Wiedemann 89dfa3
# published by the Open Source Initiative.
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
# Please submit bugfixes or comments via https://bugs.opensuse.org/
Bernhard M. Wiedemann 89dfa3
#
Bernhard M. Wiedemann 89dfa3
# icecream 0
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
#Compat macro for new _fillupdir macro introduced in Nov 2017
Bernhard M. Wiedemann 89dfa3
%if ! %{defined _fillupdir}
Bernhard M. Wiedemann 89dfa3
  %define _fillupdir /var/adm/fillup-templates
Bernhard M. Wiedemann 89dfa3
%endif
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
Name:           aaa_base
Bernhard M. Wiedemann b28ae2
Version:        84.87+git20200507.e2243a4
Bernhard M. Wiedemann 89dfa3
Release:        0
Bernhard M. Wiedemann 5b20c5
URL:            https://github.com/openSUSE/aaa_base
Bernhard M. Wiedemann 89dfa3
# do not require systemd - aaa_base is in the build environment and we don't
Bernhard M. Wiedemann 89dfa3
# want to pull in tons of dependencies
Bernhard M. Wiedemann 89dfa3
Conflicts:      sysvinit-init
Bernhard M. Wiedemann 89dfa3
Requires:       /bin/mktemp
Bernhard M. Wiedemann 5616d1
Requires:       /usr/bin/cat
Bernhard M. Wiedemann 5616d1
Requires:       /usr/bin/date
Bernhard M. Wiedemann 5616d1
Requires:       /usr/bin/grep
Bernhard M. Wiedemann 5616d1
Requires:       /usr/bin/mv
Bernhard M. Wiedemann 5616d1
Requires:       /usr/bin/sed
Bernhard M. Wiedemann 89dfa3
Requires:       /usr/bin/tput
Bernhard M. Wiedemann dbd826
Requires:       /usr/bin/xz
Bernhard M. Wiedemann 89dfa3
Requires:       distribution-release
Bernhard M. Wiedemann 89dfa3
Requires:       filesystem
Bernhard M. Wiedemann 89dfa3
Recommends:     logrotate netcfg udev iputils iproute2 aaa_base-extras
Bernhard M. Wiedemann 5616d1
Requires(pre):  /usr/bin/rm
Bernhard M. Wiedemann c1cfd3
Requires(pre):  glibc >= 2.30
Bernhard M. Wiedemann 5616d1
Requires(post): fillup /usr/bin/chmod /usr/bin/chown
Bernhard M. Wiedemann 5616d1
Bernhard M. Wiedemann 89dfa3
Summary:        openSUSE Base Package
Bernhard M. Wiedemann 89dfa3
License:        GPL-2.0-or-later
Bernhard M. Wiedemann 89dfa3
Group:          System/Fhs
Bernhard M. Wiedemann 89dfa3
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
Bernhard M. Wiedemann 89dfa3
# run osc service dr to recreate
Bernhard M. Wiedemann 89dfa3
Source:         aaa_base-%{version}.tar.xz
Bernhard M. Wiedemann 89dfa3
#
Bernhard M. Wiedemann 89dfa3
# Read README.packaging.txt before making any changes to this
Bernhard M. Wiedemann 89dfa3
# package
Bernhard M. Wiedemann 89dfa3
#
Bernhard M. Wiedemann 89dfa3
Source1:        README.packaging.txt
Bernhard M. Wiedemann 89dfa3
Source99:       aaa_base-rpmlintrc
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%description
Bernhard M. Wiedemann 89dfa3
This package installs several important configuration files and central scripts.
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%package extras
Bernhard M. Wiedemann 89dfa3
Summary:        SUSE Linux Base Package (recommended part)
Bernhard M. Wiedemann 89dfa3
Group:          System/Fhs
Bernhard M. Wiedemann 89dfa3
Requires:       %{name} = %{version}
Bernhard M. Wiedemann 5616d1
Requires:       /usr/bin/find
Bernhard M. Wiedemann 5616d1
Requires:       cpio
Bernhard M. Wiedemann 89dfa3
Requires(post): fillup
Bernhard M. Wiedemann 89dfa3
Provides:       aaa_base:/etc/DIR_COLORS
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%description extras
Bernhard M. Wiedemann 89dfa3
The parts of aaa_base that should be installed by default but are not
Bernhard M. Wiedemann 89dfa3
strictly required to run a system. (Shell aliases, bash completions
Bernhard M. Wiedemann 89dfa3
and convenience hacks).
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%package malloccheck
Bernhard M. Wiedemann 89dfa3
Summary:        SUSE Linux Base Package (malloc checking)
Bernhard M. Wiedemann 89dfa3
Group:          System/Fhs
Bernhard M. Wiedemann 89dfa3
Requires:       %{name} = %{version}
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%description malloccheck
Bernhard M. Wiedemann 89dfa3
This package sets environment variables that enable stricter
Bernhard M. Wiedemann 89dfa3
malloc checks to catch potential heap corruptions. It's not
Bernhard M. Wiedemann 89dfa3
installed by default as it may degrade performance.
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%package wsl
Bernhard M. Wiedemann 89dfa3
Summary:        SUSE Linux Base Package (Windows Subsystem for Linux)
Bernhard M. Wiedemann 89dfa3
Group:          System/Fhs
Bernhard M. Wiedemann 89dfa3
Requires:       %{name} = %{version}
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%description wsl
Bernhard M. Wiedemann 89dfa3
This package includes some special settings needed on Windows Subsystem
Bernhard M. Wiedemann 89dfa3
for Linux. It should only be installed on WSL and not on regular Linux
Bernhard M. Wiedemann 89dfa3
systems.
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%prep
Bernhard M. Wiedemann 89dfa3
%setup -q
Bernhard M. Wiedemann a3838e
sed -i 's|actiondir="/usr/lib/initscripts/legacy-actions"|actiondir="%{_libexecdir}/initscripts/legacy-actions"|' \
Bernhard M. Wiedemann a3838e
    files/usr/sbin/service
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%build
Bernhard M. Wiedemann 89dfa3
make CFLAGS="$RPM_OPT_FLAGS" CC="%{__cc}" %{?_smp_mflags}
Bernhard M. Wiedemann 89dfa3
if test -d patches/$RPM_ARCH; then
Bernhard M. Wiedemann 89dfa3
	pushd files
Bernhard M. Wiedemann 89dfa3
	for file in ../patches/$RPM_ARCH/*; do
Bernhard M. Wiedemann 89dfa3
		patch -p0 --input=$file
Bernhard M. Wiedemann 89dfa3
	done
Bernhard M. Wiedemann 89dfa3
	find -name "*.orig" | xargs -r rm
Bernhard M. Wiedemann 89dfa3
	popd
Bernhard M. Wiedemann 89dfa3
fi
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%install
Bernhard M. Wiedemann 89dfa3
#
Bernhard M. Wiedemann 89dfa3
make DESTDIR=$RPM_BUILD_ROOT install
Bernhard M. Wiedemann 89dfa3
#
Bernhard M. Wiedemann 89dfa3
mkdir -p %{buildroot}/etc/sysctl.d
Bernhard M. Wiedemann 89dfa3
case "$RPM_ARCH" in
Bernhard M. Wiedemann 89dfa3
	s390*) ;;
Bernhard M. Wiedemann 89dfa3
	*) rm -f %{buildroot}/usr/lib/sysctl.d/50-default-s390.conf ;;
Bernhard M. Wiedemann 89dfa3
esac
Bernhard M. Wiedemann 89dfa3
#
Bernhard M. Wiedemann 89dfa3
# make sure it does not creep in again
Bernhard M. Wiedemann 89dfa3
test -d $RPM_BUILD_ROOT/root/.gnupg && exit 1
Bernhard M. Wiedemann 89dfa3
mkdir -p $RPM_BUILD_ROOT/etc/init.d
Bernhard M. Wiedemann 89dfa3
for i in boot.local after.local halt.local ; do
Bernhard M. Wiedemann 89dfa3
  echo "#!bin/bash" > $RPM_BUILD_ROOT/etc/init.d/$i
Bernhard M. Wiedemann 89dfa3
  chmod 755 $RPM_BUILD_ROOT/etc/init.d/$i
Bernhard M. Wiedemann 89dfa3
done
Bernhard M. Wiedemann 89dfa3
#
Bernhard M. Wiedemann a3838e
install -d -m 755 %buildroot%{_libexecdir}/initscripts/legacy-actions
Bernhard M. Wiedemann 89dfa3
# keep as ghost for migration
Bernhard M. Wiedemann 89dfa3
touch %buildroot/etc/inittab
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
# Backup directories
Bernhard M. Wiedemann 89dfa3
install -d -m 755 %{buildroot}/var/adm/backup/{rpmdb,sysconfig}
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
mkdir -p %{buildroot}%{_fillupdir}
Bernhard M. Wiedemann 89dfa3
%if "%{_fillupdir}" != "/var/adm/fillup-templates"
Bernhard M. Wiedemann 89dfa3
  for f in %{buildroot}/var/adm/fillup-templates/* ; do
Bernhard M. Wiedemann 89dfa3
    test -e "$f" || continue
Bernhard M. Wiedemann 89dfa3
    mv $f %{buildroot}%{_fillupdir}/
Bernhard M. Wiedemann 89dfa3
  done
Bernhard M. Wiedemann 89dfa3
  rm -vrf %{buildroot}/var/adm/fillup-templates
Bernhard M. Wiedemann 89dfa3
%endif
Bernhard M. Wiedemann 89dfa3
%if "%{_fillupdir}" != "/usr/share/fillup-templates"
Bernhard M. Wiedemann 89dfa3
  for f in %{buildroot}/usr/share/fillup-templates/* ; do
Bernhard M. Wiedemann 89dfa3
    test -e "$f" || continue
Bernhard M. Wiedemann 89dfa3
    mv $f %{buildroot}%{_fillupdir}/
Bernhard M. Wiedemann 89dfa3
  done
Bernhard M. Wiedemann 89dfa3
  rm -vrf %{buildroot}/usr/share/fillup-templates
Bernhard M. Wiedemann 89dfa3
%endif
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%pre -f aaa_base.pre
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%post -f aaa_base.post
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%pre extras
Bernhard M. Wiedemann 89dfa3
%service_add_pre backup-rpmdb.service backup-rpmdb.timer backup-sysconfig.service backup-sysconfig.timer check-battery.service check-battery.timer
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%post extras
Bernhard M. Wiedemann 89dfa3
%fillup_only -n backup
Bernhard M. Wiedemann 89dfa3
%service_add_post backup-rpmdb.service backup-rpmdb.timer backup-sysconfig.service backup-sysconfig.timer check-battery.service check-battery.timer
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%preun extras
Bernhard M. Wiedemann 89dfa3
%service_del_preun backup-rpmdb.service backup-rpmdb.timer backup-sysconfig.service backup-sysconfig.timer check-battery.service check-battery.timer
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%postun extras
Bernhard M. Wiedemann 89dfa3
%service_del_postun backup-rpmdb.service backup-rpmdb.timer backup-sysconfig.service backup-sysconfig.timer check-battery.service check-battery.timer
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%files
Bernhard M. Wiedemann 89dfa3
%defattr(-,root,root)
Bernhard M. Wiedemann 89dfa3
%license COPYING
Bernhard M. Wiedemann 89dfa3
%config(noreplace) /etc/sysctl.conf
Bernhard M. Wiedemann 89dfa3
%config /etc/bash.bashrc
Bernhard M. Wiedemann 89dfa3
%config /etc/csh.cshrc
Bernhard M. Wiedemann 89dfa3
%config /etc/csh.login
Bernhard M. Wiedemann 89dfa3
%config /etc/inputrc
Bernhard M. Wiedemann 89dfa3
%config /etc/inputrc.keys
Bernhard M. Wiedemann 89dfa3
%config /etc/mime.types
Bernhard M. Wiedemann 89dfa3
%config /etc/profile
Bernhard M. Wiedemann 89dfa3
%config /etc/profile.d/alljava.csh
Bernhard M. Wiedemann 89dfa3
%config /etc/profile.d/alljava.sh
Bernhard M. Wiedemann 89dfa3
%config /etc/profile.d/csh.ssh
Bernhard M. Wiedemann 89dfa3
%config /etc/profile.d/lang.csh
Bernhard M. Wiedemann 89dfa3
%config /etc/profile.d/lang.sh
Bernhard M. Wiedemann 89dfa3
%config /etc/profile.d/profile.csh
Bernhard M. Wiedemann 89dfa3
%config /etc/profile.d/profile.sh
Bernhard M. Wiedemann 89dfa3
%config /etc/profile.d/sh.ssh
Bernhard M. Wiedemann 89dfa3
%config /etc/profile.d/xdg-environment.csh
Bernhard M. Wiedemann 89dfa3
%config /etc/profile.d/xdg-environment.sh
Bernhard M. Wiedemann 04f275
%config /etc/profile.d/complete.bash
Bernhard M. Wiedemann 04f275
%config /etc/profile.d/alias.ash
Bernhard M. Wiedemann 04f275
/etc/profile.d/alias.bash
Bernhard M. Wiedemann 04f275
/etc/profile.d/alias.tcsh
Bernhard M. Wiedemann 04f275
/etc/profile.d/ls.tcsh
Bernhard M. Wiedemann 04f275
/etc/profile.d/ls.bash
Bernhard M. Wiedemann 04f275
/etc/profile.d/ls.zsh
Bernhard M. Wiedemann 89dfa3
%config /etc/shells
Bernhard M. Wiedemann 89dfa3
%config /etc/ttytype
Bernhard M. Wiedemann 89dfa3
%ghost /etc/init.d/boot.local
Bernhard M. Wiedemann 89dfa3
%ghost /etc/init.d/after.local
Bernhard M. Wiedemann 89dfa3
%ghost /etc/init.d/halt.local
Bernhard M. Wiedemann 89dfa3
%ghost %config /etc/inittab
Bernhard M. Wiedemann 89dfa3
# don't forget to also change aaa_base.post, boot.cleanup
Bernhard M. Wiedemann 89dfa3
# and /etc/permissions!
Bernhard M. Wiedemann 89dfa3
%ghost %attr(0644,root,root) %verify(not md5 size mtime) /var/log/lastlog
Bernhard M. Wiedemann 89dfa3
/etc/hushlogins
Bernhard M. Wiedemann 89dfa3
/usr/bin/get_kernel_version
Bernhard M. Wiedemann 89dfa3
/sbin/refresh_initrd
Bernhard M. Wiedemann 89dfa3
/usr/sbin/refresh_initrd
Bernhard M. Wiedemann 89dfa3
/sbin/service
Bernhard M. Wiedemann 89dfa3
/usr/sbin/service
Bernhard M. Wiedemann 89dfa3
/sbin/smart_agetty
Bernhard M. Wiedemann 89dfa3
/usr/sbin/smart_agetty
Bernhard M. Wiedemann 89dfa3
/usr/bin/filesize
Bernhard M. Wiedemann 89dfa3
/usr/bin/old
Bernhard M. Wiedemann 89dfa3
/usr/bin/rpmlocate
Bernhard M. Wiedemann 89dfa3
/usr/bin/safe-rm
Bernhard M. Wiedemann 89dfa3
/usr/bin/safe-rmdir
Bernhard M. Wiedemann 89dfa3
/usr/lib/restricted/bin/hostname
Bernhard M. Wiedemann 89dfa3
/usr/sbin/sysconf_addword
Bernhard M. Wiedemann 89dfa3
/usr/share/man/man1/smart_agetty.1*
Bernhard M. Wiedemann 89dfa3
/usr/share/man/man5/defaultdomain.5*
Bernhard M. Wiedemann 89dfa3
/usr/share/man/man8/safe-rm.8*
Bernhard M. Wiedemann 89dfa3
/usr/share/man/man8/safe-rmdir.8*
Bernhard M. Wiedemann 89dfa3
/usr/share/man/man8/service.8*
Bernhard M. Wiedemann 89dfa3
/usr/lib/sysctl.d/*.conf
Bernhard M. Wiedemann a3838e
%dir %{_libexecdir}/initscripts
Bernhard M. Wiedemann a3838e
%dir %{_libexecdir}/initscripts/legacy-actions
Bernhard M. Wiedemann 89dfa3
%{_fillupdir}/sysconfig.language
Bernhard M. Wiedemann 89dfa3
%{_fillupdir}/sysconfig.proxy
Bernhard M. Wiedemann 89dfa3
%{_fillupdir}/sysconfig.windowmanager
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%files extras
Bernhard M. Wiedemann 89dfa3
%defattr(-,root,root)
Bernhard M. Wiedemann 89dfa3
%config(noreplace) /etc/DIR_COLORS
Bernhard M. Wiedemann 89dfa3
/etc/skel/.emacs
Bernhard M. Wiedemann 89dfa3
/etc/skel/.inputrc
Bernhard M. Wiedemann 89dfa3
%dir /usr/lib/base-scripts
Bernhard M. Wiedemann 89dfa3
/usr/lib/base-scripts/backup-rpmdb
Bernhard M. Wiedemann 89dfa3
/usr/lib/base-scripts/backup-sysconfig
Bernhard M. Wiedemann 89dfa3
/usr/lib/base-scripts/check-battery
Bernhard M. Wiedemann 89dfa3
/usr/lib/systemd/system/*
Bernhard M. Wiedemann 89dfa3
/usr/share/man/man8/resolv+.8*
Bernhard M. Wiedemann 89dfa3
/var/adm/backup/rpmdb
Bernhard M. Wiedemann 89dfa3
/var/adm/backup/sysconfig
Bernhard M. Wiedemann 89dfa3
%{_fillupdir}/sysconfig.backup
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%files malloccheck
Bernhard M. Wiedemann 89dfa3
%defattr(-,root,root)
Bernhard M. Wiedemann 89dfa3
%config /etc/profile.d/malloc-debug.sh
Bernhard M. Wiedemann 89dfa3
%config /etc/profile.d/malloc-debug.csh
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%files wsl
Bernhard M. Wiedemann 89dfa3
%defattr(-,root,root)
Bernhard M. Wiedemann 89dfa3
%config /etc/profile.d/wsl.csh
Bernhard M. Wiedemann 89dfa3
%config /etc/profile.d/wsl.sh
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%changelog