Change the Contacts icon

July 3, 2015

I’ve covered this sort of thing long ago, but here are some quick specifics on how to change a system icon without using Winterboard.  I’ll assume some basic knowledge of SFTP. I use Transmit but you could use CyberDuck or whatever.


I find this Contacts icon much more tolerable than the horrid one introduced with iOS 7 I believe.

Download the .zip file from that link. If you’re still on iOS 7 you can work with the icons as is. If you’re on iOS 8, trash the 40×40 size, it’s not needed.  The next 3 icons rename:


Now backup the old contact icons here:


Replace/overwrite them with the new ones of the same name.

Double check the ownership/permissions remain root/admin 664.

Now delete the old cached icons. Navigate to:


and delete any temp cache files that start with:



Jailbreaking iOS 8.4 with TaiG on a Mac Virtual Machine (boo on El Cap)

July 3, 2015

Hey everyone in blogville. Been quite a while…

Hopefully it won’t be long before TaiG releases it’s iOS 8.4 jailbreak for the Mac. But for those who couldn’t wait, it’s known to be possible to jailbreak using a virtual machine. Possible, just extremely frustrating.

There are many guides on how to do this, such as this one by iPhone hacks.

The most important highlighted tips include:

• turn off Find My Phone, turn off passcode lock

• use iTunes 12.0.1 on Windows; newer versions less likely to work

• run TaiG in administrator mode

I must have tried 15 times before it worked, so here are my additional tips:

• don’t even bother trying while running the Windows VM while booted into OS X 10.11 el Capitan 10.11 developer beta (at least DP1 or DP2 anyway).  There are known issues with USB, and it simply won’t work.  If you can’t see your iDevice mounted in iTunes for Windows, TaiG won’t find it either.  I had to boot into a volume running OS X 10.7 to have any luck in that first step. (hint: disconnect external drives where possible to avoid spotlight reindexing)

• first make sure you’re signed into iCloud fully on your target iDevice. This is so not to be interrupted by sign-in dialogs during the jailbreak

• turn off wi-fi AND turn on airplane mode. keep any possible interruptions to a minimum.

• don’t touch your phone, even while TaiG appears stuck for a long time at 30% or 50% or whatever. just wait until it tells you it has timed out.

• it will probably still fail many times.  Just keep trying (remember always to start TaiG in administrator mode).

• make sure to set the VM USB & Bluetooth settings to open the iPhone with Windows, NOT to ask each time. That way you won’t screw up the timing by responding to the dialogs. But of course make sure to set it back to ask after you’re done.

• Windows 8 or Windows 10 have both been recommended; in my case Windows 8 is what ultimately worked, but that doesn’t mean Windows 10 won’t.

Remote Start Torrents on OS X from the iPhone

February 10, 2012

For some time I’ve been looking for an effective way to browse torrent sites on my iPhone and be able to get my Mac to download the torrent.

Several Cumbersome Approaches

I found several solutions, including:

Each of these ways worked but was too clumsy. The first had to be reinstalled with any new version of Transmission and is likely to break.  The second involved Safari Download Manager, which as of this moment has not been updated for iOS 5, or a similar Cydia Safari tweak called Safari DownPlugin iOS 5 which I found highly unsatisfactory (and uninstalled). The third was sleek but involved too many steps and – gasp – typing. I wanted this to be as natural and automated as possible.

Best Approach

The best way I found is this:

Use the Atomic Web Browser to download the torrent file, then use its built-in Dropbox integration to upload it to dropbox, and then set Transmission auto add torrents from a designated watch folder.

Of course you will need a Dropbox account. Make a “Downloads” folder, and then both set Atomic to upload to that Dropbox folder and set Transmission to watch it.

Another bittorrent client might work just as well as long as it has a watch folder feature. Also, another iOS browser capable of downloading files and supporting Dropbox integration would also work.

If you’re not using another watch folder in Transmission, that’s it!  Very simple.

Multiple Watch Folders

Unfortunately for me, Transmission can only be set to watch one folder to auto add torrents. And I have a default download folder – not a dropbox folder – that it watches already.  Some other torrent clients may already support multiple watch folders, in which case again, it’s easy.

But if you’re in the same boat, the best solution I found so far is to set up a system to automatically move torrent files from the designated dropbox Downloads folder to the default system Downloads folder.

Here are two ways to do that:

  1. make an Automator action (or write an AppleScript) and have it triggered by a Folder Action. (the easy way but not terribly reliable.)
  2. write an AppleScript and have it triggered by launchd (much more reliable).  Here’s some discussion about how to use launchd instead of Folder Actions.   If there is sufficient interest in this I may put together a tutorial later.

Fixing the iBooks Fix and iTunes 10.5.3

January 19, 2012

Today Apple had a big media event, announcing its entry into interactive textbook publishing.  At the same time, it released iBooks 2 and iTunes 10.5.3 to support syncing these new textbooks between devices.

Though I don’t have an iPad (required for the textbooks), I was still interested in trying to upgrade iBooks to version 2.0.  The Corona jailbreak on Cydia version 1.0-5 announced that it had fixed the iBooks issue.  Hooray!

Problem is, since iBooks didn’t work after applying the 5.0.1 untethered jailbreak, I decided to apply “iBooks Fix 2” from Cydia. Essentially that moved the iBooks application from the mobile user Applications space to the root user Applications space.  Simply uninstalling “iBooks Fix 2” (which I did) doesn’t undo that.  So how to fix it?  Manually delete the entire “iBooks” folder from /Applications using iFile, and re-spring.  Then, I was able to install iBooks 2 with iTunes, and it now works as normal.

So in sum:

  1. Install Corona 1.0-5 or higher (can be installed over redsn0w or Pwnage Tool jailbreaks for untethered iOS 5.0.1)
  2. Uninstall iBooks Fix 2
  3. Delete iBooks from /Applications with iFile & re-spring
  4. Install iBooks 2.0 with iTunes

In other news, iTunes 10.5.3 has been deemed jailbreak safe, and I can attest that it synced a cracked app.



A Rocky Road to iOS 5 Untethered

December 29, 2011

A Last iPhone OS 4 Hold Out

I’d been holding out for an untethered jailbreak for iOS 5, as a tethered jailbreak was never of any use to me. iOS 4.3.2 was nice and stable and trouble-free. Aside from Mint, which required iOS 5 for some crazy reason, I had no real reason to upgrade to iOS 5 anyway. The new notification center was attractive, but I already had it with jailbreak tweaks like Notified Pro. But I knew I’d need to upgrade eventually, if only for iCloud by Summer 2012 when MobileMe is slated for execution, R.I.P.

The Promise of Siri on iPhone 4 Sweetens the Pot

But then a few days ago I learned of the legal Siri port for iPhone 4, Spire. (I didn’t yet know it was going to be such a pain to get working that it wasn’t really worth the bother.) And then the next day Pod2G’s untethered jailbreak was released. So it was time to give it a go.

I’ll spare the blow by blow, but it was not a smooth upgrade. Here’s some of what I encountered:

Cannot Restore from iPhone OS 4 backup

• I made a custom firmware, preserving my 1.59.00 baseband on my iPhone 4, using redsn0w 0.9.10b1. Then I jailbroke also using the same version of redsn0w. iTunes threw me an error 1600 (some kind of unknown error), which turned out to be because I had blocked connections to Apple in my hosts file. I had forgotten about that. And then the USB connection was really touchy, and I had to unplug all other USB devices and leave my keyboard and the phone directly connected to the Mac.

• After fixing those issues, a restore completed, but then iTunes crashed between finishing the restore and activating the phone, so I was left with only the choice to set up a new phone. I did this and also found the phone hadn’t been activated. (I’m on AT&T contract.) I found a way to get iTunes to “forget” that it had set a phone, in order to force it to restore from my last iOS 4 backup. Unfortunately after doing so I was just asked to “Set Up New Phone” again. Still no restore from backup option. To make matters worse, both the “Restore” and “Upgrade” buttons in iTunes were grayed out. Furthermore, Cydia’s servers were hammered so I couldn’t even install any needed tools like iSSH. Oh well, I hadn’t wasted too much time yet, so let’s try jailbreaking again.

Second try with PwnageTool 5.0.1

• This time I used PwnageTool 5.0.1. Again I didn’t allow the baseband upgrade, and I unchecked the “Activate” box in advance settings – because that really means “hacktivate” (and it should be called that). I’m on an official carrier contract. I also used the advanced mode to pre-install iSSH and a couple other packages, in case I had trouble with Cydia.

• The second attempt “worked” and did allow me to restore my old iPhone OS 4.x backup. But not without glitches. I was getting Error 1600 or 1604 from iTunes, again, and so again had to unplug USB hubs, etc. As expected, iTunes skipped over my cracked IPAs, leaving a springboard mess to sort out later. Cydia servers were still hammered, and so I had to fight to get in, just to get PKGBackup, so I could restore old Cydia packages and sources. I was careful not to restore anything stupid – like AppSync for OS 4 when there is an AppSync for iOS 5+ instead. Or Frash, which hasn’t worked in some time.

Post Jailbreak Problems

• But still there were problems and conflicts. I checked this compatibility list. Backgrounder got installed and that turned out to be causing crashes. Once removed that was fine. Other packages I removed just in case included: SpringFlash with it’s SBSettings toggle, Safari Download Manager, and Push Notifications SBSettings toggle.

As of this post I have two big remaining, unsolved problems, which seem quite common if not universal (to those who just applied some form of the untethered jailbreak):

1. iBooks doesn’t work.

I realize there are “fixes” for it, such as “iBooksFix2” on Cydia, but so far they don’t satisfy. They involve moving iBooks to the root /Applications folder, when it is supposed to be an iTunes-installed app. What if there are updates? Holding out for a better solution.

2. the 1/4 size screen issue on every boot.

Again, I realize there is a tempory fix: enter safe mode, open an affected application, then restart. But apparently you must do this after every reboot. Seriously? Hopefully @rpetrich can come up with a fix, and generally fix other problems with Activator on iOS 5.

Edit: rpetrich replied in a tweet: “unrelated to Activator”. So cause remains unknown.

Corona makes retrying easy!

In an effort to resolve issue #1, I installed the Corona 5.0.1 Untether jailbreak version “1.0-3” from Cydia. I checked first and learned that could be installed on top of the PwnageTool 5.0.1 or the redsn0w 0.9.10b1 jailbreak, and is presumably the same as redsn0w 0.9.10b2. All of those flavors aimed to fix an issue with launchctrl. But rumor had it that it fixed iBooks too. Sadly that wasn’t the case.

The nice thing about this new exploit is that it can be tweaked, as with Corona, without a need for a complete restore. It’s sort of sitting on top of iOS 5.0.1. Hopefully the problems will get ironed out in due time.

Other Notes

• The version of MobileTerminal I had restored crashes. Get the “520” version (from xsellize source among others I think) instead.

• Some app store apps that worked before no longer work, even though they’re at the current version. Instapaper and RSS Flash G both get interface lockups. These aren’t resolved by force quitting the app in question. A couple of others crash at launch.

• It’s sure nice of iTunes to now continue to restore application settings and documents even if it gets interrupted during the initial restore process. This makes the script I wrote to restore app settings/docs from an rsync backup no longer really needed as long as this continues to work. But better to always make a full rsync backup before a firmware upgrade anyway, just in case.

• I had gotten used to being able to connected to my phone without needing to type a password, via SSH using Terminal on my Mac. I described how to set up authorized keys in step 4C in the script comments posted on the link above. But now on iOS 5 I get the error: “.ssh/authorized_keys: No such file or directory”. As advised, I made the “.ssh” on the phone root. I even tried creating that file first (with touch), but got the same error. If anyone knows why please let me know.

• iOS 5 now has the ability to set some alert sounds to ringtones. This makes the tweak I described here mostly unnecessary, though there may still be sounds I want to change.


Indeed, it does look like 1.0-5 version of Corona fixes the iBooks problem.  See this new post.  The quarter screen issue seems to have gone away after one reboot at least. Since I upgraded Activator and Corona and SBSettings at the same time, it’s hard to know what may have fixed it.