Libimobiledevice: Difference between revisions

From NixOS Wiki
imported>Tobias.bora
No edit summary
imported>Onny
m Fix syntax errors
Line 1: Line 1:
In order to be able to automatically mount your iOS device (such as an iPhone) when connecting it, you need to install `libimobiledevice` and to activate the `usbmuxd` service.
In order to be able to automatically mount your iOS device (such as an iPhone) when connecting it, you need to install <code>libimobiledevice</code> and to activate the <code>usbmuxd</code> service.


Add the following to your `configuration.nix`:
Add the following to your <code>configuration.nix</code>:


<syntaxhighlight lang="nix">
<syntaxhighlight lang="nix">
Line 16: Line 16:
$ ifuse /tmp/iphone
$ ifuse /tmp/iphone
</syntaxhighlight>
</syntaxhighlight>
If you get an error about `ERROR: No device found!`, check the status of `usbmuxd`:
If you get an error about <code>ERROR: No device found!</code>, check the status of <code>usbmuxd</code>:
<syntaxhighlight>
<syntaxhighlight>
$ sudo systemctl status usbmuxd.service
$ sudo systemctl status usbmuxd.service

Revision as of 13:22, 23 June 2022

In order to be able to automatically mount your iOS device (such as an iPhone) when connecting it, you need to install libimobiledevice and to activate the usbmuxd service.

Add the following to your configuration.nix:

services.usbmuxd.enable = true;
environment.systemPackages = with pkgs; [
  libimobiledevice
  ifuse # optional, to mount using 'ifuse'
];

You can then mount your device using ifuse:

$ mkdir /tmp/iphone
$ ifuse /tmp/iphone

If you get an error about ERROR: No device found!, check the status of usbmuxd:

$ sudo systemctl status usbmuxd.service

If you see an error

ERROR: Could not connect to lockdownd on device [...], lockdown error -8

you may need to restart the usbmuxd service as reported [here https://github.com/NixOS/nixpkgs/issues/152592]:

$ sudo systemctl restart usbmuxd.service

(it may take a bit of time)