with a Samsung ML-4500 parallel laser printer.
I thought the parallel port might be a problem, but raspian happily needed zero configuration to use this interface I found in a drawer:

Basically its a USB hub / ps2 kb&mouse / serial / parallel / ethernet all from one USB socket (powered directly by the Pi)
I already had Samba setup for filesharing, so on with the printing:
Install CUPS (Common Unix Printing System)
Code: Select all
sudo apt-get cups
Code: Select all
sudo usermod -a -G lpadmin pi
Now you can use it via the web interface at http://127.0.0.1:631 (on the Pi itself)
From there you can goto the administration section, and add your printer.
Note: to ease load on the Pi, you can set the manufacturer as "Raw" - then later choose the correct driver on the windows PC.
Now to edit samba config file /etc/samba/smb.conf
Code: Select all
# CUPS printing. See also the cupsaddsmb(8) manpage in the
# cupsys-client package.
printing = cups
printcap name = cups
[printers]
comment = All Printers
browseable = no
path = /var/spool/samba
printable = yes
guest ok = yes
read only = yes
create mask = 0700
# Windows clients look for this share name as a source of downloadable
# printer drivers
[print$]
comment = Printer Drivers
path = /usr/share/cups/drivers
browseable = yes
read only = yes
guest ok = no
Code: Select all
sudo /etc/init.d/samba restart

Right click connect and windows PCs (and select local drivers) then can then print to the RPi printer over the network.