Skip to content

Instantly share code, notes, and snippets.

@pilotak
Last active March 10, 2018 20:18
Show Gist options
  • Save pilotak/00f5daf10ff6ebf84bab06d464ce0d03 to your computer and use it in GitHub Desktop.
Save pilotak/00f5daf10ff6ebf84bab06d464ce0d03 to your computer and use it in GitHub Desktop.

Install CUPS

sudo apt-get install cups
sudo usermod -a -G lpadmin pi
sudo cupsctl --remote-any
sudo /etc/init.d/cups restart

Add printer via web interface http://ipaddresofraspberry:631

Install Samba

sudo apt-get install samba
sudo nano /etc/samba/smb.conf

Change settings to following:

# CUPS printing.  
[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 = /var/lib/samba/printers
browseable = yes
read only = no
guest ok = no
sudo /etc/init.d/samba restart

Install Google cloud print

Raspberry B+

wget https://storage.googleapis.com/golang/go1.10.linux-armv6l.tar.gz
sudo tar -C /usr/local -xzf go1.10.linux-armv6l.tar.gz
nano ~/.bashrc

OR Raspberry 3

wget https://storage.googleapis.com/golang/go1.10.linux-armv8l.tar.gz
sudo tar -C /usr/local -xzf go1.10.linux-armv8l.tar.gz
nano ~/.bashrc

Append to the end of file

export GOPATH=$HOME/go
export PATH=$PATH:/usr/local/go/bin

Logout and login

sudo apt-get install build-essential libcups2-dev libavahi-client-dev git bzr
go get github.com/google/cloud-print-connector/...

sudo useradd -s /usr/sbin/nologin -r -M cloud-print-connector
sudo mkdir /opt/cloud-print-connector
sudo mv ~/go/bin/gcp-cups-connector /opt/cloud-print-connector
sudo chmod 755 /opt/cloud-print-connector/gcp-cups-connector
sudo chmod 755 /opt/cloud-print-connector/gcp-connector-util
sudo chown cloud-print-connector:cloud-print-connector /opt/cloud-print-connector/gcp-cups-connector
sudo chown cloud-print-connector:cloud-print-connector /opt/cloud-print-connector/gcp-connector-util
rm -f ~/go/bin/gcp*
sudo /opt/cloud-print-connector/gcp-connector-util init
sudo mv ~/gcp-cups-connector.config.json /opt/cloud-print-connector/
sudo chmod 660 /opt/cloud-print-connector/gcp-cups-connector.config.json
sudo chown cloud-print-connector:cloud-print-connector /opt/cloud-print-connector/gcp-cups-connector.config.json

To make it run on startup

wget https://raw.githubusercontent.com/google/cloud-print-connector/master/systemd/cloud-print-connector.service
sudo install -o root -m 0664 cloud-print-connector.service /etc/systemd/system
sudo systemctl enable cloud-print-connector.service
sudo systemctl start cloud-print-connector.service
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment