Difference between revisions of "IPhone Make Cydia Package"

From ivc wiki
Jump to navigationJump to search
(New page: Cydia packages are simple .deb-files, also known from Debian Linux distribution. == Package files == When the program is ready and testing is done, create the following directory structu...)
 
 
(7 intermediate revisions by the same user not shown)
Line 22: Line 22:
  Package: com.saurik.programname
  Package: com.saurik.programname
  Name: ProgramName
  Name: ProgramName
  Version: 1.0.4-1
  Version: 1.0
Priority: optional
Size: 128222
Installed-Size: 125
  Architecture: iphoneos-arm
  Architecture: iphoneos-arm
  Description: An example of using APT, short desc.
  Description: An example of using APT, short desc.
Line 34: Line 37:
  Sponsor: Microsoft <http://www.microsoft.com/>
  Sponsor: Microsoft <http://www.microsoft.com/>
  Section: Utilities
  Section: Utilities
  Icon: http://www.saurik.com/programname/icon.png
  Icon: <nowiki>file:///Applications/ProgramName/icon.png</nowiki>
 
Omit the Depiction field if you want to show the Description field instead of the URL provided.


== Make package ==
== Make package ==
Line 40: Line 45:
On Linux or Mac OS X, get the suitable dpkg-deb binary:
On Linux or Mac OS X, get the suitable dpkg-deb binary:


* [http://beta.ivancover.com/iphone/cydia/dpkg-deb-lnx dpkg-deb Linux
* [http://beta.ivancover.com/iphone/cydia/dpkg-deb-lnx dpkg-deb Linux]
* [http://beta.ivancover.com/iphone/cydia/dpkg-deb-fat dpkg-deb Mac OS X
* [http://beta.ivancover.com/iphone/cydia/dpkg-deb-fat dpkg-deb Mac OS X]


And run the following command.
And run the following command to build the package, not that there's no ending slash.


  dpkg-deb -b ProgramName
  dpkg-deb -b ProgramName
Line 51: Line 56:
  contains user-defined field
  contains user-defined field


The final package is either created in the working directory or as a hidden .deb in the ProgramName folder, view it with ''ls -la''.
The final package is created in the working directory, view the directory with ''ls -lha''.


== Create repository ==
== Create repository ==
Line 79: Line 84:
  Components: main
  Components: main
  Description: An Example Repository from HowTo Instructions
  Description: An Example Repository from HowTo Instructions
Icon: <nowiki>http://www.saurik.com/repo.png</nowiki>


This information will be shown in the ''Sources''-section in Cydia.
This information will be shown in the ''Sources''-section in Cydia.

Latest revision as of 16:15, 28 August 2009

Cydia packages are simple .deb-files, also known from Debian Linux distribution.

Package files

When the program is ready and testing is done, create the following directory structure:

- ProgramName
 - Applications
 |  - ProgramName.app
 |    | - Info.plist
 |    | - ProgramName
 |    | - icon.png
 |    | - Default.png
 |    | - ... and all other files
 - DEBIAN
 |  - control
 - System
 |  ... and other files

The control-file should contain the following information:

Package: com.saurik.programname
Name: ProgramName
Version: 1.0
Priority: optional
Size: 128222
Installed-Size: 125
Architecture: iphoneos-arm
Description: An example of using APT, short desc.
 Every day people use Cydia, but with the
 instructions embodied in this package,
 people can publish for it as well.
Homepage: http://www.saurik.com/id/7
Depiction: http://www.saurik.com/id/7
Maintainer: Your Name <you@example.com>
Author: Jay Freeman <saurik@saurik.com>
Sponsor: Microsoft <http://www.microsoft.com/>
Section: Utilities
Icon: file:///Applications/ProgramName/icon.png

Omit the Depiction field if you want to show the Description field instead of the URL provided.

Make package

On Linux or Mac OS X, get the suitable dpkg-deb binary:

And run the following command to build the package, not that there's no ending slash.

dpkg-deb -b ProgramName

Ignore any user-defined field errors.

contains user-defined field

The final package is created in the working directory, view the directory with ls -lha.

Create repository

A repository is necessary to make the package show up in Cydia.

Download the modified dpkg-scanpackages where the user-defined fields Name, Author, Homepage, and Icon is added to the filedpri-array (perl script). Create the Packages-file using the following command:

dpkg-scanpackages -m . /dev/null >Packages

Look at the file content to verify that the package and field information is correct:

cat Packages

Compress it using bzip:

bzip2 Packages

Optionally create a metadata file in the same directory as Packages called Release describing the repository:

Origin: Saurik's Example for Cydia
Label: Cydia Example Short
Suite: stable
Version: 0.9
Codename: tangelo
Architectures: iphoneos-arm
Components: main
Description: An Example Repository from HowTo Instructions
Icon: http://www.saurik.com/repo.png

This information will be shown in the Sources-section in Cydia.

References