Backup Cydia Apps – iPhone

I previously wrote a post on scripting the install of Cydia apps but I since found a much better way to handle the problem. Its a lot cleaner but it still doesn’t backup cydia apps data. Instead it creates a list of stuff thats been installed and makes it really easy to reinstall it all.

Step 1: Backup Cydia Apps

To do this we’re going to need to fire up the terminal and create a file to store our list. This can all be handled with one command.

dpkg --get-selections > myapps.txt

Putting this code into terminal will create a text file called “myapps.txt” which contains all the selections you’ve made in Cydia. Use an ftp client to save this file to your computer and you’re done.

Most people at this point are now going to upgrade their phone, etc.

Step 2: Restore Cydia Apps

Now you’ve got a fresh iphone with a fresh install of Cydia. You’ll need terminal and probably SSH installed first before you proceed. Once done upload your “myapps.txt”. Using terminal navigate to the directory containing that file and issue the following commands. Note: the $ at the beginning of each line is just the prompt and not part of the commands.

$dpkg --set-selections < myapps.txt
$apt-get -u dselect-upgrade
$rm /private/var/mobile/Library/Caches/com.apple.mobile.installation.plist
$killall SpringBoard

You’re all done! If you want to understand what each command does then read on.

Analysis

dpkg --set-selections < myapps.txt

This grabs everything that was selected in myapps.txt and loads it into the package manager.

apt-get -u dselect-upgrade

This basically says “upgrade all current packages and install anything thats been selected. This is what actually installs all the cydia apps.

rm /private/var/mobile/Library/Caches/com.apple.mobile.installation.plist

This step is vital. This file is basically a cache of which applications are installed. This command deletes that cache which will be automatically regenerated with all of our selections in place.

killall SpringBoard

This kills the Springboard or iphone interface. It will automatically relaunch and generate a new com.apple.mobile.installation.plist. All done!

  • Hey dan, I like that social bookmarking thing popping at the top on your blog. would you mind telling me how you did it.. thanks.
  • Dan
    Gladly, it's a wordpress plugin I wrote, you can find it here http://wordpress.org/extend/plugins/active-share-by-orangesoda/
  • Asdfsadfasd
    will the backup be available when iOS4 is installed?
  • Dan
    Assuming all the packages are upgraded to work with iOS4 and you save the backup.txt to your computer before upgrading your phone (and of course you hack it again and install cydia) then yes, it should work fine.
  • KMAN
    apt-get seems to be missing says command not found running 3.1.3 with latest cydia any ideas in terms of downloads needed. I assume a certain package needs to be installled. These "apt" like packages are installed on my iphone
    apr-lib
    apt7-key
    apt7-lib
  • Dan
    That's very strange. In order for cydia to work apt-get is required. Try looking around inside /etc for it.
  • Ray
    Thanks for this, Wish I knew this a couple days ago. One question though. When I run the script to install all, what about the packages that need a reboot?
  • Gary
    What was the name of the jail breaker that is not quick pwn?
  • Da5id
    Not gonna lie, that is pretty epic. (And why don't you just through on a shitty interface on this and sell it in Cydia again?) Truly thanks!
blog comments powered by Disqus