December 12, 2008

iPhone and eBooks, again

I recently upgraded JohnnyJohnny (my iPhone. If you don't know the reference, tough) to the 2.2 firmware. I hadn't jailbroken him since before the 2.0 release, and I was getting really, really sick of not having my eBooks locally stored, so I downloaded QuickPwn and went to work.

QuickPwn did exactly what it advertised, and I soon had a jailbroken-but-still-perfectly-functional iPhone. The only problem, I realized, was that the 2.2 firmware upgrade had brought a new bugbear - that of the Disappearing Wi-Fi. I found that I couldn't get the phone to stay on my wifi network, despite the fact that it hadn't been changed since I had been on 2.1. I tried everything - forgetting the network, bouncing into Airplane Mode, etc. - and no matter what, the damn thing would join my wifi net for maybe 30 seconds and then drop off. Bam. Even when I was sitting 7 feet from the antenna with nothing intervening.

I nuked the phone and reloaded a fresh 2.2 firmware, no jailbreak.

Nope. Problem still there. Damn it.

So I re-jailbroke it. No change, but at least I could try to work on my primary issue. I have maybe 500MB of eBooks, and in the 1.x days I had them all available on the phone itself thanks to two things - SSH/SCP, and the Safari file:// patch. Using those two tools, I could finally read my books on the subway. So using Cydia, I installed OpenSSH, MobileTerminal, and the Safari file:// patch.


Apparently MobileTerminal just...doesn't work. It runs fine, and give me a completely black screen, no matter what I do. It's like it just isn't running a shell. Don't know why. I could SSH into the phone with no trouble, though, so I did that and then SCP-ed my eBook directory into /var/mobile/Media/.

Nope. No worky. See, the new Safari file:// patch has a problem - No matter what you do, if you try to access a file that's in the /private/var tree (which is aliased to /var) you get a 'permission denied' error trying to look at the file. If you move the file into the / tree, it works fine - but / has only around 50 MB of space available and that's where the OS lives, so bad idea.

So I'm still screwed. I can't get MobileTerminal to work, and I can't get file:// to work in Safari properly. I know some people will just dismiss this with 'get a real eBook reader!' but phooey on them - I have books in .txt, .html and .pdf format. Some are in html directories (my favorite format, thanks Baen/Webscriptions!) so they need to be linked. I haven't found a product for the iPhone which will let me read all of these - except Safari, when the damn file:// space works.

So for the moment, I can still now only read books if I have network connectivity. Which is just completely @#&()(@# stupid.

Posted by jbz at December 12, 2008 12:39 PM | TrackBack


Hi! thanks for the comment! I *swear* I tried that, back then, and it didn't work...but I tried placing my file dir under /var/mobile instead of /var/root/ just now and...yep, it works. You've saved me; I'm getting on a flight tomorrow, and I'll have local book storage! Hooray!

I use Safari. The only books I have are HTML or PDF. I have the Kindle app and I like it, but I don't like paying Kindle prices (I don't have a Kindle, and 95% of my books are bought from in HTML format, which makes them easy to keep on private servers or laptops). I was fortunate enough to buy a couple of hardcovers from Baen a while back that included large sets of the author's work in eBooks on a CDROM. If you're a sci-fi reader, I recommend them wholeheartedly - no DRM, download again whenever you wish, multiple formats, and cheaper than Kindle.

Posted by: JB Zimmerman at March 8, 2009 9:50 PM

"No matter what you do, if you try to access a file that's in the /private/var tree (which is aliased to /var) you get a 'permission denied' error trying to look at the file."

Actually, my experience is the problem is only with children of /private/var/mobile/Media. For example, I put my pdf's in /private/var/mobile/PDFs and I can access them np from Safari. I also created a symLink for a more reasonable url:

ln -s /private/var/mobile/PDFs /pdf

So all of these work swell for me:


BTW, what do you use to read eBooks on iPhone? Safari works ok for Docs and PDFs. I have eReader and Kindle, but I would like something that reads several formats and loses the DRM...

Posted by: mickleby at March 7, 2009 9:54 PM
Post a comment

Remember personal info?