From 9cd1a553eb5bd92559c85c1feec6af80d0c709cc Mon Sep 17 00:00:00 2001 From: Michael Hanson <hansonorders@verison.net> Date: Fri, 19 Mar 2010 22:55:30 +0000 Subject: lm_sensors: Upgrade pkg to 3.1.2. Still needs runit support. Closes FS#623. --- abs/extra-testing/lm_sensors/ChangeLog | 50 ++++++++++ abs/extra-testing/lm_sensors/PKGBUILD | 65 ++++++------ abs/extra-testing/lm_sensors/fancontrol.rc | 5 +- abs/extra-testing/lm_sensors/healthd | 46 +++++++++ abs/extra-testing/lm_sensors/healthd.conf | 16 +++ abs/extra-testing/lm_sensors/healthd.rc | 52 ++++++++++ abs/extra-testing/lm_sensors/sensord.conf | 4 + abs/extra-testing/lm_sensors/sensord.rc | 37 +++++++ abs/extra-testing/lm_sensors/sensors-detect.patch | 114 +++++++++++----------- abs/extra-testing/lm_sensors/sensors.rc | 106 ++++++++++---------- 10 files changed, 348 insertions(+), 147 deletions(-) create mode 100644 abs/extra-testing/lm_sensors/ChangeLog create mode 100644 abs/extra-testing/lm_sensors/healthd create mode 100644 abs/extra-testing/lm_sensors/healthd.conf create mode 100644 abs/extra-testing/lm_sensors/healthd.rc create mode 100644 abs/extra-testing/lm_sensors/sensord.conf create mode 100644 abs/extra-testing/lm_sensors/sensord.rc diff --git a/abs/extra-testing/lm_sensors/ChangeLog b/abs/extra-testing/lm_sensors/ChangeLog new file mode 100644 index 0000000..dfec49d --- /dev/null +++ b/abs/extra-testing/lm_sensors/ChangeLog @@ -0,0 +1,50 @@ +2010-02-02 Eric Belanger <eric@archlinux.org> + + * lm_sensors 3.1.2-1 + * Upstream update + * Fixed fancontrol daemon script (close FS#17775) + +2009-11-23 Eric Belanger <eric@archlinux.org> + + * lm_sensors 3.1.1-4 + * Added more configs in backup array (close FS#17260) + * Changed rrdtool optdepends to a depends + +2009-11-20 Eric Belanger <eric@archlinux.org> + + * lm_sensors 3.1.1-3 + * Fixed stopping of fancontrol daemon script (close FS#17083) + * Fixed healthd script (close FS#17089) + +2009-09-28 Eric Belanger <eric@archlinux.org> + + * lm_sensors 3.1.1-2 + * Fixed fancontrol daemon script (close FS#15269) + * Added sensord daemon script (close FS#15811) + +2009-06-24 Eric Belanger <eric@archlinux.org> + + * lm_sensors 3.1.1-1 + * Upstream update + * Added healthd daemon (close FS#14597) + +2009-03-03 Eric Belanger <eric@archlinux.org> + + * lm_sensors 3.1.0-1 + * Upstream update + * Updated sensors-detect.patch + +2009-01-03 Eric Belanger <eric@archlinux.org> + + * lm_sensors 3.0.3-2 + * Rebuilt against rrdtool 1.3.5 + +2008-11-08 Eric Belanger <eric@archlinux.org> + + * lm_sensors 3.0.3-1 + * Upstream update + * Updated sensors-detect.patch patch + * FHS man pages + * Changed sensors daemon script to move config in new location (cf. FS#9516) + * Did several other fixes and clean up in sensors daemon script + * Added ChangeLog diff --git a/abs/extra-testing/lm_sensors/PKGBUILD b/abs/extra-testing/lm_sensors/PKGBUILD index 487a6fe..226139a 100644 --- a/abs/extra-testing/lm_sensors/PKGBUILD +++ b/abs/extra-testing/lm_sensors/PKGBUILD @@ -1,41 +1,44 @@ -# $Id: PKGBUILD 8687 2008-08-15 15:06:46Z andyrtr $ -# Maintainer: aurelien <aurelien@archlinux.org> +# $Id: PKGBUILD 67093 2010-02-03 03:55:56Z eric $ +# Maintainer: Eric Belanger <eric@archlinux.org> # Contributor: Aurelien Foret <orelien@chez.com> + pkgname=lm_sensors -pkgver=3.0.2 -pkgrel=2 -pkgdesc="Collection of user space tools for general SMBus access and hardware monitoring." +pkgver=3.1.2 +pkgrel=7 +pkgdesc="Collection of user space tools for general SMBus access and hardware monitoring" arch=('i686' 'x86_64') +url="http://www.lm-sensors.org/" license=('GPL') -depends=('perl' 'sysfsutils') -makedepends=('bison' 'flex' 'rrdtool') -optdepends=('rrdtool: for logging with sensord') -backup=(etc/sensors3.conf) +depends=('perl' 'sysfsutils' 'rrdtool') +backup=('etc/sensors3.conf' 'etc/conf.d/healthd' 'etc/conf.d/sensord') +options=('!emptydirs') install=sensors.install -source=(http://dl.lm-sensors.org/lm-sensors/releases/lm_sensors-$pkgver.tar.bz2 - sensors.rc - fancontrol.rc - sensors-detect.patch) -url="http://www.lm-sensors.org/" -md5sums=('5b210ba9cc01f00161c438fd618484e5' - 'c9f7f38964963ae3ced4dff3f1f0b7b9' - 'f14e335a8eea27388892c36af8099782' - '6fd30ed1e5ac739b8a27f3913ba706f4') +source=(http://dl.lm-sensors.org/lm-sensors/releases/lm_sensors-${pkgver}.tar.bz2 \ + sensors.rc fancontrol.rc sensors-detect.patch healthd healthd.conf healthd.rc \ + sensord.conf sensord.rc) +md5sums=('58a9a225808ac4587c4c8cbd12b40b5c' 'c370f5e620bfe41113354a1e22c0c18c'\ + '1e04aad66debdb72557b4528bf79b742' '47c40b381d1f25d6634ae84cecf35f33'\ + '6549050897c237514aeaa2bb6cfd29ea' 'f649261f52bd4329347bf93f5f83cb0a'\ + '970408d2e509dc4138927020efefe323' '96a8dd468e81d455ec9b165bdf33e0b7'\ + '41a5c20854bbff00ea7174bd2276b736') +sha1sums=('4a3b13e4f9c18c29e7f853739bdd88ca7799fcc7' 'b2e664b9b87759991f02d0a1e8cac5e95098c0a5'\ + '66f3cdde688127f4e4e81b5ec3c180149b5c36ea' '47095a32a918d6be50bd8daa8aaa9c24940d60e9'\ + '78b5cd36c3cb8e98b972cdd8c4a12687d79a79a8' 'c6ddfebc20685ba69700f66038c6b00a7c0bdb80'\ + 'e662881f5d3f3f35a1bc97ba45d2c471dd28c37f' 'de8d4d65406815c389f8a04e2a8508a1ae6749c8'\ + '72a60251d1d55a67307dab4105d9f3f01a080af4') build() { - cd ${srcdir}/$pkgname-$pkgver - patch -Np0 -i ${srcdir}/sensors-detect.patch || return 1 - - make PREFIX=/usr PROG_EXTRA:=sensord user || return 1 - make user_install PREFIX=/usr DESTDIR=${pkgdir} - install -DT -m755 ${srcdir}/$pkgname-$pkgver/prog/sensord/sensord ${pkgdir}/usr/sbin/sensord - - install -DT -m755 ${srcdir}/sensors.rc ${pkgdir}/etc/rc.d/sensors - install -DT -m755 ${srcdir}/fancontrol.rc ${pkgdir}/etc/rc.d/fancontrol + cd "${srcdir}/${pkgname}-${pkgver}" + patch -p1 < ../sensors-detect.patch || return 1 - # remove the static lib - rm -rf ${pkgdir}/usr/lib/libsensors.a + make PROG_EXTRA=sensord BUILD_STATIC_LIB=0 \ + PREFIX=/usr MANDIR=/usr/share/man DESTDIR="${pkgdir}" install || return 1 - # FIXME: avoid conflicts with glibc headers - rm -rf ${pkgdir}/usr/include/linux + install -D -m755 "${srcdir}/sensors.rc" "${pkgdir}/etc/rc.d/sensors" || return 1 + install -D -m755 "${srcdir}/fancontrol.rc" "${pkgdir}/etc/rc.d/fancontrol" || return 1 + install -D -m755 "${srcdir}/healthd" "${pkgdir}/usr/sbin/healthd" || return 1 + install -D -m755 "${srcdir}/healthd.rc" "${pkgdir}/etc/rc.d/healthd" || return 1 + install -D -m644 "${srcdir}/healthd.conf" "${pkgdir}/etc/conf.d/healthd" || return 1 + install -D -m755 "${srcdir}/sensord.rc" "${pkgdir}/etc/rc.d/sensord" || return 1 + install -D -m644 "${srcdir}/sensord.conf" "${pkgdir}/etc/conf.d/sensord" || return 1 } diff --git a/abs/extra-testing/lm_sensors/fancontrol.rc b/abs/extra-testing/lm_sensors/fancontrol.rc index 7fc1bbf..bce5d7e 100644 --- a/abs/extra-testing/lm_sensors/fancontrol.rc +++ b/abs/extra-testing/lm_sensors/fancontrol.rc @@ -3,10 +3,11 @@ . /etc/rc.conf . /etc/rc.d/functions +PID=$(pidof -o %PPID -x /usr/sbin/fancontrol) case "$1" in start) stat_busy "Starting fancontrol" - /usr/sbin/fancontrol >/dev/null 2>&1 & + [ -z "$PID" ] && /usr/sbin/fancontrol >/dev/null 2>&1 & if [ $? -gt 0 ]; then stat_fail else @@ -16,7 +17,7 @@ case "$1" in ;; stop) stat_busy "Stopping fancontrol" - [ -f /var/run/fancontrol.pid ] && kill `cat /var/run/fancontrol.pid` + [ ! -z "$PID" ] && kill $PID &> /dev/null if [ $? -gt 0 ]; then stat_fail else diff --git a/abs/extra-testing/lm_sensors/healthd b/abs/extra-testing/lm_sensors/healthd new file mode 100644 index 0000000..0315dd7 --- /dev/null +++ b/abs/extra-testing/lm_sensors/healthd @@ -0,0 +1,46 @@ +#!/bin/bash + +# +# /usr/sbin/healthd +# + +. /etc/conf.d/healthd + +cmd="${ALARM_CMD}" +addr="${ADMIN_EMAIL}" +slp="${ALARM_SLEEP}" +sensors="/usr/bin/sensors" + + +while [ $# -gt 0 ] ; do + case "${1}" in + -c ) cmd="${2}" ; shift 2 ;; + -m ) addr="${2}" ; shift 2 ;; + -s ) slp="${2}" ; shift 2 ;; + * ) shift 1 ;; + esac +done + +[ -n "${cmd}" ] && [ -n "$( which -- "${cmd%% *}" )" ] || \ + [ -n "${addr}" ] || exit 1 + +[ "${slp}" -ge 2 ] || slp=600 + +while true ; do + sleep 15 + message="$( $sensors )" + case "$message" in + '' ) message='Could not get any sensor values !' ;; + *ALARM* ) : ;; + * ) message='' ;; + esac + if [ -n "$message" ]; then + if [ -n "${addr}" ]; then + echo "$message" | mail -s \ + "Sensors ALARM detected at host: $( hostname )" \ + "${addr}" + fi + [ -z "${cmd}" ] || ${cmd} & + sleep ${slp} + fi +done & diff --git a/abs/extra-testing/lm_sensors/healthd.conf b/abs/extra-testing/lm_sensors/healthd.conf new file mode 100644 index 0000000..36c5f55 --- /dev/null +++ b/abs/extra-testing/lm_sensors/healthd.conf @@ -0,0 +1,16 @@ +# +# /etc/conf.d/healthd +# + +# reset any pending alarms on startup +ALARM_RESET="yes" + +# where to sent mails on alarm +ADMIN_EMAIL="root" + +# Seconds to sleep when alarm detected before checking again +# If you want to fill up your mail inbox set this to 2. ;-) +ALARM_SLEEP=600 + +# command to run in background on each alarm +ALARM_CMD="beep -f 800 -l 500 -d 500 -r 600" diff --git a/abs/extra-testing/lm_sensors/healthd.rc b/abs/extra-testing/lm_sensors/healthd.rc new file mode 100644 index 0000000..7bb7951 --- /dev/null +++ b/abs/extra-testing/lm_sensors/healthd.rc @@ -0,0 +1,52 @@ +#!/bin/bash + +# +# /etc/rc.d/healthd +# + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/healthd + +maybe_alarm_reset() { + case "${ALARM_RESET}" in + yes) /usr/bin/sensors > /dev/null + ;; + no) true + ;; + *) false + esac + return $? +} + +PID=$(pidof -x -o %PPID /usr/sbin/healthd) +case "${1}" in + start) + stat_busy "Starting Health Daemon" + [ -z "${PID}" ] && maybe_alarm_reset && /usr/sbin/healthd &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + echo "${PID}" > /var/run/healthd.pid + add_daemon healthd + stat_done + fi + ;; + stop) + stat_busy "Stopping Health Daemon" + [ ! -z "${PID}" ] && kill ${PID} &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon healthd + stat_done + fi + ;; + restart) + $0 stop + sleep 2 + $0 start + ;; + *) echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/abs/extra-testing/lm_sensors/sensord.conf b/abs/extra-testing/lm_sensors/sensord.conf new file mode 100644 index 0000000..a1cf091 --- /dev/null +++ b/abs/extra-testing/lm_sensors/sensord.conf @@ -0,0 +1,4 @@ +# +# Parameters to be passed to sensord +# +SENSORD_ARGS="" diff --git a/abs/extra-testing/lm_sensors/sensord.rc b/abs/extra-testing/lm_sensors/sensord.rc new file mode 100644 index 0000000..e3ef4d2 --- /dev/null +++ b/abs/extra-testing/lm_sensors/sensord.rc @@ -0,0 +1,37 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/sensord + +PID=$(pidof -o %PPID /usr/sbin/sensord) +case "$1" in + start) + stat_busy "Starting sensord" + [ -z "$PID" ] && /usr/sbin/sensord ${SENSORD_ARGS} + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon sensord + stat_done + fi + ;; + stop) + stat_busy "Stopping sensord" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon sensord + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/abs/extra-testing/lm_sensors/sensors-detect.patch b/abs/extra-testing/lm_sensors/sensors-detect.patch index 981ed3d..1d12a2c 100644 --- a/abs/extra-testing/lm_sensors/sensors-detect.patch +++ b/abs/extra-testing/lm_sensors/sensors-detect.patch @@ -1,61 +1,61 @@ ---- prog/detect/sensors-detect.orig 2008-02-07 20:59:25.125302226 +0100 -+++ prog/detect/sensors-detect 2008-02-07 21:06:53.821929489 +0100 -@@ -5879,21 +5879,21 @@ - } - } +diff -Naur lm_sensors-3.1.0/prog/detect/sensors-detect lm_sensors-3.1.0-new/prog/detect/sensors-detect +--- lm_sensors-3.1.0/prog/detect/sensors-detect 2009-03-03 20:36:33.000000000 -0500 ++++ lm_sensors-3.1.0-new/prog/detect/sensors-detect 2009-03-03 20:52:06.000000000 -0500 +@@ -5282,21 +5282,21 @@ + } + } -- my $have_sysconfig = -d '/etc/sysconfig'; -- printf "Do you want to \%s /etc/sysconfig/lm_sensors? (\%s): ", -- (-e '/etc/sysconfig/lm_sensors' ? 'overwrite' : 'generate'), -+ my $have_sysconfig = -d '/etc/conf.d'; -+ printf "Do you want to \%s /etc/conf.d/lm_sensors? (\%s): ", -+ (-e '/etc/conf.d/lm_sensors' ? 'overwrite' : 'generate'), - ($have_sysconfig ? 'YES/no' : 'yes/NO'); - $_ = <STDIN>; - if (($have_sysconfig and not m/^\s*n/i) or m/^\s*y/i) { - unless ($have_sysconfig) { -- mkdir '/etc/sysconfig', 0777 -- or die "Sorry, can't create /etc/sysconfig ($!)"; -+ mkdir '/etc/conf.d', 0777 -+ or die "Sorry, can't create /etc/conf.d ($!)"; - } -- open(local *SYSCONFIG, ">/etc/sysconfig/lm_sensors") -- or die "Sorry, can't create /etc/sysconfig/lm_sensors ($!)"; -+ open(local *SYSCONFIG, ">/etc/conf.d/lm_sensors") -+ or die "Sorry, can't create /etc/conf.d/lm_sensors ($!)"; - print SYSCONFIG <<'EOT'; --# /etc/sysconfig/lm_sensors - Defines modules loaded by --# /etc/init.d/lm_sensors -+# /etc/conf.d/lm_sensors - Defines modules loaded by -+# /etc/rc.d/sensors - # Copyright (c) 1998 - 2001 Frodo Looijaard <frodol@dds.nl> +- my $have_sysconfig = -d '/etc/sysconfig'; +- printf "Do you want to \%s /etc/sysconfig/lm_sensors? (\%s): ", +- (-e '/etc/sysconfig/lm_sensors' ? 'overwrite' : 'generate'), ++ my $have_sysconfig = -d '/etc/conf.d'; ++ printf "Do you want to \%s /etc/conf.d/lm_sensors? (\%s): ", ++ (-e '/etc/conf.d/lm_sensors' ? 'overwrite' : 'generate'), + ($have_sysconfig ? 'YES/no' : 'yes/NO'); + $_ = <STDIN>; + if (($have_sysconfig and not m/^\s*n/i) or m/^\s*y/i) { + unless ($have_sysconfig) { +- mkdir('/etc/sysconfig', 0777) +- or die "Sorry, can't create /etc/sysconfig ($!)"; ++ mkdir('/etc/conf.d', 0777) ++ or die "Sorry, can't create /etc/conf.d ($!)"; + } +- open(local *SYSCONFIG, ">/etc/sysconfig/lm_sensors") +- or die "Sorry, can't create /etc/sysconfig/lm_sensors ($!)"; ++ open(local *SYSCONFIG, ">/etc/conf.d/lm_sensors") ++ or die "Sorry, can't create /etc/conf.d/lm_sensors ($!)"; + print SYSCONFIG "# Generated by sensors-detect on " . scalar localtime() . "\n"; + print SYSCONFIG <<'EOT'; +-# This file is sourced by /etc/init.d/lm_sensors and defines the modules to ++# This file is sourced by /etc/rc.d/lm_sensors and defines the modules to + # be loaded/unloaded. # - # This program is free software; you can redistribute it and/or modify -@@ -5914,8 +5914,8 @@ - # See also the lm_sensors homepage at: - # http://www.lm-sensors.org/ - # --# This file is used by /etc/init.d/lm_sensors and defines the modules to --# be loaded/unloaded. This file is sourced into /etc/init.d/lm_sensors. -+# This file is used by /etc/rc.d/sensors and defines the modules to -+# be loaded/unloaded. This file is sourced into /etc/rc.d/sensors. - # - # The format of this file is a shell script that simply defines the modules - # in order as normal variables with the special names: -@@ -5952,12 +5952,12 @@ - print SYSCONFIG $sysconfig; - close(SYSCONFIG); + # The format of this file is a shell script that simply defines variables: +@@ -5322,13 +5322,13 @@ + } + close(SYSCONFIG); + +- print "Copy prog/init/lm_sensors.init to /etc/init.d/lm_sensors\n". ++ print "Copy prog/init/lm_sensors.init to /etc/rc.d/lm_sensors\n". + "for initialization at boot time.\n" +- unless -f "/etc/init.d/lm_sensors"; ++ unless -f "/etc/rc.d/lm_sensors"; -- print "Copy prog/init/lm_sensors.init to /etc/init.d/lm_sensors\n". -+ print "Copy prog/init/lm_sensors.init to /etc/rc.d/sensors\n". - "for initialization at boot time.\n" -- unless -f "/etc/init.d/lm_sensors"; -+ unless -f "/etc/rc.d/sensors"; +- if (-x "/sbin/insserv" && -f "/etc/init.d/lm_sensors") { +- system("/sbin/insserv", "/etc/init.d/lm_sensors"); +- } elsif (-x "/sbin/chkconfig" && -f "/etc/init.d/lm_sensors") { ++ if (-x "/sbin/insserv" && -f "/etc/rc.d/lm_sensors") { ++ system("/sbin/insserv", "/etc/rc.d/lm_sensors"); ++ } elsif (-x "/sbin/chkconfig" && -f "/etc/rc.d/lm_sensors") { + system("/sbin/chkconfig", "lm_sensors", "on"); + if (-x "/sbin/service") { + system("/sbin/service", "lm_sensors", "start"); +@@ -5377,7 +5377,7 @@ + exit -1; + } -- if (-x "/sbin/insserv" && -f "/etc/init.d/lm_sensors") { -- system("/sbin/insserv", "/etc/init.d/lm_sensors"); -+ if (-x "/sbin/insserv" && -f "/etc/rc.d/sensors") { -+ system("/sbin/insserv", "/etc/rc.d/sensors"); - } elsif (-x "/sbin/chkconfig" && -f "/etc/init.d/lm_sensors") { - system("/sbin/chkconfig", "lm_sensors", "on"); - if (-x "/sbin/service") { +- if (-x "/sbin/service" && -f "/etc/init.d/lm_sensors" && ++ if (-x "/sbin/service" && -f "/etc/rc.d/sensors" && + -f "/var/lock/subsys/lm_sensors") { + system("/sbin/service", "lm_sensors", "stop"); + } diff --git a/abs/extra-testing/lm_sensors/sensors.rc b/abs/extra-testing/lm_sensors/sensors.rc index aa086eb..4acde22 100644 --- a/abs/extra-testing/lm_sensors/sensors.rc +++ b/abs/extra-testing/lm_sensors/sensors.rc @@ -1,27 +1,12 @@ #!/bin/bash -# -# chkconfig: 2345 26 74 + # description: sensors is used for monitoring motherboard sensor values. -# config: /etc/sysconfig/sensors -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# config: /etc/conf.d/lm_sensors # See also the lm_sensors homepage at: # http://www2.lm-sensors.nu/~lm78/index.html -# It uses a config file /etc/sysconfig/sensors that contains the modules to +# It uses a config file /etc/conf.d/lm_sensors that contains the modules to # be loaded/unloaded. That file is sourced into this one. # The format of that file a shell script that simply defines the modules @@ -31,46 +16,52 @@ . /etc/rc.conf . /etc/rc.d/functions -if grep -q sysfs /proc/mounts; then +PSENSORS=/usr/bin/sensors + +if $(grep -q sysfs /proc/mounts); then WITHSYS=1 else WITHSYS=0 fi -CONFIG=/etc/conf.d/lm_sensors -PSENSORS=/usr/bin/sensors -if [ ! -x $PSENSORS ]; then - PSENSORS=/usr/bin/sensors +if [ $WITHSYS == "0" ]; then + # If sensors isn't supported by the kernel, try loading the module... + [ -e /proc/sys/dev/sensors ] || /sbin/modprobe i2c-proc &>/dev/null + + # Don't bother if /proc/sensors still doesn't exist, kernel doesn't have support for sensors. + if ! [ -e /proc/sys/dev/sensors ]; then + echo "lm_sensors: kernel does not have sensors support" + stat_fail + fi + + # If sensors was not already running, unload the module... + [ -e /var/run/daemons/sensors ] || /sbin/modprobe -r i2c-proc &>/dev/null +fi + +if [ -e /etc/conf.d/lm_sensors ]; then + CONFIG=/etc/conf.d/lm_sensors +elif [ -e /etc/sysconfig/lm_sensors ]; then + # Moving config to new Arch-specific location + mv /etc/sysconfig/lm_sensors /etc/conf.d/lm_sensors + CONFIG=/etc/conf.d/lm_sensors fi case "$1" in start) stat_busy "Starting Up Sensors" - if [ $WITHSYS == "0" ]; then - # If sensors isn't supported by the kernel, try loading the module... - [ -e /proc/sys/dev/sensors ] || /sbin/modprobe i2c-proc &>/dev/null - - # Don't bother if /proc/sensors still doesn't exist, kernel doesn't have - # support for sensors. - [ -e /proc/sys/dev/sensors ] || exit 0 - - # If sensors was not already running, unload the module... - [ -e /var/lock/subsys/lm_sensors ] || /sbin/modprobe -r i2c-proc &>/dev/null - fi - - if [ -r "$CONFIG" ]; then - . "$CONFIG" - modules=`grep \^MODULE_ $CONFIG | wc -l | tr -d ' '` - i=0 - while [ $i -lt $modules ] ; do - module=`eval echo '$'MODULE_$i` - #echo starting module __${module}__ #debug - /sbin/modprobe $module &>/dev/null - i=`expr $i + 1` - done + . "$CONFIG" + modules=$(grep \^MODULE_ $CONFIG | wc -l | tr -d ' ') + i=0 + while [ $i -lt $modules ] ; do + module=$(eval echo '$'MODULE_$i) + # echo starting module __${module}__ #debug + /sbin/modprobe $module &>/dev/null + i=$(expr $i + 1) + done fi + $PSENSORS -s if [ $? -gt 0 ]; then @@ -85,14 +76,15 @@ case "$1" in stat_busy "Shutting Down Sensors" if [ -r "$CONFIG" ]; then - . "$CONFIG" - modules=`grep \^MODULE_ $CONFIG | wc -l | tr -d ' '` - i=`expr $modules` - while [ $i -ge 0 ] ; do - module=`eval echo '$'MODULE_$i` - /sbin/modprobe -r $module &>/dev/null - i=`expr $i - 1` - done + . "$CONFIG" + modules=$(grep \^MODULE_ $CONFIG | wc -l | tr -d ' ') + i=$(expr $modules - 1) + while [ $i -ge 0 ] ; do + module=$(eval echo '$'MODULE_$i) + # echo stoping module __${module}__ #debug + /sbin/modprobe -r $module &>/dev/null + i=$(expr $i - 1) + done fi if [ $WITHSYS == "0" ]; then @@ -107,9 +99,8 @@ case "$1" in fi ;; - dostatus) + status) $PSENSORS - RETVAL=$? ;; restart) @@ -119,9 +110,10 @@ case "$1" in ;; condrestart) - [ -e /var/lock/subsys/lm_sensors ] && restart || : + [ -e /var/run/daemons/sensors ] && $0 restart || : ;; *) - echo "Usage: sensors.init {start|stop|status|restart|reload|condrestart}" + echo "Usage: $0 {start|stop|restart|status|condrestart}" esac +exit 0 -- cgit v0.12