Improve with feature, installation and usage sections
diff --git a/ b/
index 9a75a18..52e4a43 100644
--- a/
+++ b/
@@ -1,67 +1,140 @@
 # libusbmuxd
-## About
+*A client library for applications to handle usbmux protocol connections with iOS devices*
-A client library to multiplex connections from and to iOS devices by connecting
-to a socket provided by a usbmuxd daemon.
+## Features
-## Requirements
+This project is a client library to multiplex connections from and to iOS
+devices alongside command-line utilities.
-Development Packages of:
-* libplist
+It is primarily used by applications which use the [libimobiledevice](
+library to communicate with services running on iOS devices.
-* usbmuxd (Windows and Mac OS X can use the one provided by iTunes)
-* make
-* autoheader
-* automake
-* autoconf
-* libtool
-* pkg-config
-* gcc or clang
+The library does not establish a direct connection with a device but requires
+connecting to a socket provided by the usbmuxd daemon.
-* inotify (Linux only)
+The usbmuxd daemon is running upon installing iTunes on Windows and Mac OS X.
-## Installation
+The [libimobiledevice project]( provides an open-source reimplementation of
+the [usbmuxd daemon]( to use on Linux or as an alternative to communicate with
+iOS devices without the need to install iTunes.
-To compile run:
+- **Protocol:** Provides an interface to handle the usbmux protocol
+- **Port Proxy:** Provides the `iproxy` utility to proxy ports to the device
+- **Netcat:** Provides the `inetcat` utility to expose a raw connection to the device
+- **Cross-Platform:** Tested on Linux, macOS, Windows and Android platforms
+- **Flexible:** Allows using the open-source or proprietary usbmuxd daemon
+Furthermore the Linux build optionally provides support using inotify if
+## Installation / Getting started
+### Debian / Ubuntu Linux
+First install all required dependencies and build tools:
+sudo apt-get install \
+	build-essential \
+	checkinstall \
+	git \
+	autoconf \
+	automake \
+	libtool-bin \
+	libplist-dev
+Then clone the actual project repository:
+git clone
+cd libusbmuxd
+Now you can build and install it:
 sudo make install
-If dependent packages cannot be found when running (or configure)
-make sure that `pkg-config` is installed and set the `PKG_CONFIG_PATH` environment
-variable if required. It can be passed directly like this:
+## Usage
-PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./
+### iproxy
+This utility allows binding local TCP ports so that a connection to one (or
+more) of the local ports will be forwarded to the specified port (or ports) on
+a usbmux device.
+Bind local TCP port 2222 and forward to port 22 of the first device connected
+via USB:
+iproxy 2222:22
-If you require a custom prefix or other option being passed to `./configure`
-you can pass them directly to `./` like this:
-./ --prefix=/opt/local --without-cython
-sudo make install
+This would allow using ssh with `localhost:2222` to connect to the sshd daemon
+on the device. Please mind that this is just an example and the sshd daemon is
+only available for jailbroken devices that actually have it installed.
+Please consult the usage information or manual page for a full documentation of
+available command line options:
+iproxy --help
+man iproxy
-## Who/What/Where?
+### inetcat
-* Home:
-* Code: `git clone`
-* Code (Mirror): `git clone`
-* Tickets:
+This utility is a simple netcat-like tool that allows opening a read/write
+interface to a TCP port on a usbmux device and expose it via STDIN/STDOUT.
+Use ssh ProxyCommand to connect to a jailbroken iOS device via SSH:
+ssh -oProxyCommand="inetcat 22" root@localhost
+Please consult the usage information or manual page for a full documentation of
+available command line options:
+inetcat --help
+man inetcat
+### Environment
+The environment variable `USBMUXD_SOCKET_ADDRESS` allows to change the location
+of the usbmuxd socket away from the local default one.
+An example of using an utility from the libimobiledevice project with an usbmuxd
+socket exposed on a port of a remote host:
+This sets the usbmuxd socket address to `` for applications
+that use the libusbmuxd library.
+## Links
+* Homepage:
+* Repository:
+* Repository (Mirror):
+* Issue Tracker:
 * Mailing List:
 * Twitter:
+## License
+This library is licensed under the [GNU Lesser General Public License v2.1](,
+also included in the repository in the `COPYING` file.
+This utilities `iproxy` and `inetcat` are licensed under the [GNU General Public License v2.0](
 ## Credits
 Apple, iPhone, iPod, and iPod Touch are trademarks of Apple Inc.
-libusbmuxd is an independent software library and has not been
-authorized, sponsored, or otherwise approved by Apple Inc.
+This project is an independent software library and has not been authorized,
+sponsored, or otherwise approved by Apple Inc.
-README Updated on: 2020-06-08
+README Updated on: 2020-06-12