๐จ๏ธ AirPrint Bridge
Seamlessly Enable AirPrint for Non-AirPrint Printers on macOS
Print wirelessly from your iPhone and iPad โ no AirPrint printer required!
What is AirPrint Bridge?โ
AirPrint Bridge enables AirPrint functionality on macOS for printers that don't natively support it. This script allows iOS and iPadOS devices to print directly to printers that do not natively support AirPrint. The project doesn't rely on any additional binaries that aren't built in on macOS, uses almost no resources, and is entirely automated.
โจ Key Featuresโ
- ๐จ๏ธ Enable AirPrint for Non-AirPrint Printers: Share printers that do not natively support AirPrint with your iOS devices
- ๐ Automatic Detection: Automatically detects shared printers lacking AirPrint support
- ๐ Persistent Service: Installs as a
launchd
service to ensure AirPrint functionality is always available - ๐งช Test Mode: Run in test mode to verify functionality before installation
- ๐๏ธ Easy Uninstallation: Clean removal of the script and associated services
- ๐ค Bonjour Sleep Proxy: Automatically registers with the sleep proxy so AirPrint services continue to work when the system is asleep
- ๐บ Homebrew Support: Available via Homebrew for easy installation and updates
๐ ๏ธ Requirementsโ
- Operating System: macOS 10.15 (Catalina) or later
- Shell: Bash
- Printer: Any printer that can be shared on macOS
๐ Quick Startโ
1. Share Your Printersโ
Enable printer sharing via:
- System Settings > General > Sharing (macOS Ventura and newer), or
- System Preferences > Sharing (older macOS versions)
Check the box for Printer Sharing and select the printer(s) you'd like to share.
2. Install AirPrint Bridgeโ
Option A: Install via Homebrew (Recommended)โ
# Add the tap and install
brew tap sapireli/airprint-bridge
brew install airprint-bridge
# Test the installation
sudo airprint-bridge -t
# Install the service
sudo airprint-bridge -i
Option B: Manual Installationโ
# Clone the repository
git clone https://github.com/sapireli/AirPrint_Bridge.git
cd AirPrint_Bridge
# Make the script executable
chmod +x airprint_bridge.sh
# Test the script first
sudo ./airprint_bridge.sh -t
# Install the service
sudo ./airprint_bridge.sh -i
3. Start Printingโ
Open an app on your iOS device with printing capabilities (Safari, Mail, Photos, etc.), tap Print, and choose the newly advertised printer(s).
๐ก How It Worksโ
- Printer Detection: Identifies all shared printers on your Mac; filters out those already AirPrint-capable
- Capability Analysis: Generates a suitable URF string based on each printer's capabilities (color, duplex, paper types, etc.)
- Bonjour Registration: Uses
dns-sd
to advertise each printer under the_ipp._tcp.,_universal
service type - Launchd Integration: Automatically starts and keeps the advertising service running in the background, even before user login
- Bonjour Sleep Proxy: macOS's built-in Bonjour Sleep Proxy keeps these printers discoverable to iOS devices, even if the Mac is sleeping
๐ฏ Use Casesโ
- Home Users: Enable AirPrint for older printers without buying new hardware
- Small Offices: Share existing network printers with iOS devices
- Developers: Test printing functionality on iOS apps with any printer
- Educational Institutions: Enable students to print from iPads to existing infrastructure
๐ง Advanced Featuresโ
- Custom Script Location: Specify custom paths for the registration script
- Verbose Logging: Enable detailed logging for debugging
- Test Mode: Verify functionality before permanent installation
- Clean Uninstallation: Complete removal of all components
- Homebrew Integration: Easy installation and updates via Homebrew
๐ Licenseโ
This project is licensed under the MIT License - see the License page for details.
๐ค Contributingโ
We welcome contributions! Please see our Contributing Guide for details.
โญ Support the Projectโ
If you find this project useful, please consider giving it a star on GitHub. Your support helps others discover the project and motivates further improvements.
Ready to get started? Check out our Installation Guide for detailed setup instructions, or learn more about Homebrew Integration.