Installing PCL6 Drivers to a Samba/CUPS Print Server

First, a little background...

The classic procedure for installing drivers to a printer shared via CUPS with a raw Samba frontend, usually is roughly something like this:

  1. Create printer in CUPS
  2. Open shared printer properties in Windows
  3. Install drivers via Advanced tab

For me, this worked great, most of the time, assuming that the driver was either PS or PCL5(e). However, PCL6 drivers rarely loaded properly. They crashed upon upload, and the driver rarely ever worked, if point 'n print even installed the driver. As I understand it, the root of the problem is that the drivers need a valid "form" database specific to the driver to be stored on the server in order to load, but valid form data can only be created by executing the driver. On Windows servers, this isn't a problem, but Samba servers cannot execute the windows driver code in order to generate this form. PCL6 drivers are particularly finicky about this, and often times will refuse properly copy to the server.

The solution I've come up with is to load the driver entirely on a Windows PC first, and tell Samba to copy the drivers and related forms, ACLs, etc over. Some of the values I use here for the printer names, etc, are very generic and only specified to match the naming standards in my environment. Feel free to change your printer setup to suit your needs.

The Procedure
On a Windows PC:

  1. Install the printer as you would normally for TCP/IP printing on a windows PC.
  2. Rename the printer to the share name you will be using (i.e., CopierCP5000)
  3. Open the printer properties
  4. Share the printer using the same name (CopierCP5000)
  5. Set the printer description to the printer name (i.e., Copier CP 5000)
  6. Set the printer location to the office name and city (ACME Abu Dhabi)
  7. Usually under the Accessories/Options tab, update/get information from the printer
         This ensures that we obtain all the correct hardware configuration information for the device (duplexer, trays, hole punch, stapler, etc)
  8. Open the Advanced tab and click the "Printing Defaults" button
  9. Click on each tab and allow the tab to load
         This ensures that the form values for each tab are created.
  10. Still inside the Printing Defaults, change the page orientation to Landscape, hit apply, change the page orientation to Portrait, and hit apply. Click OK.
  11. Close the printer properties by clicking OK

Next, on the server:

### Set up the printer in CUPS, i.e.:
lpadmin -p CopierCP5000 -L "ACME Abu Dhabi" -D "Copier CP 5000" -v lpd://192.168.xx.xx -m raw -E
smbcontrol smbd reload-config
 
### Copy the drivers, forms, ACLs, etc from the Windows PC
net rpc printer MIGRATE ALL CopierCP5000 -S mypcname -Uusername

Finally, test the driver in Windows:

  1. Open the local Printers control panel (shortcut command below for Win7 users)
         rundll32 shell32.dll,SHHelpShortcuts_RunDLL PrintersFolder
  2. Delete your shared printer
  3. Right-click in the control panel window and select "Server Properties"
  4. Open the Drivers tab
  5. Select your driver and click "Remove".
  6. Proceed with removal and close the server properties window.
  7. Open \\servername\
  8. Double-click your printer
  9. Print a test page
         If this fails, try restarting the local PC's Print Spooler service

So far I've only tested this on a few of our known-problematic printers that have PCL6 drivers available, and it's worked perfectly in each case. However it you notice this doesn't work for you, post a comment and I'll see what I can do to help.

Palm Pre: Coming Soon to Muchtall?

I just got this email in my inbox this morning (BCC'd to me):

From: (My Boss)
To: (Our Company Sprint Rep)
Subject: Palm Pre
What are the chances of getting our hands on a couple of these when they are released?
(Other Palm User) from (Our Company) and (Muchtall) from my office are waiting patiently for theseā€¦.
Thanks,
(My Boss)

Pretty awesome. Hopefully our Sprint rep can swipe us a couple before the masses clean the stores out.

Update 6/2: Just got an IM from my boss:

(11:17:23 AM) Boss: hey you available for lunch on Thur?
(11:17:32 AM) Muchtall: Sure
(11:17:43 AM) Boss: Im gonna get our Sprint reps to take us out

Sweet!

Update 6/8: So I was greeted by this email earlier this morning:

To: Boss (fwd'ed to Me)
From: Purchasing Dept
Subject: (Muchtall's) Phone
Just received call from Sprint, phone on backorder. Not sure when resupply fulfilled, will keep you in touch.

Which sucks. However, a few hours later, I get this email:

From: Corporate Sprint Rep
To: Purchasing Dept (fwd'ed to Me)
Subject: Pre
Inventory is expected tomorrow so you should have on Wednesday.

Awesome! I can't wait!

FeedReader: My New Favorite RSS Aggregator/Reader

My requirements for an RSS feed reader were simple:

  • Windows Support
  • Toaster Pop-ups (with individual news item titles)
  • Feed filters
  • Free
  • I had been using FeedDemon for a while, but it missed the second half of my toaster requirement. That and for whatever reason it seems to take days to get updates to feeds, even when I'd tell it to update sooner.

    I recently switched to FeedReader, and I have to say, if you're looking for a Windows-based RSS reader, you should make this the first client you try. It will probably be the last one you'll need.

    If you aren't using an RSS reader, I highly recommend it. They make life so much easier when you are trying to keep up to date with your favorite news sites, and most sites offer an RSS feed nowadays. It's nice to be able to just open FeedReader and see a list of what sites have updated articles, and even limit the stories to the topics you want. In my case, it's made keeping up with all the latest Palm Pre news a snap. Instead of periodically refreshing 10-15 different sites in Firefox, I just listen for that chirp.

    SourceForge Spam (or How I Learned to Stop Worrying and Just Cancel My Account)

    After having a SourceForge account for about 10 years, I'm canceling it for one reason and one reason alone: Spam. SourceForge has this "feature" where anyone can email you at yourusername@users.sourceforge.net, and they will happily forward it on to the email address you have on file with SF. That's great, except, I don't want spam bots emailing me. It would be great if you could either opt out of this behavior, or even specify a human-readable anti-spam address as the forwarding address, but SF doesn't offer either of these options. It's either you have an account and all the crap that comes with it, or you have nothing. So I choose nothing.

    Thanks for nothing SourceForge.

    So I guess if I actually want to use the SF site for forum activity, I'll have to re-create my account each time.

    Update: Ok I lied, sort of. Turns out that if you delete your SF account, you can't come back and re-create it. This sucks because I like my persona, and should I come back, I'd like to re-use it. So now I'm willing to give feedback a chance. Vote for Solution 3!: SourceForge Spam Solution

    Update 10/15/2009: You complained, and SF listened. I got a Tweet last week from @sourceforge informing me that they have added an option to allow you control over your alias behavior. You can find this setting at https://sourceforge.net/account/. Go there. Now! That is all.

    Countdown to Palm Pre

     
    I'm dying for this thing to come out. I'm even more hopeful that I'll get my hands on it come release day.
     
     
     


     
     
    Countdown to Pre-Day

    Restreaming ASF to MP3 Via Icecast and VLC

    Say you have an internet radio stream that you like to listen to. You like to actually get up from your computer once in a while and go outside, so you want to play it on your iPhone/Blackberry/G1/Treo/Centro/Pre/Whatever as you're out and about. But wait! Due to poor decision making by your beloved stream provider, your favorite stream is only in Microsoft's poorly-supported ASF streaming format. There's no MP3 or OGG options! Many if not all of the phones I just mentioned may/will not play these streams, at least not natively. MP3 on the other hand, is ubiquitous (though, given, not truly as free as OGG). One option you may have, if you run your own Linux server, is to download the ASF stream, re-encode it to MP3, and re-stream it via your own Icecast server. Icecast is easy enough to set up, however information on setting up the VLC portion of this workaround online seems a little slim online, so I thought I'd make a post simplifying the setup.

    First off, check to make sure your VLC has "Shout" Shoutcast/Icecast output support:

    vlc --list | grep access_output_shout

    You should see the following in the output:

    access_output_shout IceCAST output

    If not, you may need to either re-install with a version of VLC that supports shout output, or recompile it with shout support.

    Then run the following command, altering the items in bold for your purposes (all on one line):

    cvlc "http://classicalstream2.publicradio.org/classical" ':sout=#transcode{acodec=mp3,ab=192,channels=2}:duplicate{dst=std{access=shout,mux=raw,dst=source:YOURPASSWORD@your.icecast.server.com:8000/mpr.mp3}}' --sout-shout-mp3 --sout-shout-name="MPR MP3 Restream" --sout-shout-description="Restreaming of MPR" --sout-shout-url="http://minnesota.publicradio.org" --sout-shout-genre="Liberal Tripe" --loop

    Assuming you have already properly set up your Icecast server, you should now have a mountpoint running the stream you have just created.

    Note that VLC seems to have problems parsing some ASX playlist files. You may need to download the ASX file with wget to investigate what the actual stream URL is. For example, the stream above came from "http://minnesota.publicradio.org/tools/play/streams/classical.asx", which had these contents:

    <ASX version="3.0">
       <ABSTRACT>The Windows Media Stream for MPR's Classical Music Service</ABSTRACT>
       <TITLE>MPR Classical Windows Stream</TITLE>
       <AUTHOR>Minnesota Public Radio</AUTHOR>
       <COPYRIGHT>2009 Minnesota Public Radio</COPYRIGHT>
       <MOREINFO HREF = "http://minnesota.publicradio.org" />
       <ENTRY>
          <TITLE>MPR Classical Windows Stream Underwriter</TITLE>
          <COPYRIGHT>2009 Minnesota Public Radio</COPYRIGHT>
          <REF HREF="http://ondemand2.publicradio.org/ondemand/joinnow.wma"/>
          <BANNER HREF="http://www.publicradio.org/applications/underwriters/images/prepend/content/joinnow.gif">
              <MOREINFO HREF = "https://contribute.publicradio.org/"></MOREINFO>
          </BANNER>
       </ENTRY>
       <ENTRY>
          <TITLE>MPR Classical Windows Stream</TITLE>
          <COPYRIGHT>2009 Minnesota Public Radio</COPYRIGHT>
          <REF HREF="http://classicalstream2.publicradio.org/classical"/>
          <BANNER HREF="http://www.publicradio.org/applications/underwriters/images/prepend/content/joinnow.gif">
              <MOREINFO HREF = "https://contribute.publicradio.org/"></MOREINFO>
          </BANNER>
       </ENTRY>
    </ASX>

    As you can see, the first item in the playlist is NPR's obligatory call (**cough** commercial **cough**) for donations (http://ondemand2.publicradio.org/ondemand/joinnow.wma). The second is your actual stream URL (http://classicalstream2.publicradio.org/classical). You'll want to use the stream URL in your VLC command.

    Also, I have seen cases where VLC pukes on some ASF streams. Though I haven't confirmed this, it appears to be a bug with downsampling/resampling (http://mailman.videolan.org/pipermail/vlc-devel/2009-February/056823.html). In these cases, you may need to look that the 1.0.0 prerelease versions, which may not be available on your distro release (Fedora, for example, doesn't have it until 11). Good luck!

    UPDATE 10/27/09: It would appear that the precompiled RPMs offered on the VLC site for 1.0 or higher do not contain support for shout output. Not a big deal. Just download the source RPM (e.g., from http://download1.rpmfusion.org/free/fedora/development/source/SRPMS/) install the sources (rpm -Uvh vlc-1.0.3-0.1_rc.fc12.src.rpm), and edit the vlc.spec file (usually found in ~/rpmbuild/SPECS/). Look for a line that says "--enable-realrtsp \" and add a line below it that says "--enable-shout \". Save and close the file, then run "rpmbuild -ba vlc.spec". After it recompiles, install the updated RPMs (cd ~/rpmbuild/RPMS/x86_64/ ; yum --nogpgcheck reinstall vlc-core-1.0.3-0.1_rc.fc11.x86_64.rpm vlc-1.0.3-0.1_rc.fc11.x86_64.rpm). Make sure to alter the above paths to reflect your architecture, Fedora release, and vlc version.

    Palm Pre Release Date Hinted?

    Could this be a hint at the release date for the Palm Pre?

    http://blog.palm.com/palm/2009/04/sprints-new-pre-portal-news-videos-tweetsand-doughnuts.html

    I'm taking a shot at yes. Here's why it makes sense to me:

    - Why else would you put up a countdown to zero (Doughnut, btw) to such an obscure holiday?
    - As has been restated by Palm and Sprint repeatedly, the date falls in the first half of the year (albeit late).
    - It's a few weeks after the start of the just-announced Sprint vacation freeze
    - It's the weekend before WWDC, potentially stealing the iPhone 3.0 / next-gen iPhone thunder.

    Now, my only skepticism of the date is how close it lands to WWDC. Either the Pre will be a massive hit, and the buzz will be loud enough going into the following week to drown out the potential iPhone announcement, OR the Pre buzz quickly loses steam following launch, drowned out by the well-established Apple fanboy crowd. The potential for loss on this toss of the dice is pretty great.

    That's why I'm making one additional prediction: Palm drops another bomb on release day. Probably some yet-unseen killer app that the iPhone doesn't have. I'm guessing something that exploits the multitasking capabilities, and furthermore, can't be done via push. Palm needs something more just after the release to keep the unique multitasking abilities of the Pre in the front of people's minds right through the iPhone announcement.

    If I'm right, you can say you heard it here first.

    Update 5/20/2009: So close.

    Obama Defines "Change".

    "Change"

    http://yro.slashdot.org/article.pl?sid=09/04/07/1330229

    Not that I have a problem with this policy. I just think it's funny how the mass of Obama supporters assumed that this was what "Change" meant. In reality, the only Change in store is more government control over you.

    Palm Pre Goodness

    I've been drooling over this device since it was announced in January. Now that ads are actually starting to show up, the only thing left to see is a release date.

    UPDATE: Adding new commercial clips as they come out.

    PROC Machine Chk processor sensor transitioned to non-recoverable

    Just making a quick post to help out any Googler's out there looking for the solution to this problem. I had a Dell SC1425 pizza box server with an error/alarm light on it's face recently. The alarm showed up when the server had been rebooted after a full lockup. I downloaded the Dell DSET utility and ran a report, which found this error:

    PROC Machine Chk processor sensor transitioned to non-recoverable

    Basically this means that the mainboard detected that the processor stopped responding (i.e., locked up), which of course we already knew.

    To get rid of the alarm light, just run DSET again and tell it to clear the log. After you do so, your server lights should once again be a calming, cool blue.

    Resolving a Persistent spoolsv.exe Error/Crash

    Today I was troubleshooting a couple of network printers. One of them, I believed, had an incompatibility with "Standard TCP/IP" printing, via RAW communications. I tired other printer port options, including the HP TCP/IP port. I found out later on that the printer itself (a multifunction copier actually) did not have printing capability enabled. In the process of installing a printer driver later in the day, I ran into this error:

    The instruction at "0x00000000" referenced memory at "0x00000000". The memory could not be "written".

    The error wouldn't go away. Reboots did nothing. Clearing out all registry references of the printers and drivers that I had been troubleshooting did nothing. Deleting my printer drivers folder only made things worse (as you'll read later) Even a reverting to an earlier System Restore point failed. Finally, after finding tidbits of information online here and there, nothing with a complete solution, I tried removing this key:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors\HP Standard TCP IP port

    I then restarted "Print Spooler" in the Services control panel (services.msc), and my Printer control panel finally displayed properly, without crash. Unfortunately for me, I then had to delete all my printers, as I had deleted all of my printer drivers and none of the installed printers were functional.

    So if you run into this error, try deleting the key above before attempting anything else.

    Obama Yuks It Up Over the Collapsing Economy

    Now, I'm no fan of the American auto industry either, but for much different reasons than Obama. Obama sees the auto industry as a whole as evil greedy capitalist pollution profiteers, and clearly takes joy in overseeing their demise. He sees the collapse of the American auto industry as a success of his ideals.

    I, on the other hand, dislike what the American automobile makers have allowed to have happen to their once prosperous industry. One has to ask the question: Why are the foreign owned, yet locally manufactured, automobiles doing just fine in today's economy, yet the American manufacturers are struggling? The answer: Unions. The successful auto makers never bowed to union pressure. Foreign companies realized the hazard of giving up control of their own companies to socialist union thugs, pushing unsustainable pension plans and benefits. If the American auto industry had the spine to kick them out years ago, they'd be much better off now.

    MuchTall.com: In With WordPress, Out With PHPNuke

    I'm finally taking the plunge into WordPress. I've moved all of the accounts (minus passwords), categories, stories, and comments over from the old PHPNuke site. I have yet to pretty up the theme, but I just couldn't wait any longer. PHPNuke was just too difficult to maintain, and worse, was prone to spamming from bot-created accounts.

    More changes to come.