Wednesday, January 9, 2008

Firmware 1.1.1 - iPhone and iPod Touch jailBreak how to get free wifi for ipod touch

Firmware 1.1.1 - iPhone and iPod Touch
Navigate to using Safari on your iPhone or iPod touch and read the instructions there.

Credits for this jailbreak go to metasploit, rezn, dinopio, drudge, kroo, pumpkin, davidc, dunham, and NerveGas.
Greetz to the iPhone Dev Team. is a UIKit based package manager for the iPhone. It works by downloading packages over WiFi (wireless networking) or EDGE. It supports installing, updating and uninstalling applications from multiple sources.

Please report bugs & feature suggestions to: iphone at You may also contact us if you wish to take over maintainance of packages or to contribute packages, we will get back to you as soon as we are ready. Please note that at this time is NOT a product of Nullriver Software and is not officially supported.

Older firmware (1.0, 1.0.1, 1.0.2)DO NOT USE THESE INSTALLERS ON FIRMWARE 1.1.1!
Mac OS X Downloads (for firmware 1.0, 1.0.1 and 1.0.2):
iTunes 7.4 or later: Download v3.1

Windows Downloads (for firmware 1.0, 1.0.1 and 1.0.2)
All iTunes versions: Download v0.92
Please join on if you have any problems. Thanks.

A list of some of the packages in the Community Sources can be seen at conceited software and Ste Packaging.

How to make a package - Draft documentation
Please bear with us, we are working on a new site and full documentation.
The format of a sample repository with a few packages.
can be downloaded here
A package consists of a zip file (that retains executable permissions) and a plist file that describes the package and defines the preflight/postflight/install/update/uninstall scripts.

The top portion defines the package description, which is as follows:
plist structure bundleIdentifier (string, required) - The unique bundle identifier of this package, this is how Installer knows what you are talking about. Do not ever change this value once a package goes live, unless you want to fork your package.
name (string, required) - The name of the package as it will appear in the Installer package listings.

version (string, required) - The version of your package. Currently, does not parse version numbers, but rather compares them -- meaning that you can only have one version of a product at a time live on the repositories. This shortcoming will be addressed in the near future.

location (string, required) - The location for the associated package zip file. This zip file MUST retain executable permissions if you are going to be installing any executables.

size (string, required) - The exact byte size of the package zip file. This must match or the Installer will not be able to install the package.
url (string, optional) - A url to link the "More info..." button to.
description (string, optional) - A package description or README. At this time Installer can only view a small portion of this text, but this will be addressed soon.

maintainer (string, optional) - The third party maintainer name for this package. You do not need to set this if it is the same as the repository maintainer.

contact (string, optional) - The third party maintainer contact (e-mail) for this package. You do not need to set this if it is the same as the repository maintainer's contact. RestartInstaller (boolean, optional) - set to true if you want installer to prompt the user to restart Installer itself after installing or updating this package. scripts (array, required) - This is where the core installation procedure takes place. It is composed of one or more

Installer scripts: preflight (array, optional) - this script is executed before any installs or updates, but NOT uninstalls. It is typically used to check whether the package can be installed.

install (array, required) - this is the install script, without this, the user won't be able to install the package. Makes sense, doesn't it?
update (array, optional) - this script is executed when the user updates the package, if it is not defined, installer uses the install script (see above) to update instead, effectively overwriting the old package -- this is useful for smaller packages that don't really need a separate update script.
postflight (array, optional) - this script is executed after any install or update of the package, but NOT uninstalls.

uninstall (array, optional) - this script is executed when the user chooses to uninstall the package. Although it is optional, it is HIGHLY recommended that you do define it so that your package can be uninstalled. If it is not defined, the uninstall button will not show up in Installer.
Each of these scripts is an array, containing script commands in the following format:


Argument 1

Argument 2

A command may take any number of arguments, as well as some commands take array arguments that can even contain other scripts embedded in the same format. The commandn name however, is always a string. Please note that in the event that the Installer cannot identify a command name, the script execution will be aborted (notifying the user).

script commands
CopyPath(source, destination) - Copies a path recursively. You can specify a folder or a file, but in either case the destination path must be absolute, do not leave out the filename when copying to a folder! It may work, but it is bad practice to do so and may cause unexpected results in some circumstances. The source path, when specified without a preceding slash (/, absolute path) will resolve to the contents of the zip file -- in the case that a full path is specified, it will resolve against the user's filesystem. FREE WIFI ANY TIME ALL THE TIME