moved into main repo for pisi 2.0
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
from comar.service import *
|
||||
import os
|
||||
|
||||
serviceType = "server"
|
||||
serviceDefault = "on"
|
||||
serviceDesc = _({"en": "CUPS Printer Server",
|
||||
"tr": "CUPS Yazıcı Sunucusu"})
|
||||
serviceConf = "cups"
|
||||
|
||||
PIDFILE = "/run/cups/cupsd.pid"
|
||||
|
||||
@synchronized
|
||||
def start():
|
||||
# FIXME: After avahi before hal
|
||||
startDependencies("avahi")
|
||||
|
||||
# Load ppdev and lp drivers if wanted
|
||||
if config.get("LOAD_LP_MODULE") == "yes":
|
||||
os.system("/sbin/modprobe -q lp")
|
||||
os.system("/sbin/modprobe -q ppdev")
|
||||
|
||||
startService(command="/usr/sbin/cupsd",
|
||||
donotify=True)
|
||||
os.system("pidof -o %PPID /usr/sbin/cupsd > " + PIDFILE)
|
||||
|
||||
# Tell udevd to replay printer events
|
||||
# One for low-level usb
|
||||
os.system("udevadm trigger --subsystem-match=usb \
|
||||
--attr-match=bInterfaceClass=07 \
|
||||
--attr-match=bInterfaceSubClass=01 \
|
||||
--action=add")
|
||||
# One for usblp backend
|
||||
os.system("udevadm trigger --subsystem-match=usb \
|
||||
--property-match=DEVNAME=\"/dev/usb/lp*\" \
|
||||
--action=add")
|
||||
|
||||
|
||||
@synchronized
|
||||
def reload():
|
||||
if os.path.exists(PIDFILE):
|
||||
# 1 is SIGHUP
|
||||
os.kill(int(open(PIDFILE, "r").read().strip()), 1)
|
||||
|
||||
@synchronized
|
||||
def stop():
|
||||
stopService(pidfile=PIDFILE, donotify=True)
|
||||
if os.path.isfile(PIDFILE): os.unlink(PIDFILE)
|
||||
|
||||
def status():
|
||||
return isServiceRunning(pidfile=PIDFILE)
|
||||
Reference in New Issue
Block a user