Monday, March 24, 2008

Symptom: iPhone / iTouch Installer.app crashes back to the springboard.



[Update: Changing the user ID (App Store / Mobile Me) will also cause this issue, use ONE login on your device. -Perhaps a shared one; keep the password secret for billing purposes...more here]


To help avoid future crashes, monitor iPhone/iTouch free space using BossTool, as described here.


*** The following is for firmware 1.x.x only, NOT 2.x.x ***


Fixing iPhone Installer crash: Assuming resetting the springboard and rebooting the iPhone didn't work,
you'll need a Secure SHell to the iPhone.

(SSH should be among the first few programs installed, with BSD subsystem (necessary for most programs) , and BossPrefs (necessary to turn SSH on and OFF when not needed.))

Note: SSH is now "odomatically" installed with ZiPhone 3.0.

[If SSH wasn't installed originally, the recommended action would be to restore the iPhone, and run ZiPhone to reinstall the third party Installer.app. Googling "installing SSH on iPhone" will offer solutions, however, they have proven to be hit-or-miss.]


The recommended SSH program is Cyberduck, from this site. (OSX)


Now:
Insure WiFi is enabled.

Insure SSH is On (if you were able to turn it off).

Goto 'Settings', select 'Wi-Fi', and press the little arrow to the right of your wireless network name.

Note the your IP address.




If using Cyberduck, Click 'Open Connection', enter your IP address into the server field.

Enter root into the Username field.

Enter alpine into the password field (unless you changed it).

click 'Connect' -[allow up to 30 secs for secure key generation if SSH wasn't used before.]

Navigate to the private/var/mobile/Library/Installer directory.**
[Select /private/var from the pull-down menu, and click double-click 'Library', then double-click 'Installer' from the resulting lists.


** private/var/
root/Library/Installer directory if apps weren't relocated from the 300MB partition.


You may wish to backup (copy to the desktop; Cyberduck, drag to desktop) these files / folder first.

Then

[Note: I've found just deleting the 'RemotePackages.plist' file works.]

Delete the 'Temp' directory, and 'RemotePackages.plist' file.
(These will be recreated by Installer.)


Do *not* delete the 'LocalPackages.plist', as this contains all your installed packages.


Reboot the iPhone.

Before
turning OFF Wi-Fi & SSH (see end of this post), check to verify Installer loads.

I'll wait here....



Still no?
Time to reinstall the 'Installer' application:


Run 'Terminal' from your 'Utilities' folder.

Enter the following:

ssh root@
your IP address
when prompted, enter alpine (or your password)

Enter [Case-sensitive]: (or copy/paste)

cd /
cd Applications/
wget
http://repository.apptapp.com/packages/System/Installer.zip
rm -rf Installer.app
unzip Installer.zip
chmod +s Installer.app/Installer
chown -R root:wheel Installer.app
rm Installer.zip

Be patient, after your iPhone completes the reinstall, type exit to end the session.
Reboot the iPhone.

Upgrade to the newer version of Installer if prompted.

Don't forget to turn OFF SSH (install
'BossPrefs' if necessary)
[ installer repository: sleepers.net/iphonerepo ]

blog comments powered by Disqus