Slashdot Mirror


Desktop FreeBSD Part 4: Printing

uninet writes "As a writer, the only reason Ed Hurst ever got his first computer was because it was far more efficient than a typewriter, and certainly more readable than his own handwriting. To enjoy that efficiency, however, you need a working printer, and Ed explores accomplishing just that with FreeBSD in this piece."

15 of 51 comments (clear)

  1. Printing on FreeBSD by brilinux · · Score: 4, Interesting

    Having just installed FreeBSD, I too had to configure my printer, yet this article made it seem overly complicated. Of course, I used KDE and CUPS to set up my USB HP-5150, but when I set the same up on Gentoo by hand, it was not that difficult. This makes using *nix systems seem harder for the desktop than it is.

    1. Re:Printing on FreeBSD by vasqzr · · Score: 2, Interesting

      Although I mainly use Linux for things such as file/email/proxy servers, I've set up printing before on workstations.

      The last version of RedHat that I used, (7.3) made it pretty easy. There was a control panel where I entered a name for the printer, chose postscript, and gave the ip of the printer. (HP LaserJet 4100). Worked perfectly. Everyone asked how I got web pages to print out without cutting off the right side (anyone who's printed from Internet Explorer knows what I'm talking about)

      It's equally easy in Knoppix, but you have the extra step of starting the printer daemon.

  2. bad advice by Anonymous Coward · · Score: 5, Informative
    Right off the bat...

    life is much simpler if you login as root and run your desktop by typing startx at the command line

    Uh huh, run X as root. *PLONK*

    1. Re:bad advice by Anonymous Coward · · Score: 2, Informative

      RTFA! That's for installation only

    2. Re:bad advice by DashEvil · · Score: 2, Informative

      You run X as root regardless. It's SETUID.

      --
      -If God wanted people to be better than me, he would have made them that way.
    3. Re:bad advice by Homology · · Score: 5, Informative
      You run X as root regardless. It's SETUID.

      That depends. OpenBSD has patched XFree86 to make it more secure. Among things they have done is to use privilege separation for X, so not the entire X needs to run as root. They also made a ptm device that allows non-privileged processes to allocate a properly-permissioned pty, so the suid bit is removed from xterm and xconsole. Recently, OpenBSD made X work after enabling ProPolice for it, thus making buffer overflows less of a danger.

  3. Re:*BSD is dying by Anonymous Coward · · Score: 2, Informative

    Good News Everyone!
    Turns out that *BSD is stronger than ever!
    According to an Inernetnews article, Netcraft has confirmed that *BSD has "dramatically increased its market penetration over the last year."
    There has been a steady increase in *BSD developers over the past decade.
    There are currently 307 FreeBSD developers as of the 2004 core team election.
    You can read more about FreeBSD here

    If you would like to try out a BSD, you can download: FreeBSD, OpenBSD, NetBSD, or DragonflyBSD
    Enjoy!

  4. Needlessly difficult... by Anonymous Coward · · Score: 4, Interesting

    There is no reason for printer setup to be complicated -- use of lpd with a couple of scripts and a ghostscript filter (for non PS capable inkjets) could easily be provided (perhaps commented out) in the printcaps for all the BSDs and as an option in Linux distros. This is all 95% of users really need or want, yet somehow this simple solution isn't provided as an option. Instead users end up searching for an unnecessary addon they hope will make printer setup easier than the lpd route (which at present often involves silly googling and guessing to find the info) but generally speaking does not make things especially simple at all.

    Another pet peeve: You would think you should be able to have lpd listen only on the interfaces you specify (defaulting to only to loopback for example). Yet even OpenBSD (to the best of my knowledge) does not provide this simple security enhancement.

    1. Re:Needlessly difficult... by R.Caley · · Score: 2, Insightful
      You would think you should be able to have lpd listen only on the interfaces you specify (defaulting to only to loopback for example).

      If you have any interfaces you are at all worried about you are running a firewall, right?

      --
      _O_
      .|<
      The named which can be named is not the true named
  5. Re:Does BSD have a pre-emptive kernel? by Homology · · Score: 3, Interesting
    I'd still recommend SuSE for the desktop -- but I really can't justify calling anyone using OpenBSD as a desktop crazy either. It just isn't a big freak'n deal.

    No big deal for most, unless one wants top performance 3D. One difference, though, is that OpenBSD has made many security enhancements to X, like privilege separation, removing suid-bit from xterm and xconsole, compiling X with ProPolice (to lessen danger of buffer overflow exploits).

  6. Re:Does BSD have a pre-emptive kernel? by torstenvl · · Score: 3, Informative

    Yes, "BSD" has a pre-emptive kernel. BSD/OS has a pre-emptive kernel. BSDi was bought by Walnut Creek and they are providing a snapshot of their code to the FreeBSD team who is using some of the BSDi team's work to make their own kernel pre-emptive, as well. Please see "Revamping the BSD multiprocessor code" at http://www.daemonnews.org/200008/dadvocate.html

    You can also see a good argument against it, dating back to 2000 from Matt Dillon:
    "I would not characterize this as 'biting the bullet'. Having a preemptive kernel is unlikely to improve performance. The only reason there might be preemption at all is to deal wth interrupts. Interrupts currently preempt supervisor code. If interrupts are moved to interrupt threads then interrupt threads would need to be able to preempt supervisor code. In this fashion the supervisor thread would be preempted, but that is very different from having supervisor threads preempt other supervisor threads (something we probably will not do)."
    See http://docs.freebsd.org/cgi/getmsg.cgi?fetch=65989 +0+archive/2000/freebsd-arch/20000528.freebsd-arch

    Actually, the whole discussion is very interesting and I have learned a lot this morning about SMP and preemption and so on from reading. Thanks for bringing this up. :)

  7. As if CUPS is difficult? by macwhiz · · Score: 4, Interesting

    I'd never paid attention to CUPS until Apple slid it under my Mac OS X installation. Once I took a look at it, I really came to appreciate it. Now I put it on all my UNIX boxes. I've even convinced my workplace to adopt it.

    Once the software is installed, it's dead easy to set up, especially if you're using a recent PostScript-capable printer. Most recent printers support Internet Printing Protocol (IPP) directly on their network card. CUPS speaks IPP and PostScript natively. If you set up Service Location Protocol (SLP) support, you don't even have to configure the printer -- it configures itself. There's a reason Apple adopted this software!

    Add the gimp-print driver package, and you can print to just about anything.

    It's a far sight better than dealing with the various filters in BSD lpr, and immeasurably better than Solaris' print subsystem.

  8. Re:I'd use BSD for my own writing by tigga · · Score: 2, Informative
    major recompile because of a minor update

    If minor update you do because of security reasons you may try to install freebsd-update from ports. It could fetch and install binary updates. No need to recompile anything.

  9. Re:I'd use BSD for my own writing by R.Caley · · Score: 3, Interesting
    Apart from your obvious troll anyway, haven't you heard of nice -20 ?

    No need for that even, unless you want to share with other batch processing jobs. BSD does quite a reasonable job of keeping interactive things going while batch jobs do their business.

    I set off a recompile of samba on the wrong machine the other week, by typing at the wrong window, and didn't notice my desktop was 90-odd percent occupied with compilation until the bizzare throbbing red corpuscle gkrellm uses to indicate high load was uncovered when I moved a window.

    Modern over-muscled CPUs, modern memory sizes and good disk access subsystems are wonderful things.

    --
    _O_
    .|<
    The named which can be named is not the true named
  10. Re:CUPS, Why? by macwhiz · · Score: 2, Informative

    CUPS beats out good old printcap thusly:

    • If your printer doesn't support PostScript, CUPS gives it a PostScript interpreter.
    • CUPS automatically converts your print jobs from a wide range of formats to PostScript.
    • CUPS supports PPD files. That means it supports all the special features of your printer. If your printer isn't PostScript, it can generate a PPD allowing access to the printer's raster-driver features.
    • Your Windows and Mac boxes can print to your CUPS-attached printer using PostScript, too.
    • It supports ZeroConf, so when you add a new CUPS-equipped system to your existing network, it self-configures all the advertised print queues you already have.
    • It not only speaks LPR, but also HP JetDirect and IPP. You can actually get printer status.
    • Because everything gets converted to PostScript, you can easily change font options, page layout, etc. from the command line.
    • All your UNIX boxes now configure printers the same way. The print commands are all the same. Consistency is good when you have many types of system!
    • Convenient browser-based GUI, or traditional CLI configuration.
    • Better security.

    There's other features, too. Those are the ones I can think of, off the top of my head. It brings UNIX printing out of the teletype era and up to the level of Mac OS and Windows.