summaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md84
1 files changed, 84 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..748594b
--- /dev/null
+++ b/README.md
@@ -0,0 +1,84 @@
1# usbmud
2
3## About
4
5A socket daemon to multiplex connections from and to iOS devices.
6
7## Background
8
9usbmuxd stands for "USB multiplexing daemon". This daemon is in charge of
10multiplexing connections over USB to an iOS device. To users, it means
11you can sync your music, contacts, photos, etc. over USB. To developers, it
12means you can connect to any listening localhost socket on the device. usbmuxd
13is not used for tethering data transfer which uses a dedicated USB interface as
14a virtual network device. Multiple connections to different TCP ports can happen
15in parallel. The higher-level layers are handled by libimobiledevice.
16
17When usbmuxd is running (normally started, or stopped as a result of "udev"
18auto-insertion messages or by systemd) it provides a socket interface in
19"/var/run/usbmuxd" that is designed to be compatible with the socket interface
20that is provided on Mac OS X.
21
22You should also create a "usbmux" user that has access to USB devices on your
23system. Alternatively, you can pass a different username using the -U argument.
24
25Due to iOS 7 the daemon now also manages pairing records with iOS devices and
26the host in "/var/lib/lockdown" (Linux) or "/var/db/lockdown" (Mac OS X).
27Ensure proper permissions are setup for the daemon to access the directory.
28
29## Requirements
30
31Development Packages of:
32* libimobiledevice
33* libplist
34* libusb
35
36Software:
37 make
38 autoheader
39 automake
40 autoconf
41 libtool
42 pkg-config
43 gcc
44 udev (Linux only)
45
46Optional:
47 systemd (Linux only)
48
49## Installation
50
51To compile run:
52
53```bash
54./autogen.sh
55make
56sudo make install
57```
58
59The daemon is automatically started by udev or systemd depending on what you
60have configured it on hotplug of an iOS device and exits if the last device
61was unplugged.
62
63For debugging purposes it is helpful to start usbmuxd using the foreground '-f'
64argument and enable verbose mode '-v' to get suitable logs.
65
66## Who/What/Where?
67
68* Home: http://www.libimobiledevice.org/
69* Code: `git clone http://git.libimobiledevice.org/usbmuxd.git`
70* Code (Mirror): `git clone https://github.com/libimobiledevice/usbmuxd.git`
71* Tickets: http://github.com/libimobiledevice/usbmuxd/issues
72* Mailing List: http://lists.libimobiledevice.org/mailman/listinfo/libimobiledevice-devel
73* IRC: irc://irc.freenode.net#libimobiledevice
74* Twitter: https://twitter.com/libimobiledev
75
76## Credits
77
78The first usbmuxd daemon implementation was authored by Hector Martin.
79
80Apple, iPhone, iPod, and iPod Touch are trademarks of Apple Inc.
81libimobiledevice is an independent software library and has not been
82authorized, sponsored, or otherwise approved by Apple Inc.
83
84README Updated on: 2015-12-13