Slashdot Mirror


CUPS - Common Unix Printing System

McSnarf writes "What is CUPS, anyhow? And does it make sense to buy a book about a GPLed piece of software? CUPS is an acronym for Common Unix Printing System, software that was written to replace the rather powerless printing system found in Unix and Linux. If you run any current Linux distro, the chances are that you already use CUPS for printing." That being the case, read on for McSnarf's review of Michael R. Sweet's book on the topic. CUPS - Common Unix Printing System author Michael R. Sweet pages 650 publisher SAMS Publishing rating 10 reviewer McSnarf ISBN 0672321963 summary More than just a complete reference to CUPS

Background Information CUPS is developed and maintained by Easy Software Products, which is co-owned by the author of the book, Mike Sweet.

The complete table of contents for CUPS - Common Unix Printing System, aka "The Octopus Book" can be found here. The CUPS web site also contains errata lists and example code. In addition, Easy Software Products sells a companion CD for the book, only available on their web site.

Who should read it? If you do not use a printer with Unix or Linux, or if you do and you are perfectly happy with the results (maybe because the distro came with all the right stuff pre-installed), this book is not for you.

However, if you are serious about printing, if you are considering replacing the outdated legacy printing system that came with your Unix or Linux or if you are a developer even remotely interested in Linux/Unix printing, this book is for you.

Did I mention that the Octopus Book is also very helpful when it comes to understanding IPP, the Internet Printing Protocol? If you tried to read through all the RFCs on IPP out there and managed to understand IPP afterwards -- congratulations! I tried that, failed, bought the Octopus Book and finally understood.

How will it help users and admins? This book will show you how to install, administer and use CUPS. While the documentation that comes with CUPS is very good already, having everything in one handy package has its advantages, especially as the book goes into more detail than the on-line documentation. In addition, this book will explain to you in great detail how to extend CUPS. If you've ever wanted to be able to directly print some rather unusual file type -- or need a mechanism to create PDF files and email a copy of each PDF whenever you print them to a certain printer, this book will tell you how to do that.

Anything for developers? Sure. Complete API documentation with loads of example code. Everything from "How can I add good printing support to my application" to "How do I write a printer driver?" is in there. Likes and dislikes Of course, no book is perfect. This book comes close, but you should know that a lot of it is already available for free on the CUPS web site. It also lacks details on how to rip the old printing system out of your legacy Unix -- but if you've got root, this is something you should know anyhow.

Another thing - it is not as funny as Terry Pratchett. But I can live with that.

As you might have noticed, I really like this book. It definitely made my work much easier -- I work for a manufacturer of (among other things) large printers and this (by now well-worn) book has been granted dedicated space on a very crowded desktop.

You can purchase CUPS - Common Unix Printing System from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

43 of 248 comments (clear)

  1. lpd powerless? by Merlin83 · · Score: 4, Interesting

    After the story a few days ago about how it was so flexible and could be used for queueing up MP3s etc?

    1. Re:lpd powerless? by wiggys · · Score: 4, Funny
      I guess the idea is to not use lpd for printing but instead use it for queueing up MP3 files.

      So what should you use for printing? MPG123 of course!

      --

      Sorry, but my karma just ran over your dogma.

    2. Re:lpd powerless? by TheRaven64 · · Score: 3, Informative
      I would be happy if i could use CUPS to print directly to PDFs instead of a printer.

      Uh, you can. If your application produces postscript output, then just set up a 'printer' which filtes it through ghostscript with the -sDEVICE=pdfwrite switch and then outputs to a file instead of a printer port.

      --
      I am TheRaven on Soylent News
  2. Heh. by American+AC+in+Paris · · Score: 4, Funny
    And does it make sense to buy a book about a GPLed piece of software?

    ...after all, you could just write "RTFM!" on a Post-It and stick it to your monitor.

    Wah-Lah^H^H^H^H^H^H^H Walla^H^H^H^H^H Viola^H^H^H^H^H Voilà! Instant CUPS book!

    --

    Obliteracy: Words with explosions

  3. Well ... let's see here ... by SuperDuG · · Score: 3, Insightful
    And does it make sense to buy a book about a GPLed piece of software?

    Of course not, god knows that reading a man page or a how-to is much easier than an illustrated bound guide.

    What the hell kind of question is this? Of course it makes sense, especially if you don't know much or anything about the software. What do you think that everyone is some kind of "programmer" that will just take the source and read it to find out what it does? Of course not, cups is fairly easy to setup especially with all the gui's to configure it, but that doesn't mean that it wouldn't hurt to read a book on the subject to make it a little easier.

    This might shock ya, but it also "makes sense" to click that little "Donate" button on GPL'd software websites. It's not as common on some would let on. Supporting open source is more than just saying "I use open source".

    --
    Ignore the "p2p is theft" trolls, they're just uninformed
    1. Re:Well ... let's see here ... by mark_lybarger · · Score: 3, Insightful

      um, the poster was asking a question that was answered in their "review" via the who is this book good for section.

      to comment on the review, i myself found the review quite lacking in substance, but the book might be the same. in my experience with CUPS (ok, i'm using a couple 'a lexmark printers, but they were fairly cheap), it's a major PITA to setup and work reliably.

    2. Re:Well ... let's see here ... by TheRaven64 · · Score: 3, Funny
      This makes about as much sense as asking if you should buy "Moby Dick" or a Bible since they're in public domain.

      Actually, there is no reasonable reason buying a Bible. If you don't have one, just let one of your local evengelical churches know, and they will give you at least one. My copy was kindly provided by the Gideons, and was a most entertaining read, with the exception of chronicals, which should have been cut, and included in the special features deleted scenes section (apocrypha) if required. My favourite part was Leviticus, which explains a load of things the christians aren't meant to do. Oh, and the Latin version is better.

      --
      I am TheRaven on Soylent News
  4. You may be a CUPS user... by Mononoke · · Score: 3, Interesting
    If you run any current Linux distro, the chances are that you already use CUPS for printing.
    Even well-camouflaged Linux distros like Mac OS X.

    --
    NetInfo connection failed for server 127.0.0.1/local
    1. Re:You may be a CUPS user... by cant_get_a_good_nick · · Score: 3, Insightful

      Mod this retard down, OSX isn't linux.

      That was his point, the reviewer stated that if you use Linux you're already using this. He was pointing out that fairly narrow view, there's more out there than just Linux.

    2. Re:You may be a CUPS user... by Shenkerian · · Score: 4, Informative
      You don't seem the trolling type, so I'll assume you actually believe your statement.

      Mac OS X is absolutely not a "well-camoflaged" Linux distribution. Mac OS X is Unix. It's essentially FreeBSD with a Mach microkernel.

      But yes, being Unix, Mac OS X does use CUPS.

      --
      You tell me how "whilst" differs from "while," and I'll stop calling you a pretentious jackass.
    3. Re:You may be a CUPS user... by Andrewkov · · Score: 3, Funny

      So I should stop calling it GNU/OS X? ;-)

  5. Stupid, stupid, stupid. by grub · · Score: 5, Funny


    We don't need a stinking printing system, remember that all these nifty computers are going to bring us the "Paperless Office"! At least thats what we were told in the 80s.

    --
    Trolling is a art,
  6. Of course it makes sense to buy the book by Anonymous Coward · · Score: 5, Insightful

    Everyone has spent the last decade complaining that Community-maintained software has poor or no documentation. A good reason for that is that its more fun to code than to write down in english what you did after the fact. If I have to shell out money to entice somebody to write good documentation for something I use, then I will definitely do it.

    1. Re:Of course it makes sense to buy the book by mark_lybarger · · Score: 3, Interesting

      good documentation

      there's a major difference that and just documentation. man pages are documentation. there's web sites with how-to guides for other documentation. and there's plenty of open source software based books that are just not worth the read. so the author was trying to let you know if this book is going to be worth the $$ you spend.

  7. CUPS is part of the 'killer app' trilogy by Alkarismi · · Score: 5, Insightful

    CUPS coupled with Samba and OpenLDAP now provides a one-stop replacement for authentication and file/print for most organisations currently running a MS back-end. Great to see some dead treeware on the subject

    1. Re:CUPS is part of the 'killer app' trilogy by Azghoul · · Score: 5, Interesting

      Now there's a book I'd buy. The problem I have is seeing all this great stuff from a bird's eye view: How would someone know how all this stuff connects and interoperates? Or even, how would one know that they DO interoperate?

      Is there a book that talks about this kind of top-down view? How to Administer a Small Business Using Nothing But OSS and Your Brain.

      Maybe even a "cookbook" series:
      - Implementing CUPS for Sweet Printing Stuff.
      - Using OpenLDAP: Why the hell you should.
      etc...

      Anyway, just a thought.

    2. Re:CUPS is part of the 'killer app' trilogy by Alkarismi · · Score: 4, Interesting

      Oops, a bit premature with the 'submit' button there.
      I meant to add that Samba + CUPS + OpenLDAP will do pretty much everything most businesses need for a back-end serving their MS desktops. It will also pave the way for bringing in new platforms (whether they be Open Source, MacOS X, whatever).
      We've got a full case study illustrating this trilogy here:
      http://www.siriusit.co.uk/support/casestudi es/k_g_ case.html
      CUPS will give equal quality/ease of use/simple admin printing to your *NIX and MacOS users as your Windows users. Couple this with an OpenLDAP authentication backend and you're in a great position to diminish your companies reliance on MS software, or even eliminate it on the back-end entirely.
      Don't want to go on too much more, but the features coming up in Samba 3.0 (due rsn), especially enhanced LDAP support and MS AS interoperability make this trilogy a no-brainer!

    3. Re:CUPS is part of the 'killer app' trilogy by Alkarismi · · Score: 4, Informative

      I agree, this would be a great book!
      We've started an LDAP howto for some of it, but haven't worked in compatibility with CUPS, Sendmail, Cyrus, etc *yet*.
      I should really mention Gerald Carter's LDAP book published by O'Reilly - this is for sure a part of the 'big picture'
      Our howto is at http://www.siriusit.co.uk/documents/index_ldap.htm l
      in case you're interested

    4. Re:CUPS is part of the 'killer app' trilogy by DShard · · Score: 5, Funny

      Maybe even a "cookbook" series:
      - Implementing CUPS for Sweet Printing Stuff.
      - Using OpenLDAP: Why the hell you should.
      etc...


      I would like a Why the hell you should book series. It would make for a get row on my bookshelf. We could do a series for MS products two... Maintaining Exchange: What the f*ck were you thinking?

  8. Unix printing by Arethan · · Score: 5, Insightful

    I must admit, I've never been very good at setting up printers in Unix. If I don't have access to the Redhat printconf gui utility, I'm pretty lost. This is bad considering that I'm a unix admin at heart. I guess I've never really had the need to configure many printers on Unix boxes, and when I do, it is always conveniently enough a RedHat box.

    I might just have to pick this book up. Anyone have any other suggestions on how to demystify printing in Unix? I understand how to use the lpr command, and how to kill jobs with lprm and list them with lpstat, but I'm pretty much a noob at configuring printers. A complete guide on how it all works would be nice. I'm pretty sketchy on the whole "filters" idea, and wouldn't know where to start to set up CUPS or LPD if all I had was a command line available.

    1. Re:Unix printing by SuperDuG · · Score: 3, Funny
      This is bad considering that I'm a unix admin at heart.

      If this post is true, lets hope that you're not a "unix admin at work".

      Demistifying printing in Unix? Since when is RedHat Unix, are you working for SCO?!

      --
      Ignore the "p2p is theft" trolls, they're just uninformed
    2. Re:Unix printing by DevNull+Ogre · · Score: 5, Informative

      LinuxPrinting.org rocks. Lots of good information with quality specifics for just about every printer that works with Linux. It has taken away much of the pain of printer configuration.

    3. Re:Unix printing by geders · · Score: 3, Informative

      I've never used Redhat's GUI thingy, but KDE has a _great_ Printing Manager built in that has made all this configuration stuff easy as (gasp) Windows. Its available in K Control panel, under Peripherals->Printers (also in the KMenu by default too). Anyway, on my Gentoo box I have never had a second of problems printing with this handy utility...it will even scan a subnet to find all your network printers, so conveinent!

    4. Re:Unix printing by joestar · · Score: 3, Informative

      Remember: one of the CUPS main developpers is employed by MandrakeSoft and Mandrake Linux has been the first Linux distribution to provide CUPS by default. That could explain the good CUPS support in Mandrake 9.1.

  9. More than just a complete reference to CUPS by Timesprout · · Score: 5, Funny

    It has all the low down on saucers as well

    --
    Do not try to read the dupe, thats impossible. Instead, only try to realize the truth
    What truth?
    There is no dupe
  10. Finally! by inertia187 · · Score: 5, Funny

    Finally, a non-recursive UNIX acronym!

    --
    A programmer is a machine for converting coffee into code.
  11. Hahaha by Plasmic · · Score: 5, Insightful
    And does it make sense to buy a book about a GPLed piece of software?
    Ever heard of O'Reilly? They've got books about tons of open source software: sendmail, BIND, Samba, CVS, emacs, FreeBSD, bash, etc.

    You don't need books about GPL software. Just read the source code. Riiight.
  12. pratchett by grantsellis · · Score: 4, Funny

    Another thing - it is not as funny as Terry Pratchett. But I can live with that.

    Dude, if you can be as funny as Pratchett while writing about configuring printers then you're definitely in the wrong field.

  13. I should know this? by C+Joe+V · · Score: 5, Insightful
    It also lacks details on how to rip the old printing system out of your legacy Unix -- but if you've got root, this is something you should know anyhow.

    That's bogus. Anyone who has installed a system on his or her home computer will have root, but nowhere near all of them will know where all the components that have to be ripped out are located. I know I don't.

    That said, I suppose replacing a legacy system with CUPS might not be considered on-topic for this book... but there seems to be a niche for more generic books about Unix printing that would cover such things.

    CJV

  14. Web based configuration by luugi · · Score: 3, Interesting

    I really like the fact that we could configure and see the status of the printer from a web browser.

    --
    Think like a man of action, act like a man of thought.
  15. Re:Need to read a book to print? by Zathrus · · Score: 4, Informative

    It is more complicated than that, and you know it.

    Even under Windows it's not that simple... ok, sure, for the dead simple cases it is, and it's not much harder under *nix with CUPS (AFAIK CUPS doesn't autodetect and autoconfigure, but I haven't hooked up a USB printer to my Linux box to check).

    How do you setup a network printer under Windows? No, not a shared printer... one that sits on the network with maybe a little interface box and that's it. It sure as hell wasn't as easy as it should be, and even when you figure it out it doesn't always work. My HP Deskjet will use IPP just fine, from both Win98SE (which was an utter bitch to get working, since MS claims IPP support for Win98SE and then proceeds to avoid actually making it available) and XP (which was confusing to setup properly since the Add Port button is deeply obfusicated). My Canon photoprinter absolutely, positively refuses to play nice with IPP though. So even under Windows it is more complicated than that.

    And adding print support in Windows isn't as simple as saying print(mystuff); -- proper printing support is quite a bit more complex. Dunno if CUPS is more or less complex than Win32 services, but I suspect it's a tie.

    This isn't a book for average users, it's a book for admins. There are corallarys in every system, be it Windows, Mac (pre OS-X), *nix, mainframe, or whatever... the simple stuff should be simple. The complex stuff, sadly, remains overly complex.

  16. cups is pretty cool. by FroMan · · Score: 5, Informative

    I used to use apsfilter w/ lpd for all my printing needs. Which worked, once it was setup. Though I never did get samba printing exactly correct. It was a bear. It was eaiser to setup sendmail than getting printing working in linux.

    Well, a short while ago we picked up a new printer. I was dreading going into apsfilter setup again and wrestling with lpd and all that. I looked around cups' site looking for a decent howto. Nothing for a simple "just do it" documentation. I decided to try out gentoo's site for documentation, which is awsome. Here is an awesome howto for getting cups setup in gentoo. You could probably glean the information for doing it in other distributions also from this howto.

    I know a lot of folks get sick of gentoo folks pushing it all the time. But documentation and howto's are one of gentoo's biggest strengths. I really reccomend folks look at the gentoo docs when they are trying to figure something out.

    Nope, I don't have any affiliation with gentoo other than a user and the occasional bug reporter.

    --
    Norris/Palin 2012
    Fact: We deserve leaders who can kick your ass and field dress your carcass.
  17. CUPS by sulli · · Score: 3, Funny
    If you run any current Linux distro, the chances are that you already use CUPS for printing.

    But those of us who use OS X use CUPS for drinking. Large quantities of Mint Juleps, in particular, this past weekend.

    --

    sulli
    RTFJ.
  18. Asking for pain... by confused+one · · Score: 3, Funny

    Now if only someone would write a book telling me how to get my Lexmark winprinter to work under linux...

  19. CUPS color management? by sakusha · · Score: 5, Interesting

    There is a lot more to printing than writing device drivers. I've been using CUPS on MacOS X for quite a while, since there are no other drivers for my old Epson 1520. I'm a bit dissatisfied with the color management abilities of CUPS. Sure it has custom color tables, but no real way to integrate with Colorsync or other color profiling systems. I can turn off all color management in CUPS, hoping it prints a relatively neutral profile, and then let Colorsync work it's profile to that, but you don't really get the full dynamic range compared to real official Epson drivers with real official Colorsync. So I'm not even getting as good quality color output and matching as with MacOS 9. Oh well, I suppose I'll have to get a new printer with proper drivers one of these days, but I like my old 4color printer for press proofing, I can't stand 6 or 7 color printer proofs when I'm targeting CMYK film output.

  20. Documentation Rocks by redptam · · Score: 5, Insightful

    Never knock great documentation. I would have to say that one of the major problems with open source software today is that many of the programs do not have enough great documentation.

    --
    -redptam-
  21. Why use CUPS with OS X? by chia_monkey · · Score: 3, Interesting

    A simple question. Why would an OS X user want to use CUPS? I know there's a good reason it is built in, I just haven't found the need to use it yet.

    Maybe I'll use it, maybe I won't. I remember thinking "PDF workflow handling in OS X? Why bother?" but it turned out to be a great help when working on newsletters and such and mailing them out from Illustrator.

    So if anyone could post a good "5 - Informative" reply to me, I'd love it.

    --

    "He uses statistics as a drunken man uses lampposts...for support rather than illumination." - Andrew Lang
  22. printing by micromoog · · Score: 4, Funny
    And does it make sense to buy a book about a GPLed piece of software?

    Of course not, just download the man pages and print them ou-- oh, right.

  23. The only CUPS... by decepetion · · Score: 3, Funny

    I am interested in, have to be at least C.

  24. Re:Question for CUPS experts... by gpinzone · · Score: 4, Funny

    sap|write documents to sap-out:\ :sd=/var/spool/lpd/sap:\ :if=/usr/local/lib/print-sap-out:\ :af=/var/spool/lpd/sap/acct:\ :lp=/dev/null:\ :bk:sh:mx#0:

    See, that's what I like about Linux. It's so simple to configure. Anyone can use it!

  25. troll food: 12 step printer configuration by FIRESTORM_v1 · · Score: 5, Informative

    Printing under linux SUCKS. Make it as easy as windows or setting up a jetdirect and we have something useful for small scall application.

    Umm... under Redhat 7.3

    As root:
    1: run printtool
    2: click 'New Printer'
    3: click 'Next'
    4: Name the Printer
    5: click on 'HP JetDirect'
    6: Enter IP address
    7: Go find Printer driver in List (I use an HP LJ4) so I select HP->LaserJet4->ljet4
    8: Click Next
    9: Click Finish
    10:click Apply,then OK to 'LPD restart' message
    11:Select Printer from the list
    12:Click on 'Test' then 'US LETTER Postscript Test'

    Easy I'm a 12 stepper.. :P

    Hell. In windows it is easy too, however you need to create a local TCP/IP port to print to and I don't have those instructions..

    --
    Partnership for an idiot free America!
  26. print dialogs in applications by ZorroXXX · · Score: 5, Interesting
    I really like CUPS and it is quite nice on the "system" side.

    What is missing with regards to printing in unix is something better that the standard (unfortunately), ultra primitive printer options dialog box given to the user, i.e. a prompt asking for your favourite lpr command.

    When I select File->Print in an application in X I should be presented with a dialog box with access to all the selected printer's specific options (for instance print on both sides, etc). As long as this is not the case printing in unix sucks, although with CUPS it sucks less :)

    --
    When you are sure of something, you probably are wrong (search for "Unskilled and Unaware of It").
  27. Bible's in the public domain? by DrCode · · Score: 4, Funny

    Are you sure? In the US, copyrights stay in force until something like 50 years after the death of the author. But religious people believe that god wrote the bible, and they certainly don't believe that god is dead.

    There could be a BIG lawsuit coming out of this.