I have been working with Void Linux for a quite of time.
I have it on my mini box which serve some daily life services:
- Print server
- Syncthing
- Nextcloud
Void did great job but It was annoying with AirPrint. I was not able to print from my iPhone.
I used to add my printer by IP address, it was not automatic like Debian based distros.
I reinstalled this box today, and I decided to learn how it works.
I found some docs on internet.
Automatic printing combine some apps:
- CUPS – printing system developed by OpenPrinting for Linux® and other Unix®-like operating systems.
- Avahi – Service Discovery for Linux using mDNS/DNS-SD — compatible with Bonjour
- airprint-generate – Automatically generate AirPrint Avahi service files for CUPS printers
You’ll need to install cups, then avahi-daemon. Start those servies.
Run airprint-generate script to generate avahi .service files for shared CUPS printers.
# ./airprint-generate.py -d /etc/avahi/services
Then boom, you now can find printers and print from your iPhone.
Debian based distributions ship CUPS pre-configured this way.
airprint-generate Contributors