Use your iPhone's internet on Omarchy/Arch over USB — gum TUI, systemd-networkd, zero-touch reconnect
usbmuxd pairing + ipheth + systemd-networkd profile (Driver=ipheth match, fallback metric 750, RequiredForOnline=no). Commands: install/pair/unpair/ status/priority/uninstall. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> |
||
|---|---|---|
| omatether.sh | ||
| README.md | ||
omatether
iPhone USB tethering for Omarchy / Arch (systemd-networkd + iwd stack). Plug an iPhone in over USB and use its internet connection — the phone's Wi-Fi if it's on one, cellular otherwise. Fully headless, no GUI required.
How it works
usbmuxdhandles the iOS pairing/trust handshake (udev-activated, no service to enable)- the kernel's
iphethdriver exposes the phone as a normal network interface - a
systemd-networkdprofile (10-iphone-tether.network) matches byDriver=iphethand DHCPs it, at fallback priority (route metric 750) so it never hijacks ethernet (100) or Wi-Fi (600)
Install
./omatether.sh install # packages + networkd profile
./omatether.sh pair # unlock phone, tap Trust
Then on the phone: Settings → Personal Hotspot → Allow Others to Join: ON. The connection comes up automatically whenever the phone is plugged in.
Commands
| Command | What it does |
|---|---|
install |
Install usbmuxd/libimobiledevice, write networkd profile |
pair / unpair |
Manage the Trust pairing |
status |
Device, interface, IP, route, live connectivity test |
priority high |
Route all traffic via the phone even when ethernet is up |
priority low |
Back to fallback-only (default) |
uninstall |
Remove the networkd profile |
Notes
- iOS shares whatever uplink it has: on Wi-Fi it shares the Wi-Fi; otherwise cellular.
- The tether interface usually appears as
eth0; the profile matches by driver, not name. RequiredForOnline=no— an unplugged phone never blocks boot.- DNS follows the Omarchy convention (
UseDNS=no; global resolvers via systemd-resolved).