Initial Setup
libimobiledevice requires a few files and some commands you can note down. Let's download those.
Prerequisites
Windows, Mac or Linux computer with an Internet connection
iOS device with an Internet connection
Lightning cable (for connecting the device to your computer)
Downloading libimobiledevice
On your computer, download libimobiledevice for your OS. Download for Windows Download for macOS and Linux
Extract the ZIP archive, and place it in a place you won't delete
Press CTRL+R, type
sysdm.cpl
, and press EnterClick "Advanced", and "Environment Variables"'
Click "Path", and "Edit..."
Click "Browse..." and select the folder you extracted
Press OK, and close the windows
Downloading the Developer Disk Image
When tethering, you need to mount a Developer Disk Image. We'll download this on your computer.
Head over to this GitHub repository. It contains all the developer disk images, taken straight from Apple.
Download the correct archive for your device.
Not all iOS versions have a disk image. If your version is not listed, choose the version before it.
Extract the archive, and save it somewhere you can find it later.
Noting down some commands
There are some commands here that you can copy+paste later. Let's find them.
Connect your iOS device to your computer, and open a terminal/command prompt before proceeding.
Finding your devices UUID
Type
idevice_id
and press Enter
Now you will see your devices in this list. Note down the number before (USB)
or (Network)
.
If your device says (Network)
besides it, you don't need your device connected via USB for this to work! Just remember to add the -n
parameter to the commands you are running.
Finding UTMs Bundle Identifier
Type
ideviceinstaller -l -u
, and paste your devices UUID.Press Enter
This will show every app on your device, and will probably be a very long string of text. You can paste this into a text editor like TextEdit or Notepad, and search for "UTM".
In the line you found "UTM", the bundle identifier is the left-most entry. e.g com.utmapp.UTM
. Note this string down.
Noting down the launch commands
Now we'll note down the commands you need to run every time you are tethering UTM on your device.
Mounting the disk image
ideviceimagemounter -u [your devices UUID] [path to DeveloperDiskImage.dmg]
Example:ideviceimagemounter -u 12345678-ABCEDEFGHIJKLMNO C:\Users\BluDood\15.0\DeveloperDiskImage.dmg
Tethering UTM
idevicedebug -u [your devices UUID] --detach run [UTM bundle ID]
Example:idevicedebug -u 12345678-ABCEDEFGHIJKLMNO --detach run com.bludood.UTM
Done!
That's the initial setup process for libimobiledevice. In the next step, we'll run the commands and look at some troubleshooting steps:
Last updated