CUPS: Difference between revisions
No edit summary |
m Updated Download URL to cups.org where more recent stable source can be found |
||
| (30 intermediate revisions by 13 users not shown) | |||
| Line 1: | Line 1: | ||
{| style="text-align: left; background-color: AliceBlue;" | {| style="text-align: left; background-color: AliceBlue;" | ||
|- | |-valign="top" | ||
!Download Source: | !Download Source: | ||
| http:// | | http://www.cups.org/software/{{CUPS-Version}}/cups-{{CUPS-Version}}-source.tar.bz2 | ||
|} | |} | ||
---- | ---- | ||
{{Package-Introduction|The Common Unix Printing System (CUPS) is a print spooler and associated utilities. It is based on the "Internet Printing Protocol" and provides printing services to most PostScript and raster printers.|http://www.cups.org/}} | |||
{{Note|If you get "Unsuported format, application/postscript" errors, try installing Cups/Ghostscript/foomatic (if needed), then start cups.}} | |||
== Dependencies == | == Dependencies == | ||
| Line 13: | Line 17: | ||
* [[libpng]] | * [[libpng]] | ||
* [[LibTIFF]] | * [[LibTIFF]] | ||
=== Optional === | === Optional === | ||
* [[OpenSSL]] or [[GnuTLS]] | * [[OpenSSL]] or [[GnuTLS]] | ||
* [[D-BUS]] | |||
* [[Linux-PAM]] | * [[Linux-PAM]] | ||
* [[PHP]] | * [[PHP]] | ||
| Line 22: | Line 28: | ||
* [[libpaper]] | * [[libpaper]] | ||
* [[Valgrind]] | * [[Valgrind]] | ||
* [[OpenLDAP]] | |||
* [[acl]] | |||
== Configuration Information == | |||
{{Note|CUPS does not use ''DESTDIR'', CUPS uses ''BUILDROOT'' instead. Use ''BUILDROOT'' as you would normally use ''DESTDIR''.}} | |||
== Creating the lp User == | |||
useradd -c "Print Service User" -d /dev/null -g lp -s /bin/false -u | useradd -c "Print Service User" -d /dev/null -g lp -s /bin/false -u 10 lp | ||
If you utilize Linux-PAM, you need to modify some files so CUPS can find needed headers. Make the appropriate modifications using the following command: | == Non-Multilib == | ||
If you utilize [[Linux-PAM]], you need to modify some files so CUPS can find needed headers. Make the appropriate modifications using the following command: | |||
sed -i -e "s@pam/pam@security/pam@g" \ | sed -i -e "s@pam/pam@security/pam@g" \ | ||
| Line 41: | Line 53: | ||
Install the package | Install the package | ||
make install | make install && | ||
rm -rfv /etc/rc.d/*/*cups | |||
CUPS' man pages are compressed. If you want to uncompress them, use the following commands: | |||
gunzip -v /usr/share/man/man1/{cancel,cups{-config,test{dsc,ppd}},lp{,options,passwd,q,rm,r,stat}}.1.gz | |||
gunzip -v /usr/share/man/man5/{{classes,client,cups-snmp,cupsd,printers,subscriptions,mailto}.conf,mime.{convs,types}}.5.gz | |||
gunzip -v /usr/share/man/man7/{backend,filter}.7 | |||
gunzip -v /usr/share/man/man8/{accept,cups{d,addsmb,enable,-{deviced,driverd,lpd,polld,}},lp{admin,info,move,c}}.8.gz | |||
rm -v /usr/share/man/man8/{reject,cupsdisable}.8.gz | |||
ln -sv accept.8 /usr/share/man/man8/reject.8 | |||
ln -sv cupsenable.8 /usr/share/man/man8/cupsdisable.8 | |||
If wanting to print to a Windows printer, pass this line to add smb support | |||
ln -s `which smbspool` /usr/lib/cups/backend/smb | |||
== Multilib == | |||
=== 32Bit === | === 32Bit === | ||
| Line 58: | Line 83: | ||
Compile the package: | Compile the package: | ||
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" USE_ARCH=32 ./configure && | CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" USE_ARCH=32 ./configure \ | ||
--libdir=/usr/lib && | |||
make | make | ||
| Line 64: | Line 90: | ||
make install && | make install && | ||
rm -rfv /etc/rc.d/*/*cups && | |||
mv -v /usr/bin/cups-config{,-32} | mv -v /usr/bin/cups-config{,-32} | ||
If wanting to print to a Windows printer, pass this line to add smb support (Untested) | |||
ln -s `which smbspool` /usr/lib/cups/backend/smb | |||
=== N32 === | === N32 === | ||
| Line 75: | Line 106: | ||
Compile the package: | Compile the package: | ||
sed -i '/CUPS_SERVERBIN/s:/lib:&32:' configure && | |||
CC="gcc ${BUILDN32}" CXX="g++ ${BUILDN32}" USE_ARCH=n32 ./configure \ | CC="gcc ${BUILDN32}" CXX="g++ ${BUILDN32}" USE_ARCH=n32 ./configure \ | ||
--libdir=/usr/lib32 && | --libdir=/usr/lib32 && | ||
| Line 82: | Line 114: | ||
make install && | make install && | ||
rm -rfv /etc/rc.d/*/*cups && | |||
mv -v /usr/bin/cups-config{,-n32} | mv -v /usr/bin/cups-config{,-n32} | ||
If wanting to print to a Windows printer, pass this line to add smb support | |||
(Untested) | |||
ln -s `which smbspool` /usr/lib32/cups/backend/smb | |||
=== 64Bit === | === 64Bit === | ||
| Line 93: | Line 131: | ||
Compile the package: | Compile the package: | ||
sed -i '/CUPS_SERVERBIN/s:/lib:&64:' configure && | |||
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 ./configure \ | CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 ./configure \ | ||
--libdir=/usr/lib64 && | --libdir=/usr/lib64 && | ||
| Line 100: | Line 139: | ||
make install && | make install && | ||
rm -rfv /etc/rc.d/*/*cups && | |||
mv -v /usr/bin/cups-config{,-64} && | mv -v /usr/bin/cups-config{,-64} && | ||
ln -sfv multiarch_wrapper /usr/bin/cups-config | ln -sfv multiarch_wrapper /usr/bin/cups-config | ||
CUPS' man pages are compressed. If you want to uncompress them, use the following commands: | |||
gunzip -v /usr/share/man/man1/{cancel,cups{-config,test{dsc,ppd}},lp{,options,passwd,q,rm,r,stat}}.1.gz | |||
gunzip -v /usr/share/man/man5/{{classes,client,cups-snmp,cupsd,printers,subscriptions,mailto}.conf,mime.{convs,types}}.5.gz | |||
gunzip -v /usr/share/man/man7/{backend,filter}.7 | |||
gunzip -v /usr/share/man/man8/{accept,cups{d,addsmb,enable,-{deviced,driverd,lpd,polld,}},lp{admin,info,move,c}}.8.gz | |||
rm -v /usr/share/man/man8/{reject,cupsdisable}.8.gz | |||
ln -sv accept.8 /usr/share/man/man8/reject.8 | |||
ln -sv cupsenable.8 /usr/share/man/man8/cupsdisable.8 | |||
If wanting to print to a Windows printer, pass this line to add smb support | |||
(Untested) | |||
ln -s `which smbspool` /usr/lib64/cups/backend/smb | |||
== Configuring == | == Configuring == | ||
| Line 107: | Line 164: | ||
=== BootScript === | === BootScript === | ||
Install the init script included in the [[ | Install the init script included in the [[bootscripts]] package. | ||
make install-cups | make install-cups | ||
[[Category:Printing]] | |||
Latest revision as of 10:19, 5 October 2013
| Download Source: | http://www.cups.org/software/1.6.4/cups-1.6.4-source.tar.bz2 |
|---|
Introduction to CUPS
The Common Unix Printing System (CUPS) is a print spooler and associated utilities. It is based on the "Internet Printing Protocol" and provides printing services to most PostScript and raster printers.
Project Homepage: http://www.cups.org/
Dependencies
Required
Optional
Configuration Information
Creating the lp User
useradd -c "Print Service User" -d /dev/null -g lp -s /bin/false -u 10 lp
Non-Multilib
If you utilize Linux-PAM, you need to modify some files so CUPS can find needed headers. Make the appropriate modifications using the following command:
sed -i -e "s@pam/pam@security/pam@g" \
{config-scripts/cups-pam.m4,scheduler/auth.c,configure}
Compile the package:
./configure && make
Install the package
make install && rm -rfv /etc/rc.d/*/*cups
CUPS' man pages are compressed. If you want to uncompress them, use the following commands:
gunzip -v /usr/share/man/man1/{cancel,cups{-config,test{dsc,ppd}},lp{,options,passwd,q,rm,r,stat}}.1.gz
gunzip -v /usr/share/man/man5/{{classes,client,cups-snmp,cupsd,printers,subscriptions,mailto}.conf,mime.{convs,types}}.5.gz
gunzip -v /usr/share/man/man7/{backend,filter}.7
gunzip -v /usr/share/man/man8/{accept,cups{d,addsmb,enable,-{deviced,driverd,lpd,polld,}},lp{admin,info,move,c}}.8.gz
rm -v /usr/share/man/man8/{reject,cupsdisable}.8.gz
ln -sv accept.8 /usr/share/man/man8/reject.8 ln -sv cupsenable.8 /usr/share/man/man8/cupsdisable.8
If wanting to print to a Windows printer, pass this line to add smb support
ln -s `which smbspool` /usr/lib/cups/backend/smb
Multilib
32Bit
If you utilize Linux-PAM, you need to modify some files so CUPS can find needed headers. Make the appropriate modifications using the following command:
sed -i -e "s@pam/pam@security/pam@g" \
{config-scripts/cups-pam.m4,scheduler/auth.c,configure}
Compile the package:
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" USE_ARCH=32 ./configure \
--libdir=/usr/lib &&
make
Install the package
make install &&
rm -rfv /etc/rc.d/*/*cups &&
mv -v /usr/bin/cups-config{,-32}
If wanting to print to a Windows printer, pass this line to add smb support (Untested)
ln -s `which smbspool` /usr/lib/cups/backend/smb
N32
If you utilize Linux-PAM, you need to modify some files so CUPS can find needed headers. Make the appropriate modifications using the following command:
sed -i -e "s@pam/pam@security/pam@g" \
{config-scripts/cups-pam.m4,scheduler/auth.c,configure}
Compile the package:
sed -i '/CUPS_SERVERBIN/s:/lib:&32:' configure &&
CC="gcc ${BUILDN32}" CXX="g++ ${BUILDN32}" USE_ARCH=n32 ./configure \
--libdir=/usr/lib32 &&
make
Install the package
make install &&
rm -rfv /etc/rc.d/*/*cups &&
mv -v /usr/bin/cups-config{,-n32}
If wanting to print to a Windows printer, pass this line to add smb support (Untested)
ln -s `which smbspool` /usr/lib32/cups/backend/smb
64Bit
If you utilize Linux-PAM, you need to modify some files so CUPS can find needed headers. Make the appropriate modifications using the following command:
sed -i -e "s@pam/pam@security/pam@g" \
{config-scripts/cups-pam.m4,scheduler/auth.c,configure}
Compile the package:
sed -i '/CUPS_SERVERBIN/s:/lib:&64:' configure &&
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 ./configure \
--libdir=/usr/lib64 &&
make
Install the package
make install &&
rm -rfv /etc/rc.d/*/*cups &&
mv -v /usr/bin/cups-config{,-64} &&
ln -sfv multiarch_wrapper /usr/bin/cups-config
CUPS' man pages are compressed. If you want to uncompress them, use the following commands:
gunzip -v /usr/share/man/man1/{cancel,cups{-config,test{dsc,ppd}},lp{,options,passwd,q,rm,r,stat}}.1.gz
gunzip -v /usr/share/man/man5/{{classes,client,cups-snmp,cupsd,printers,subscriptions,mailto}.conf,mime.{convs,types}}.5.gz
gunzip -v /usr/share/man/man7/{backend,filter}.7
gunzip -v /usr/share/man/man8/{accept,cups{d,addsmb,enable,-{deviced,driverd,lpd,polld,}},lp{admin,info,move,c}}.8.gz
rm -v /usr/share/man/man8/{reject,cupsdisable}.8.gz
ln -sv accept.8 /usr/share/man/man8/reject.8 ln -sv cupsenable.8 /usr/share/man/man8/cupsdisable.8
If wanting to print to a Windows printer, pass this line to add smb support (Untested)
ln -s `which smbspool` /usr/lib64/cups/backend/smb
Configuring
BootScript
Install the init script included in the bootscripts package.
make install-cups