Blame aaa_base.spec

Bernhard M. Wiedemann 89dfa3
#
Bernhard M. Wiedemann 89dfa3
# spec file for package aaa_base
Bernhard M. Wiedemann 89dfa3
#
7f506b
# Copyright (c) 2022 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
7f506b
%if 0%{?_build_in_place}
7f506b
%define git_version %(git log '-n1' '--date=format:%Y%m%d' '--no-show-signature' "--pretty=format:+git%cd.%h")
7f506b
BuildRequires:  git-core
7f506b
%else
7f506b
# this is required for obs' source validator. It's
7f506b
# 20-files-present-and-referenced ignores all conditionals. So the
7f506b
# definition of git_version actually happens always.
7f506b
%define git_version %{nil}
7f506b
%endif
7f506b
Bernhard M. Wiedemann 89dfa3
Name:           aaa_base
63e321
Version:        84.87+git20220727.43b9e53%{git_version}
Bernhard M. Wiedemann 89dfa3
Release:        0
7f506b
Summary:        openSUSE Base Package
7f506b
License:        GPL-2.0-or-later
7f506b
Group:          System/Fhs
Bernhard M. Wiedemann 5b20c5
URL:            https://github.com/openSUSE/aaa_base
7f506b
Source:         aaa_base-%{version}.tar
7f506b
Source1:        README.packaging.txt
7f506b
Source99:       aaa_base-rpmlintrc
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
7f506b
Requires(pre):  /usr/bin/rm
7f506b
Requires(pre):  (glibc >= 2.30 if glibc)
7f506b
Requires(post): fillup /usr/bin/chmod /usr/bin/chown
6dbf0d
Recommends:     aaa_base-extras
6dbf0d
Recommends:     iproute2
6dbf0d
Recommends:     iputils
6dbf0d
Recommends:     logrotate
6dbf0d
Recommends:     netcfg
6dbf0d
Recommends:     udev
7f506b
# do not require systemd - aaa_base is in the build environment and we don't
7f506b
# want to pull in tons of dependencies
7f506b
Conflicts:      sysvinit-init
Bernhard M. Wiedemann 5616d1
cd46a3
# run osc service mr to recreate
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
90c982
strictly required to run a system. (bash completions 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 89dfa3
Bernhard M. Wiedemann 89dfa3
%build
7f506b
%make_build CFLAGS="%{optflags}" CC="%{__cc}"
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%install
7f506b
%make_install
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
7f506b
test -d %{buildroot}/root/.gnupg && exit 1
cabad6
# TODO: get rid of that at some point in the future
7f506b
mkdir -p %{buildroot}/etc/init.d
Bernhard M. Wiedemann 1f2cb0
for i in boot.local after.local ; do
7f506b
  install -m 755 /dev/null %{buildroot}/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
%license COPYING
21cd70
%config(noreplace) /etc/DIR_COLORS
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
381077
/usr/etc/profile.d/alljava.csh
381077
/usr/etc/profile.d/alljava.sh
381077
/usr/etc/profile.d/lang.csh
381077
/usr/etc/profile.d/lang.sh
381077
/usr/etc/profile.d/profile.csh
381077
/usr/etc/profile.d/profile.sh
381077
/usr/etc/profile.d/xdg-environment.csh
381077
/usr/etc/profile.d/xdg-environment.sh
381077
/usr/etc/profile.d/alias.ash
381077
/usr/etc/profile.d/alias.bash
381077
/usr/etc/profile.d/alias.tcsh
381077
/usr/etc/profile.d/ls.tcsh
381077
/usr/etc/profile.d/ls.bash
381077
/usr/etc/profile.d/ls.zsh
Bernhard M. Wiedemann 89dfa3
%config /etc/shells
cabad6
%ghost %dir /etc/init.d
cabad6
%ghost %config(noreplace) /etc/init.d/boot.local
cabad6
%ghost %config(noreplace) /etc/init.d/after.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
/usr/bin/get_kernel_version
Bernhard M. Wiedemann 89dfa3
/usr/sbin/refresh_initrd
Bernhard M. Wiedemann 89dfa3
/usr/sbin/service
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/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
/etc/skel/.emacs
Bernhard M. Wiedemann 89dfa3
/etc/skel/.inputrc
Bernhard M. Wiedemann 89dfa3
%dir /usr/lib/base-scripts
90c982
/usr/etc/profile.d/complete.bash
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
381077
/usr/etc/profile.d/malloc-debug.sh
381077
/usr/etc/profile.d/malloc-debug.csh
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%files wsl
381077
/usr/etc/profile.d/wsl.csh
381077
/usr/etc/profile.d/wsl.sh
Bernhard M. Wiedemann 89dfa3
Bernhard M. Wiedemann 89dfa3
%changelog