A small Python script to connect to the internet over Bluetooth DUN (dialup networking) using my Nokia Symbian phone and my Linux laptop.
This was written on Arch Linux but should work elsewhere too. It uses bluez5 to enable bluetooth, rfcomm to create the serial port and wvdial to create the PPP connection and manage routes/DNS. Many newer phones use Bluetooth PAN instead of DUN so this method won’t be applicable.
Once upon a time this all worked automagically with NetworkManager. Since bluez5 it fails with this error:
Method "Connect" with signature "s" on interface "org.bluez.Serial" doesn't exist
Apparently we’re supposed to use the new Serial.ConnectFD DBUS API instead.