Magellan Linux

Diff of /alx-src/branches/alxconf-060/functions/config_printers.sh

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1971 by niro, Thu Apr 14 19:29:35 2011 UTC revision 1972 by niro, Sat May 7 11:02:15 2011 UTC
# Line 1  Line 1 
1  # $Header: /home/cvsd/alx-cvs/alx-src/alxconfig-ng/functions/config_printers.sh,v 1.9 2005-10-09 21:29:41 niro Exp $  # $Id$
2  # configures printing on the host via mysql db settings  # configures printing on the host via mysql db settings
3    
4  get_printer_settings()  get_printer_settings()
# Line 36  config_printing() Line 36  config_printing()
36   # first of all get the vars   # first of all get the vars
37   get_printer_settings   get_printer_settings
38    
39   # first of all delete all printers, by wiping /etc/cups/printers.conf   # first of all delete all printers, by wiping /etc/printcap and all spooler directories
40   # please note that cups must be restarted or reloaded or stopped   :> /etc/printcap
41   [ -n "$(pidof cupsd)" ] && /etc/init.d/cups stop &> /dev/null   if [[ -d /var/spool/lpd ]]
42   :> /etc/cups/printers.conf   then
43     rm -rf /var/spool/lpd
44     install -d /var/spool/lpd
45     install -d /var/spool/lpd/lp
46     chown lp:lp /var/spool/lpd/lp
47     chmod 0700 /var/spool/lpd/lp
48     fi
49    
50   for (( i=0; i < ALX_COUNT; i++ ))   for (( i=0; i < ALX_COUNT; i++ ))
51   do   do
52   # get real port settings   # get real port settings
53   case ${ALX_PORT[${i}]} in   case ${ALX_PORT[${i}]} in
54   lpt1)   lpt[0-9]*) port="/dev/lp$(( ${port/lpt/}-1 ))" ;;
55   port="parallel:/dev/lp0"   com[0-9]*) port="/dev/ttyS$(( ${port/com/}-1 ))" ;;
56   ;;   usb[0-9]*) port="/dev/usb/lp$(( ${port/usb/}-1 ))" ;;
57   com1)   #lpd) port="lpd://${ip}/${share}" ;;
58   port="serial:/dev/ttyS0?baud=9600+bits=8+parity=none+flow=none"   #socket) port="socket://${ip}:${share}" ;;
  ;;  
  com2)  
  port="serial:/dev/ttyS1?baud=9600+bits=8+parity=none+flow=none"  
  ;;  
  usb1)  
  port="usb:/dev/usb/lp0"  
  ;;  
  usb2)  
  port="usb:/dev/usb/lp1"  
  ;;  
  lpd)  
  port="lpd://${ALX_IP[${i}]}/${ALX_SHARE[${i}]}"  
  ;;  
  socket)  
  port="socket://${ALX_IP[${i}]}:${ALX_SHARE[${i}]}"  
  ;;  
59   esac   esac
60    
61   # now add new printers (writing printers.conf)   # now add new printers (writing printcap)
62   echo "<Printer ${ALX_PRINTER_NAME[${i}]}>" >> /etc/cups/printers.conf   echo "#--- added by alxconfig ---" >> /etc/printcap
63   echo "Info ${ALX_PRINTER_NAME[${i}]}" >> /etc/cups/printers.conf   echo "${ALX_PRINTER_NAME[${i}]}|${ALX_PRINTER_NAME[${i}]}" >> /etc/printcap
64   echo "DeviceURI ${port}" >> /etc/cups/printers.conf   echo " :lp=${port}" >> /etc/printcap
65   echo "State Idle" >> /etc/cups/printers.conf   echo " :sd=/var/spool/lpd/${ALX_PRINTER_NAME[${i}]}" >> /etc/printcap
66   echo "Accepting Yes" >> /etc/cups/printers.conf   echo "#-----------------------"
67   echo "JobSheets none none" >> /etc/cups/printers.conf   echo >> /etc/printcap
  echo "QuotaPeriod 0" >> /etc/cups/printers.conf  
  echo "PageLimit 0" >> /etc/cups/printers.conf  
  echo "KLimit 0" >> /etc/cups/printers.conf  
  echo "</Printer>" >> /etc/cups/printers.conf  
  done  
68    
69   # setup lpd print-services   # install spooler directories
70   echo "printer stream tcp nowait lp /usr/lib/cups/daemon/cups-lpd cups-lpd" > /etc/inetd.conf   install -o lp -g lp -m0700 -d /var/spool/lpd/${ALX_PRINTER_NAME[${i}]}
71     done
72    
73   # start samba and cups if ALX_COUNT > 0   # start lprng if ALX_COUNT > 0
74   if [[ ${ALX_COUNT} != 0 ]]   if [[ ${ALX_COUNT} != 0 ]]
75   then   then
76   rc-config add inetd &> /dev/null   rc-config add lprng &> /dev/null
  rc-config add cups &> /dev/null  
  rc-config add samba &> /dev/null  
77   else   else
78   rc-config del inetd &> /dev/null   rc-config del lprng &> /dev/null
  rc-config del cups &> /dev/null  
  rc-config del samba &> /dev/null  
79   fi   fi
80  }  }

Legend:
Removed from v.1971  
changed lines
  Added in v.1972