GU:print

From Juneday education
Jump to: navigation, search

Problem

As GNU/Linux users at gu.se we can't print from our computers but rather have to use either email (yes, email) or a USB stick (malware anyone?). Printing directly from a computer is supported on MacOS and Windows using special programs.

Note: GU (Gothenburg University) does not support, provide software/setting or say it is possible to use the printers at GU directly using GNU/Linux.

Igniting annoyance

On Wednesday October 3 2018 we (Rikard and Henrik) were ridiculed by a student for not being able to do Control-p to print from our computers. We decided to make it possible for the following reasons 1) being able to say to the student that "yes we can" and 2) show that it is easy to support printing on GNU/Linux.

Path to freedom

Before we proceed with telling you about the solution we would like to say a few words about how we solved it, and let's be open about this, we didn't do that much work. We assumed that the MacOS program GU provides (check here) uses the software cups to print. So we installed the software on a computer running MacOS and found that indeed cups is used. We used (some of) the files installed on the MacOS computer and tried them on GNU/Linux and it worked. As simple as that.

Print at GU using GNU/Linux

Automatic

curl -LJO https://raw.githubusercontent.com/progund/utils/master/bin/guprint.sh && bash guprint.sh

Manual

Download and install the cups driver

Download cups files:

cd /tmp
curl -LJO http://wiki.juneday.se/mediawiki/images/e/e3/Gu-print.tar.gz
tar zxvf Gu-print.tar.gz

Add your user name

Edit the file printers.conf. There's a line saying:

DeviceURI lpd://account@guprintsrv.it.gu.se/guprintsrv

Change account to your xs-account, otherwise your print requests will end up on some else's account and we don't want that do we? If your use name is xsxxxx the line should like:

DeviceURI lpd://xsxxxx@guprintsrv.it.gu.se/guprintsrv

Install the cups driver

Install cups files:

su -c  "cat printers.conf >> /etc/cups/printers.conf"
sudo cp GUprint.ppd /etc/cups/ppd/

Restart cups

On Debian and Ubuntu:

sudo /etc/init.d/cups restart

On Fedora:

sudo service cups restart

Print at GU using MacOS (experimental)

Automatic

curl -LJO https://raw.githubusercontent.com/progund/utils/master/bin/guprint.sh && bash guprint.sh

Test it

Fire up a browser and print using Control-p (... in your face Daniel!!!)

Don't misuse the script

We would like to point that if you use our script and enter someone else's account name the stuff you print will end up in that account's printer queue.