Wednesday, July 18, 2012

Calibre: Mirroring settings via Dropbox

Calibre is a free and open source e-book library management software that can sync to various e-book readers, including the Amazon Kindle. It also provides automatic and scheduled fetching of RSS feeds from various blogs and news sources, which is then instantly sent/emailed to your e-book reader.  I've been using it for the latter the last six months - it's much more pleasant to read blogs and news on a Kindle than on a computer screen.  Calibre is available on Windows, OSX and Linux.

I run Calibre on a computer at home, but when I travel I turn this off and run Calibre on my notebook.  Unfortunately, this means that I also have to keep update the settings and which news feed I follow on both machines.  However, it turns out it is rather simple to synchronize these settings across machines via a cloud drive.  Below is how you do it on Windows 7 using Dropbox.  Since this setup is not specific to a particular users, it can be applied to all of your machines running Calibre.
  1. Make sure you have a Dropbox account and the Dropbox client up and running.
  2. In your Dropbox folder (e.g. C:/Users/Joe/Dropbox/), create the following subdirectory  mirror/AppData/Roaming/calibre/.
  3. [Optional] If you already have Calibre setup locally, you may wanna copy your current Calibre setting in  C:/Users/Joe/AppData/Roaming/calibre/ to this subdirectory.
  4. Create a Windows shortcut of calibre.exe (e.g. type 'calibre' in the Start menu box), but drag'n'drop it to the desktop.
  5. Right-click on the calibre shortcut icon and select Properties...
  6. Only if 'Start in' is empty, then copy the value in 'Target' to 'Start in' and drop the last part contain 'calibre.exe', e.g. afterward is should be something like "C:\Program Files (x86)\Calibre2\".
  7. In 'Target' paste the following as is (including the double quotes) as one line of text:
    cmd.exe /C "set CALIBRE_CONFIG_DIRECTORY=%USERPROFILE%\Dropbox\private\mirror\AppData\Roaming\calibre && calibre.exe"
  8. [Optional] To have Calibre start in tray, add '--start-in-tray' after calibre.exe in Step 7, cf. Calibre User Manual.
  9. [Optional] Set 'Run' to 'Minimized'.
  10. [Optional] In the 'General' tab, rename the program to 'Calibre (mirrored)'.
  11. [Optional] Click 'Change icon' and set the icon back to calibre.exe, e.g.  "C:\Program Files (x86)\Calibre2\calibre.exe" (the same as the original value of Target).
  12. Click OK.
Now you can start Calibre by clicking on the 'Calibre (mirrored)' shortcut icon.  The first time you start it, you'll be asked a few setup questions, unless you copied your old settings in Step 2.

Monday, June 25, 2012

Do not Factory Reset your Rooted Android Phone (and how to fix it)

So I did it; I hit Settings -> Privacy -> Factory Reset on my rooted LG Optimus V Android 2.2.1 phone (despite having read that one should never ever do this to a rooted Android phone).  Phone tried to reboot, but got stuck in a loop at the Custom Recovery (a bootup menu).  In other words, I bricked the phone - or at least softly so, because there is a solution, which is particularly easy if you have/had a Custom Recovery installed.  This is what I did:
  1. Powered off the phone.
  2. Moved the SD card from the phone to my notebook.
  3. Downloaded [5,068,663 bytes]
  4. Copied the above ZIP file to the root of the SD card.
  5. Moved the SD card back to the phone.
  6. Start the phone by holding down Home + Volume Down, and then the Power button (until LG logo appears).  This will boot the phone into recovery mode.
  7. In the recover menu, select 'install zip from sdcard' (navigate with Volumn Up/Down, Back and Camera keys).
  8. Select 'choose zip from sdcard'.
  9. Select 'Xionia_CWMA_12518.6_VM_Recov[...]'.
  10. Confirm the installation by selecting 'Yes - Install  Xionia_CWMA_12[...]'.
  11. Phone will now be reflashed (fast; a few seconds) while displaying:
    -- Installing: SDCARD:Xionia_CWM
    Finding update package...
    Opening  update package...
    Verifying update package...
    Installing update...
    *-* Flashing Xionia CWMA 12518.4 VM Recovery *-*
    Install from sdcard complete.
  12. Hit Back key and select 'advanced'.
  13. Select 'Fix Recovery Boot Loop'.  Screen will go black and phone will reboot.
  14. Phone will start up the default Android image.
Although it's the default Virgin Mobile LG setup, everything works, i.e. WiFi, 3G and phone calls. Phew!

Since I've previously done a full Nandroid backup using the Custom Recovery, I could also restore the ROM image to the most recent backup I've done by:
  1. Power off the phone.
  2. Boot up the phone in Recovery mode (Home + Volume Down & Power buttons).
  3. Select 'backup and restore' in the Recovery menu.
  4. Select 'Restore'.
  5. Select '2012-05-' (that was my last backup)
  6. Confirm by selecting 'Yes - Restore'.
  7. This will reflash the phone (taking a few minutes) while displaying:
    Xionia CWMA v1.2518.6
    Checking MD5 sums...
    Erasing boot before restore...
    Restoring boot image...
    Restoring system...
    Restoring data...
    Restoring .android_secure...
    Restoring cache...
    sd-ext.img not found. Skipping r
    estore of /sd-ext/
    Restore complete!
  8. In the recovery menu, select 'reboot system now'.
  9. The phone will startup with the ROM and settings you had when you did the backup.
Awesome!  Phone is back to what it used to be.

Friday, June 22, 2012

Convert a JConnect's JFX fax to PDF (without software)

I rarely receive faxes, but when I do I've been using the jConnect fax service (by j2 Global Inc). I signed up for a free account* many years ago and it is still active and I still have my own free fax number for incoming faxes.

When someone sends you a fax, their servers will send it to you as an email attachment.  Interestingly, the attached *.jfx fax document is just a TIFF file, which you can view in any TIFF viewer.  By changing the filename extension from *.jfx to *.tif, you'll be able to double-click to open it.

Alternatively, just upload the *.jfx file to your Google Drive and view it online.  The fax is will then also be searchable and you can create a PDF by clicking 'Print (PDF)'.  By using the Google Drive client, you can set it all up to such that you save the *.fjx attachment to a local directory and the fax will automatically appear on your Google Drive account.

Footnote: (*) I'm not sure if they still provide free accounts; I found this page, but it appears to do nothing when one fills it out.