# -*- Mode: rpm-spec; indent-tabs-mode: nil -*- */ # SPDX-License-Identifier: LGPL-2.1+ # # This file is part of systemd. # # Copyright 2012 Lennart Poettering # RPM macros for packages installing systemd unit files %_unitdir @systemunitdir@ %_userunitdir @userunitdir@ %_presetdir @systempresetdir@ %_userpresetdir @userpresetdir@ %_udevhwdbdir @udevhwdbdir@ %_udevrulesdir @udevrulesdir@ %_journalcatalogdir @catalogdir@ %_binfmtdir @binfmtdir@ %_sysctldir @sysctldir@ %_sysusersdir @sysusersdir@ %_tmpfilesdir @tmpfilesdir@ %_environmnentdir @environmentdir@ %_modulesloaddir @modulesloaddir@ %_modprobedir @modprobedir@ %_systemdgeneratordir @systemgeneratordir@ %_systemdusergeneratordir @usergeneratordir@ %_systemd_system_env_generator_dir @systemenvgeneratordir@ %_systemd_user_env_generator_dir @userenvgeneratordir@ %systemd_requires \ Requires(post): systemd \ Requires(preun): systemd \ Requires(postun): systemd \ %{nil} %systemd_ordering \ OrderWithRequires(post): systemd \ OrderWithRequires(preun): systemd \ OrderWithRequires(postun): systemd \ %{nil} %systemd_post() \ if [ $1 -eq 1 ] ; then \ # Initial installation \ systemctl --no-reload preset %{?*} &>/dev/null || : \ fi \ %{nil} %systemd_user_post() %{expand:%systemd_post \\--global %%{?*}} %systemd_preun() \ if [ $1 -eq 0 ] ; then \ # Package removal, not upgrade \ systemctl --no-reload disable --now %{?*} &>/dev/null || : \ fi \ %{nil} %systemd_user_preun() \ if [ $1 -eq 0 ] ; then \ # Package removal, not upgrade \ systemctl --global disable %{?*} &>/dev/null || : \ fi \ %{nil} %systemd_postun() %{nil} %systemd_user_postun() %{nil} %systemd_postun_with_restart() \ if [ $1 -ge 1 ] ; then \ # Package upgrade, not uninstall \ systemctl try-restart %{?*} &>/dev/null || : \ fi \ %{nil} %systemd_user_postun_with_restart() %{nil} %udev_hwdb_update() %{nil} %udev_rules_update() %{nil} %journal_catalog_update() %{nil} # Deprecated. Use %tmpfiles_create_package instead %tmpfiles_create() \ systemd-tmpfiles --create %{?*} &>/dev/null || : \ %{nil} # Deprecated. Use %sysusers_create_package instead %sysusers_create() \ systemd-sysusers %{?*} &>/dev/null || : \ %{nil} %sysusers_create_inline() \ systemd-sysusers - </dev/null || : \ %{?*} \ SYSTEMD_INLINE_EOF \ %{nil} # This should be used by package installation scripts which require users or # groups to be present before the files installed by the package are present on # disk (for example because some files are owned by those users or groups). # # Example: # Source1: %{name}-sysusers.conf # ... # %install # install -D %SOURCE1 %{buildroot}%{_sysusersdir}/%{name}.conf # %pre # %sysusers_create_package %{name} %SOURCE1 # %files # %{_sysusersdir}/%{name}.conf %sysusers_create_package() \ systemd-sysusers --replace=%_sysusersdir/%1.conf - </dev/null || : \ %(cat %2) \ SYSTEMD_INLINE_EOF \ %{nil} # This may be used by package installation scripts to create files according to # their tmpfiles configuration from a package installation script, even before # the files of that package are installed on disk. # # Example: # Source1: %{name}-tmpfiles.conf # ... # %install # install -D %SOURCE1 %{buildroot}%{_tmpfilesdir}/%{name}.conf # %pre # %tmpfiles_create_package %{name} %SOURCE1 # %files # %{_tmpfilesdir}/%{name}.conf %tmpfiles_create_package() \ systemd-tmpfiles --replace=%_tmpfilesdir/%1.conf --create - </dev/null || : \ %(cat %2) \ SYSTEMD_INLINE_EOF \ %{nil} %sysctl_apply() \ @rootlibexecdir@/systemd-sysctl %{?*} &>/dev/null || : \ %{nil} %binfmt_apply() \ @rootlibexecdir@/systemd-binfmt %{?*} &>/dev/null || : \ %{nil}