Hacking away with Linux, Ruby, Rails, and so on and so forth
17 Sep
So for one of my clients, I’m setting up a Ubuntu-based Point-of-Sale (POS) system. Part of the headache of getting this going (on top of actually building an interface) is getting the receipt printer to work. One of my biggest pet peeves is manufacturers who provide “Linux drivers” but only pre-compiled binaries for crap like Red Hat. Thankfully, I got to choose the printer we ordered for the store, and Star Micronics provides GPL’ed source code to their drivers. Hooray! So we ordered a TSP600, black, USB interface, with the auto-cutter.
The next problem was getting their code to compile and install cleanly on a Ubuntu Feisty system. My goal in this was not only to be able to compile the library from source, but to package it into a .deb file for easy installation on the store computer. After a whole day of researching and testing, I finally got it to work. It took some tweaking of the default makefile and setup.sh, but the result is a working starcupsdrv_2.3.0-0ubuntu1_i386.deb, which is the CUPS driver for these Star printer models:
- TUP900 Presenter
- TUP900 Cutter
- TSP1000
- TSP800
- TSP700
- TSP600 Cutter
- TSP600 Tear Bar
- TSP100 Cutter
- TSP100 Tear Bar
- SP500 Cutter
- SP500 Tear Bar
As I’m not interested in being a full maintainer for the package, I am not planning on submitting it to the Ubuntu or Debian projects. If, however, you’re reading this and would like a copy so that you can set up your own printer quickly, just toss me an email. I’d be happy to send you the .deb to make your life easier. Just install it, then plug your printer in, and it will be automatically recognized by your favorite CUPS administration utility.
I had never packaged my own .deb files before, so I read a LOT of docs on the subject. First and foremost, let me reiterate what most guides start by saying: Packaging .deb files is a complicated process. Expect to spend a lot of time learning how and trying different things. That said, it is an excellent way to handle software distribution to client computers, especially when coupled with your own software repository. I’ll post my experience setting up a repo later on.
For those that want to learn how to package an application into .deb files, the following are URLs that I recommend reading front-to-back, no matter how long they may be:
The Debian one is really just so you understand what you’re doing. The Ubuntu Packaging Guide is the real setup of what you want to follow (I focused on the debhelper method). Pbuilder is a tool you simply cannot do without, and the How To is really an explanation of how to set it up. It may seem daunting, but in the end it’s pretty simple.
Now I have a basic understanding of how to create a package. Hardly something that every programmer should get familiar with, but if you work with Debian-based distributions much, I highly recommend trying out.
9 Responses for "Installing a Star Micronics TSP600 receipt printer on Ubuntu Feisty 7.04"
Great job on packaging the drivers. May I get a copy along with the necessary files to repackage it in the future?
Thanks so much,
Eric
Good job. May I get a copy along with the necessary files to repackage it in the future?
Thanks so much,
Carlos
Impressive. Can you please send me a copy of the drives as well.
Thank you.
Rendani
Please be so kind as to send me a copy as well. It will be much appreciated.
Hi all. I’m overwhelmed by the response (especially by email) for the packaged drivers. WordPress’s file upload is not working as I expected, so I’ll need to get it online some other way.
If I can, I’ll post it while I’m on vacation, but the holidays means family which means dial-up. Rest assured, I will have it up as soon as I can.
Hi is it possible to mail the .deb package to me.
Thak you for your great work man! Greets from Norway!
I would like a copy also please. Happy New Year!
I’ve posted the .deb file online for everyone to download. See my post:
http://www.drelmo.net/2008/01/17/star-micronics-tsp600-receipt-printer-driver-released/
Thanks Marc. I was about to have a go at doing the same thing myself, but now it seems I don’t have to
Leave a reply