]>
Commit | Line | Data |
---|---|---|
1 | #!/bin/bash | |
2 | ||
3 | # XXX: FIX THIS!! | |
4 | architecture=iphoneos-arm | |
5 | version=$(sw_vers -productVersion) | |
6 | ||
7 | if grep '^Package: firmware$' /var/lib/dpkg/status >/dev/null; then | |
8 | cat /var/lib/dpkg/status | while IFS= read -r line; do | |
9 | if [[ ${line} == 'Package: firmware' ]]; then | |
10 | firmware= | |
11 | elif [[ ${line} == '' ]]; then | |
12 | unset firmware | |
13 | elif [[ ${line} == Architecture:* && "${firmware+@}" ]]; then | |
14 | echo "Architecture: ${architecture}" | |
15 | continue | |
16 | elif [[ ${line} == Version:* && "${firmware+@}" ]]; then | |
17 | echo "Version: ${version}" | |
18 | continue | |
19 | fi | |
20 | ||
21 | echo "${line}" | |
22 | done >/var/lib/dpkg/status_ | |
23 | else | |
24 | cat /var/lib/dpkg/status - >/var/lib/dpkg/status_ <<EOF | |
25 | Package: firmware | |
26 | Essential: yes | |
27 | Status: install ok installed | |
28 | Priority: required | |
29 | Section: System | |
30 | Installed-Size: 0 | |
31 | Maintainer: Jay Freeman (saurik) <saurik@saurik.com> | |
32 | Architecture: ${architecture} | |
33 | Version: ${version} | |
34 | Description: almost impressive Apple frameworks | |
35 | Name: iPhone Firmware | |
36 | ||
37 | EOF | |
38 | fi && mv -f /var/lib/dpkg/status{_,} | |
39 | ||
40 | echo "/." >/var/lib/dpkg/info/firmware.list | |
41 | ||
42 | if [[ ${version} = 1.0* || ${version} = 1.1.[012] ]]; then | |
43 | user=root | |
44 | else | |
45 | user=mobile | |
46 | fi | |
47 | ||
48 | if [[ ! -h /User && -d /User ]]; then | |
49 | cp -afT /User /var/"${user}" | |
50 | fi && rm -rf /User && ln -s "/var/${user}" /User |