Post archwialny z 2017 roku
Czasem potrzebuję coś pilnie wydrukować - zdarza się chyba każdemu. A to załącznik z poczty, a to jakiś dokument, a to inną, ważną w danym momencie rzecz. Komputer stoi wyłączony i to daleko - no po prostu chciałbym puścić zadanie drukowania z telefonu. Dlatego też zainstalowałem Google Cloud Print w Raspberry Pi.
Jak to działa?
Działa to nadzwyczaj dobrze - wystarczy wybrać opcję Drukuj w Androidzie i wybrać drukarkę z Cloud Print. Nie musisz być nawet w tej samej sieci - możesz drukować z dowolnej lokalizacji, a Twoje dokumenty będą grzecznie czekały w domu. Oczywiście drukarka musi być włączona, ale to nie jest wielki problem, zwłaszcza, że i tak była już wcześniej usieciowiona przez RPi.
Dlaczego GCP, skoro już mam opcję drukowania w panelu HS2?

Przede wszystkim, bo lepsze jest wrogiem dobrego. Uwielbiam grzebać w takich rzeczach, a zrobienie całości za pierwszym razem zajęło jakieś pół godzinki.
Dodatkowo HS2 ma ograniczony zakres obsługiwanych plików, a dodatkowe należy konwertować - a to wiąże się z pisaniem dodatkowego kodu, a często również użyciem dodatkowych bibliotek dla każdego formatu plików osobno. Dużo kodu do opieki, duże ryzyko błędów, a testowanie każdego to marnowanie papieru i tuszu.
Google Cloud Print w Raspberry Pi
Przyjmijmy, że CUPS jest już zainstalowany i skonfigurowany - skupię się jedynie na instalacji i konfiguracji Google Cloud Print Connector'a.
W pierwszej kolejności instalujemy zależności:
sudo apt-get install python python-pip
Gdy to będzie już gotowe, instalujemy pakiet łącznik:
sudo pip install cloudprint
I dokonujemy konfiguracji:
sudo /usr/local/bin/cloudprint
Powinniśmy postępować zgodnie ze wskazówkami na ekranie i... tada! Drukarka powinna zostać dodana do Google Cloud Print. Skrypt wymaga jednak ciągłego uruchomienia, dlatego zmontowałem z niego usługę:
sudo nano /lib/systemd/system/cloudprint.service
Podajemy następującą treść:
[Unit]
Description=Google Cloud Print Service
After=multi-user.target
[Service]
Type=simple
ExecStart=/usr/local/bin/cloudprint
Restart=on-abort
[Install]
WantedBy=multi-user.target
Wychodzimy i zapisujemy: Ctrl+X i odpowiadamy (T)ak. Następnie nadajemy uprawnienia, włączamy i uruchamiamy usługę:
sudo chmod 755 /lib/systemd/system/cloudprint.service
sudo systemctl enable cloudprint.service
sudo service cloudprint start
W panelu Google Cloud Print powinny pojawić się nasze drukarki z CUPS.
I to tyle - w ten sposób mamy Google Cloud Print w Raspberry Pi - automatycznie startujące podczas restartu Malinki i w razie niespodziewanego wyłączenia.
Jeśli potrzebujecie pomocy, zapraszam do tego artykułu, na którym wzorowałem się podczas konfiguracji.