Page 1 of 51 12345611 ... LastLast
Results 1 to 10 of 504

Thread: How to create a Cydia Repository

  1. #1
    Join Date
    Feb 2008
    Location
    18º24'N ~ 66º05'W
    Posts
    11,479
    Thanks
    503
    Thanked 1,251 Times in 854 Posts
    Downloads
    163
    Uploads
    738

    Default How to create a Cydia Repository

    *This guide should not be reposted without written permission of the author. You may, however, link to it. Please give credit where it is due.*

    Introduction

    After spending a lot of time searching the internet for a guide on how to set up a Cydia Repository, and not finding any one thing totally useful, I decide to consolidate everything I learned from my readings and from my conversations with persons familiar with Cydia and/or Debian APT into one easy-to-understand guide. I have tried to make this guide as simple and straight-forward as possible but you need to already have some good computer skills to attempt this.

    This guide has 30+ screenshots. Some might say it's too many and some might say it's not enough! Personally, I like screenshots. I prefer to know what I should be seeing rather than to assume what I am doing is correct. Some of the screenshots are from Linux and some are from Windows. I will do my best to alert you as to which is which, but it should be obvious. This thread will be closed for posting but if you have questions or comments, please open a new thread. I will try to update this guide as things progress so feel free to alert me to changes.


    This guide will help you create the following folder and files necessary for your repository to work:
    1. deb folder - contains .deb files (packages)
    2. Package.gz - zip archive of the Package file with all the app's information
    3. Release file - repository identification file
    Credits

    Jay Freeman (saurik) - http://www.saurik.com - for writing Cydia and writing the first guide on setting up a Cydia repository.

    Kyle Matthews (poetic_folly) - ModMyi.com - for showing me how to build .deb files with the iPhone! Who knew the iPhone could do more than make calls!?!?

    MrBucket101 - iPhoneModding.com - for teaching me the basics of Linux and for his script-writing skills.


    Needed before beginning

    1. Internet access - the faster the better!
    2. A computer with Linux/Ubuntu 8.10 installed - you can partition your hard drive and set up your computer to dual-boot your current operating system and Linux like I did. You could also run it from a virtual machine. Google is your friend on these subjects. I won't get into them here. BTW, I'm using version 10.
    3. A website - where you have FTP access for hosting the repository.
    4. THIS package - it contains files that you will copy to two directories on your Linux machine.
    5. Your app or theme - for the purpose of this guide, I will be using a fictitious theme called MyProgram.
    6. A fair amount of patience and time!
    Please read!

    How to Host a Cydia™ Repository by Jay Freeman (saurik)

    How to use Winterboard posted by MrBucket101


    Index

    Step 1 - Creating your app or theme

    Step 2 - The control file

    Step 3 - The Cydia repo files

    Step 4 - Extract the cydi-repo.zip contents

    Step 5 - Move the cydia-repo files

    Step 6 - The repo file directory structure

    Step 7 - Place your app/theme in apps folder

    Step 8 - Building the .deb file

    Step 9 - The Packages.gz archive

    Step 10 - Upload deb folder and Packages.gz to repo

    Step 11 - The Release file

    Step 12 - Test your repo in Cydia

    How to make .deb files with the iPhone

    Creating a professional looking Depiction

    Creating a screenshot page

  2. The Following 15 Users Say Thank You to maXimus For This Useful Post:

    + Show/Hide list of the thanked

    Aqua Sta (01-05-2010),beco52 (03-07-2013),boys19899 (06-08-2011),Chris Coleman (06-03-2011),chuckturner (01-30-2009),greekone (03-10-2011),IBurak (04-26-2011),InsecureSpike (01-28-2011),kevc45 (05-16-2010),MrBucket101 (02-03-2009),pod (02-06-2011),TheWarlu (08-24-2011),Vendeta34 (07-15-2011),volta (01-01-2010),warex (02-25-2012)

  3. #2
    Join Date
    Feb 2008
    Location
    18º24'N ~ 66º05'W
    Posts
    11,479
    Thanks
    503
    Thanked 1,251 Times in 854 Posts
    Downloads
    163
    Uploads
    738

    Default Step 1 - Creating your app or theme

    You need to have an app or theme that you want to put on your repo for others to install.

    *At this point I am working from Windows 7 although you may work from whatever OS makes you comfortable.

    Example 1
    In the example below I have created a theme called MyProgram. I have created a folder with the same name which will contain all the files. In that folder is a sub-folder called DEBIAN (all caps). Every app or theme will have this folder. The control file, which we will discuss later, is located here. The other subfolder Library is configured exactly how you want the files to appear on your iPhone. In the following example the iPhone will get a new Phone icon, a new Settings icon, a new dock and finally a new springboard wallpaper.




    Example 2
    In this example I have created a fictitious app and LaunchDaemon to install on the phone.
    As you can see, the DEBIAN folder with control file is there as required.


  4. The Following 7 Users Say Thank You to maXimus For This Useful Post:

    beco52 (03-07-2013),boys19899 (06-08-2011),darala (08-31-2011),greekone (03-10-2011),IBurak (04-26-2011),sieuhai.net (03-07-2013),Vendeta34 (07-15-2011)

  5. #3
    Join Date
    Feb 2008
    Location
    18º24'N ~ 66º05'W
    Posts
    11,479
    Thanks
    503
    Thanked 1,251 Times in 854 Posts
    Downloads
    163
    Uploads
    738

    Default Step 2 - The control file

    The control file is a text file with name and value pairs separated by a colon.

    IT IS IMPORTANT TO HIT "ENTER" AT THE END TO HAVE A BLANK LINE ON THE BOTTOM.

    When you save the text file, you must remove the ".txt" a the end of the file name if your editor automatically adds it to the file.



    Here are brief descriptions of each field:
    • Package: this is the identifier of the package and should be all lower case. It is similar to the bundleIdentifier in Apple's Info.plist file.
    • Name: the name of your program as seen in Cydia.
    • Version: program version number.
    • Architecture: this will probably always be "iphoneos-arm".
    • Depends: program(s) that need to be installed for your program to work such as "winterboard" if it is a theme.
    • Description: a description of your program (ignored if you use Depiction).
    • Homepage: "More Information" on the Details page, sends the user to the page of the packager's choice (ignored if you use Depiction).
    • Depiction: this loads a URL into an iframe in place Description and Homepage. You should use this to display custom links and/or screenshots.
    • Maintainer: package builder, person to contact for problems, format "Name <email address>".
    • Author: wrote the software, same format as Maintainer.
    • Sponsor: financial provider for package, format "Name <website>.
    • Section: location in Cydia.
    *At this point, I switched over to Linux.

  6. The Following 5 Users Say Thank You to maXimus For This Useful Post:

    beco52 (03-07-2013),boys19899 (06-08-2011),mistir (03-02-2012),sieuhai.net (03-07-2013),Vendeta34 (07-15-2011)

  7. #4
    Join Date
    Feb 2008
    Location
    18º24'N ~ 66º05'W
    Posts
    11,479
    Thanks
    503
    Thanked 1,251 Times in 854 Posts
    Downloads
    163
    Uploads
    738

    Default Step 3 - The Cydia repo files

    If you haven't already, download the zipped archive cydia-repo.zip archive and place it on the Desktop.


  8. The Following 6 Users Say Thank You to maXimus For This Useful Post:

    badsector (07-02-2011),beco52 (03-07-2013),boys19899 (06-08-2011),sieuhai.net (03-07-2013),Technologx (12-24-2014),Vendeta34 (07-15-2011)

  9. #5
    Join Date
    Feb 2008
    Location
    18º24'N ~ 66º05'W
    Posts
    11,479
    Thanks
    503
    Thanked 1,251 Times in 854 Posts
    Downloads
    163
    Uploads
    738

    Default Step 4 - Extract the cydi-repo.zip contents

    After extracting the files from the archive, you should have a folder on the Desktop with the following two files:

    dpkg-scanpackages
    dpkg-gettext.pl


  10. The Following 3 Users Say Thank You to maXimus For This Useful Post:

    beco52 (03-07-2013),boys19899 (06-08-2011),Vendeta34 (07-15-2011)

  11. #6
    Join Date
    Feb 2008
    Location
    18º24'N ~ 66º05'W
    Posts
    11,479
    Thanks
    503
    Thanked 1,251 Times in 854 Posts
    Downloads
    163
    Uploads
    738

    Default Step 5 - Move the cydia-repo files

    Now open a Terminal window. In Terminal you'll copy the two files to their respective locations.




    Type the following commands ("sudo" is necessary since will need to run as administrator) to copy the dpkg-scanpackages
    file to the /usr/bin folder and make it executable:
    Code:
    sudo cp /home/username/Desktop/cydia-repo/dpkg-scanpackages /usr/bin
    sudo chmod 0777 /usr/bin/dpkg-scanpackages



    Notice that after running the first command, you'll be prompted for your password before continuing to the second.




    Type the following commands to copy the dpkg-gettext.pl file to the /etc/perl folder and make it executable:
    Code:
    sudo cp /home/username/Desktop/cydia-repo/dpkg-gettext.pl /etc/perl
    sudo chmod 0777 /etc/perl/dpkg-gettext.pl



    Here is the /usr/bin folder:




    Here is the /etc/perl folder:


  12. The Following 6 Users Say Thank You to maXimus For This Useful Post:

    Aqua Sta (01-05-2010),beco52 (03-07-2013),boys19899 (06-08-2011),IBurak (04-26-2011),sieuhai.net (03-07-2013),Vendeta34 (07-15-2011)

  13. #7
    Join Date
    Feb 2008
    Location
    18º24'N ~ 66º05'W
    Posts
    11,479
    Thanks
    503
    Thanked 1,251 Times in 854 Posts
    Downloads
    163
    Uploads
    738

    Default Step 6 - The repo file directory structure

    Now create a folder called cydia in your home folder (or where ever you want, just be sure to make appropriate changes where necessary).

    In that folder, create a sub-folder called apps for your apps and themes and another called upload for files going to your repository.




    In the upload sub-folder, create a sub-folder called deb for your packages .deb files.


  14. The Following 4 Users Say Thank You to maXimus For This Useful Post:

    beco52 (03-07-2013),boys19899 (06-08-2011),sieuhai.net (03-07-2013),Vendeta34 (07-15-2011)

  15. #8
    Join Date
    Feb 2008
    Location
    18º24'N ~ 66º05'W
    Posts
    11,479
    Thanks
    503
    Thanked 1,251 Times in 854 Posts
    Downloads
    163
    Uploads
    738

    Default Step 7 - Place your app/theme in apps folder

    Place your app/theme in the apps folder.


  16. The Following 3 Users Say Thank You to maXimus For This Useful Post:

    beco52 (03-07-2013),boys19899 (06-08-2011),Vendeta34 (07-15-2011)

  17. #9
    Join Date
    Feb 2008
    Location
    18º24'N ~ 66º05'W
    Posts
    11,479
    Thanks
    503
    Thanked 1,251 Times in 854 Posts
    Downloads
    163
    Uploads
    738

    Default Step 8 - Building the .deb file

    Open Terminal again and type the following commands to change to the apps directory and build the .deb file:
    Code:
    cd /home/username/cydia/apps
    dpkg -b MyProgam
    *You must type the package name exactly as it appears in the name of the directory (capitalization counts).

    **The two warnings are ignored since they are custom fields that will show up in Cydia.




    Browse to your apps folder and you will see the newly created .deb file:




    Move the .deb file to the /home/username/cydia/upload/deb sub-folder.


  18. The Following 4 Users Say Thank You to maXimus For This Useful Post:

    Aqua Sta (01-05-2010),beco52 (03-07-2013),boys19899 (06-08-2011),Vendeta34 (07-15-2011)

  19. #10
    Join Date
    Feb 2008
    Location
    18º24'N ~ 66º05'W
    Posts
    11,479
    Thanks
    503
    Thanked 1,251 Times in 854 Posts
    Downloads
    163
    Uploads
    738

    Default Step 9 - The Packages.gz archive

    Go back to Terminal and type the following commands to build the Packages.gz archive:
    Code:
    cd /home/username/cydia/upload
    dpkg-scanpackages -m . /dev/null | gzip -9c >Packages.gz



    Browse to the upload folder and you should find your Packages.gz archive.




    Right-click the Packages.gz archive and choose Open with "Archive Manager".



    Then double click the Packages file so you can see it's contents. Check that the field
    Filename: says ./deb/MyProgram.deb. This is important since it will be the location of
    your .deb files on your repository.


  20. The Following 5 Users Say Thank You to maXimus For This Useful Post:

    beco52 (03-07-2013),boys19899 (06-08-2011),Dev Jena (10-26-2010),Rogozhuk (06-15-2011),Vendeta34 (07-15-2011)

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •