#! /bin/bash # # Startup/shutdown script for HPLIP # # Note, this script file must start before cupsd. # # For chkconfig the HPLIP priority (ie: 50) must be less the cupsd # priority (ie: 55). # # For LSB install_initd the cups script file should have "hplip" in the # Should-Start field. # # chkconfig: 2345 50 10 # description: Start/stop script for HP Linux Imaging and Printing (HPLIP). # # (c) 2004 Copyright Hewlett-Packard Development Company, LP # # This sript adopted by Serge Volkov for ALT Linux Sisyphus # ### BEGIN INIT INFO # Provides: hplip # Required-Start: # Required-Stop: # Should-Start: # Should-Stop: # Default-Start: 3 5 # Default-Stop: # Description: Start/stop script for HP Linux Imaging and Printing (HPLIP) ### END INIT INFO # Do not load RH compatibility interface. WITHOUT_RC_COMPAT=1 # Source function library. . /etc/init.d/functions HPIOD_PIDFILE=/var/run/hpiod.pid HPSSD_PIDFILE=/var/run/hpssd.pid HPLIP_PORTFILE=/var/run/hpiod.port HPSSD_PORTFILE=/var/run/hpssd.port HPIOD_LOCKFILE=/var/lock/subsys/hpiod HPSSD_LOCKFILE=/var/lock/subsys/hpssd HPIOD=/usr/sbin/hpiod HPSSD=/usr/share/hplip/hpssd.py HPIODDIR=/usr/sbin HPSSDDIR=/usr/share/hplip PYTHON=/usr/bin/python HPSSD_DISPLAY=hpssd.py RETVAL=0 start() { start_daemon --pidfile "$HPIOD_PIDFILE" --lockfile "$HPIOD_LOCKFILE" --expect-user root -- $HPIOD start_daemon --pidfile "$HPSSD_PIDFILE" --lockfile "$HPSSD_LOCKFILE" --expect-user root -- $HPSSD RETVAL=$? return $RETVAL } stop() { stop_daemon --pidfile "$HPIOD_PIDFILE" --lockfile "$HPIOD_LOCKFILE" --expect-user root -- $HPIOD stop_daemon --pidfile "$HPSSD_PIDFILE" --lockfile "$HPSSD_LOCKFILE" --expect-user root --displayname "$HPSSD_DISPLAY" -- $PYTHON RETVAL=$? [ $RETVAL -eq 0 ] && ( rm -vf $HPSSD_PORTFILE && rm -vf $HPIOD_PORTFILE ) return $RETVAL } restart() { stop start } reload() { msg_reloading HPIOD stop_daemon --pidfile "$HPIOD_PIDFILE" --expect-user root -HUP -- $HPIOD msg_reloading HPIOD stop_daemon --pidfile "$HPSSD_PIDFILE" --expect-user root -HUP -- $HPSSD RETVAL=$? return $RETVAL } # See how we were called. case "$1" in start) start ;; stop) stop ;; reload) reload ;; restart) restart ;; condstop) if [ -e "$HPIOD_LOCKFILE" ] && [ -e "$HPSSD_LOCKFILE" ]; then stop fi ;; condrestart) if [ -e "$HPIOD_LOCKFILE" ] && [ -e "$HPSSD_LOCKFILE" ]; then restart fi ;; condreload) if [ -e "$HPIOD_LOCKFILE" ] && [ -e "$HPSSD_LOCKFILE" ]; then reload fi ;; status) status --pidfile "$HPIOD_PIDFILE" --expect-user root -- $HPIOD status --pidfile "$HPSSD_PIDFILE" --expect-user root --displayname "$HPSSD_DISPLAY" -- $PYTHON RETVAL=$? ;; *) msg_usage "${0##*/} {start|stop|reload|restart|condstop|condrestart|condreload|status}" RETVAL=1 esac exit $RETVAL