summaryrefslogtreecommitdiffstats
path: root/README
diff options
context:
space:
mode:
authorGravatar Jonathan Beck2008-12-13 12:21:03 +0100
committerGravatar Jonathan Beck2008-12-13 12:21:03 +0100
commit3fdd24aea06a9bf38d9d34fb8bccbb7023ed3100 (patch)
tree1080d26eca01c885efb33f3f98821a981a25e8b4 /README
parent3d8ba053deeacd74e621469d3d45d1db38ee411a (diff)
downloadlibplist-3fdd24aea06a9bf38d9d34fb8bccbb7023ed3100.tar.gz
libplist-3fdd24aea06a9bf38d9d34fb8bccbb7023ed3100.tar.bz2
Fork libiphone and remove anything non plist specific.
Update library and make related files acordingly .
Diffstat (limited to 'README')
-rw-r--r--README96
1 files changed, 4 insertions, 92 deletions
diff --git a/README b/README
index 472547f..e83ea2f 100644
--- a/README
+++ b/README
@@ -2,13 +2,9 @@ INSTALLATION
2================================================================================ 2================================================================================
3 3
4For: 4For:
5 Apple iPhone/iPod Touch 1.0/1.1/1.1.1/1.2/1.3/2.0+ 5 Apple Binary and XML Property Lists
6 + iPod USB cable
7 6
8You must have: 7You must have:
9 libgnutls-dev
10 libusb-dev
11 libfuse-dev (and the associated kernel modules)
12 libglib2.0-dev 8 libglib2.0-dev
13 libxml2-dev 9 libxml2-dev
14 make 10 make
@@ -22,94 +18,10 @@ To compile run:
22 ./configure 18 ./configure
23 make 19 make
24 sudo make install # (if you want to install it into your system directories) 20 sudo make install # (if you want to install it into your system directories)
25 libiphone-initconf # (as the user you intend to user the library)
26 21
27On Ubuntu/Debian, you can do: 22On Ubuntu/Debian, you can do:
28 sudo apt-get install build-essential automake autoconf \ 23 sudo apt-get install build-essential automake autoconf \
29 libgnutls-dev libusb-dev libfuse-dev libglib2.0-dev libxml2-dev \ 24 libglib2.0-dev libxml2-dev
30 libreadline5-dev
31
32USAGE
33================================================================================
34
35Now comes the fun bit!
36
37== Generating keys ==
38
39IMPORTANT: Before using the library you must run "libiphone-initconf"
40as your own user (not root). It will generate keys and a host id for your
41system to be able to communicate with 'lockdownd' on the iPhone.
42
43It will probably take 5-10 minutes, but thankfully only needs to be
44run _once_. It MUST be run otherwise communication will not work:
45
46 libiphone-initconf
47
48The generated keys are saved in '~/.config/libiphone/' in your home directory.
49
50== Tools ==
51
52There are currently two more executables 'ifuse' and 'iphoneclient',
53both located in src/.
54
55
56=== iFuse ===
57
58This is probably what you're after; this mounts a view of your
59iPhone/iPod Touch's filesystem over the USB interface using the native
60Apple protocol (AFC/"com.apple.afc").
61
62ifuse is a Fuse filesystem which allows you to mount your iPhone to a directory
63like this:
64
65 ./src/ifuse <mountpoint> -s
66
67To unmount:
68 umount <mountpoint>
69
70(nb: '-s' is to force single-threaded mode, as ifuse maybe unstable without it).
71
72Eg:
73 mkdir ~/iphone
74
75 ifuse ~/iphone -s
76 ls -l ~/iphone
77 ...
78 umount ~/iphone
79
80Currently ifuse (via the AFC protocol) only gives access to the
81'/var/root/Media/' chroot on the iPhone (containing music/pictures).
82
83If you have a device that has been jailedbreaked then an additional
84("com.apple.afc2") service will have been installed, without the chroot.
85On jailbroken devices only, you can do:
86
87 ifuse ~/iphone --root -s
88
89And this will mount a full view of the iPhone's filesystem.
90
91
92==== Setting up FUSE ====
93
94Note that on some systems, you may have to load the 'fuse' kernel
95module first and to ensure that you are a member of the 'fuse' group:
96
97 sudo modprobe fuse
98 sudo adduser $USER fuse
99
100You can check your membership of the 'fuse' group with:
101
102 id | grep fuse && echo yes! || echo not yet...
103
104If you have just added yourself, you will need to logout and log back
105in for the group change to become visible.
106
107
108=== iphoneclient ===
109
110'iphoneclient' is a basic commandline interface for testing, it just
111runs a few various test operations such as attempting to view/create a
112test file in the iPhone, but is mainly a developer tool.
113 25
114 26
115== Who/what/where? == 27== Who/what/where? ==
@@ -118,10 +30,10 @@ wiki:
118 http://matt.colyer.name/projects/iphone-linux/index.php?title=Main_Page 30 http://matt.colyer.name/projects/iphone-linux/index.php?title=Main_Page
119 31
120code: 32code:
121 git clone http://git.matt.colyer.name/2008/libiphone/ 33 git clone git://github.com/JonathanBeck/libplist.git
122 34
123mailing list: 35mailing list:
124 http://lists.mattcolyer.com/listinfo.cgi/iphone-linux-dev-mattcolyer.com 36 http://lists.mattcolyer.com/listinfo.cgi/iphone-linux-dev-mattcolyer.com
125 37
126updated: 38updated:
127 2008-09-02 39 2008-12-12