--- /dev/null
+#!/bin/sh
+
+[ -f /etc/sysconfig/acpid ] && . /etc/sysconfig/acpid
+
+[ -f /proc/modules ] || exit 0
+
+is_yes() {
+ case "$1" in
+ yes|Yes|YES|true|True|TRUE|on|On|ON|Y|y|1)
+ return 0
+ ;;
+ *)
+ return 1
+ ;;
+ esac
+}
+
+if [ "$MODULES" = "all" ]; then
+ MODULES=$(sed -rn 's#^kernel/(drivers/acpi|drivers/misc/.*_acpi)/([^/]+/)*(.*)\.ko(\.gz)*:.*#\3#p' /lib/modules/$(uname -r)/modules.dep)
+else
+ # assemble from old lists
+ MODULES="$MODULES $LAPTOP_MODULES"
+ MODULES="$MODULES $VARIOUS_MODULES"
+ if is_yes "$ASUS_LAPTOP"; then
+ MODULES="$MODULES asus_acpi"
+ fi
+ if is_yes "$TOSHIBA_LAPTOP"; then
+ MODULES="$MODULES toshiba_acpi"
+ fi
+ if is_yes "$IBM_LAPTOP"; then
+ MODULES="$MODULES ibm_acpi"
+ fi
+ # strip spaces
+ MODULES=$(echo ${MODULES})
+fi
+
+if [ -z "$MODULES" ] && exit 0
+
+# see if the modules are already loaded
+if [ "$(lsmod | grep -E '^('$(echo $MODULES | tr ' ' '|')')\b' | wc -l)" = "$(echo $MODULES | wc -w)" ]; then
+ return
+fi
+
+modprobe --all $MODULES
After=syslog.service
[Service]
-EnvironmentFile=/etc/sysconfig/acpid
-ExecStart=/sbin/service acpid start
-ExecStop=/sbin/service acpid stop
-Type=forking
+EnvironmentFile=-/etc/sysconfig/acpid
+ExecStartPre=-/usr/share/acpid/acpid.preconfig
+ExecStart=/usr/sbin/acpid -f $PROGRAM_ARGS
[Install]
WantedBy=multi-user.target
Summary(pl.UTF-8): Demon zdarzeń ACPI
Name: acpid
Version: 2.0.10
-Release: 8
+Release: 9
License: GPL v2+
Group: Daemons
Source0: http://tedfelix.com/linux/%{name}-%{version}.tar.gz
Source7: %{name}.battery.sh
Source8: %{name}.upstart
Source9: %{name}.service
+Source10: %{name}.preconfig
URL: http://tedfelix.com/linux/acpid-netlink.html
BuildRequires: rpmbuild(macros) >= 1.268
Requires(post,preun): /sbin/chkconfig
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{/etc/{logrotate.d,rc.d/init.d,sysconfig,init},/var/log} \
- $RPM_BUILD_ROOT{%{_sysconfdir}/acpi/{events,actions},%{systemdunitdir}}
+ $RPM_BUILD_ROOT{%{_sysconfdir}/acpi/{events,actions},%{systemdunitdir}} \
+ $RPM_BUILD_ROOT%{_datadir}/%{name}
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
install -p %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/acpi/actions/button.sh
install -p %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/acpi/actions/battery.sh
install %{SOURCE9} $RPM_BUILD_ROOT%{systemdunitdir}
+install %{SOURCE10} $RPM_BUILD_ROOT%{_datadir}/%{name}
> $RPM_BUILD_ROOT/var/log/acpid
rm -rf $RPM_BUILD_ROOT%{_docdir}/%{name}
%postun
%systemd_reload
-%triggerpostun -- %{name} < 2.0.10-6
+%triggerpostun -- %{name} < 2.0.10-9
+if [ -f /etc/sysconfig/acpid ]; then
+ . /etc/sysconfig/acpid
+ __PROGRAM_ARGS=
+ [ "$NETLINK" = "yes" ] && __PROGRAM_ARGS="-n"
+ [ -n "$CLIENTMAX" ] && __PROGRAM_ARGS="$__PROGRAM_ARGS -C $CLIENTMAX"
+ [ -z "$__PROGRAM_ARGS" ] && exit 0
+ cp -f /etc/sysconfig/acpid{,.rpmsave}
+ echo >>/etc/sysconfig/acpid
+ echo "# Added by rpm trigger" >>/etc/sysconfig/acpid
+ echo "PROGRAM_ARGS=\"$PROGRAM_ARGS $__PROGRAM_ARGS\"" >>/etc/sysconfig/acpid
+fi
%systemd_trigger acpid.service
%files
%attr(640,root,root) %ghost /var/log/acpid
%{_mandir}/man8/acpid.8*
%{_mandir}/man8/acpi_listen.8*
+%attr(755,root,root) %{_datadir}/%{name}/acpid.preconfig
%files policy
%defattr(644,root,root,755)