Before starting:
1. Make sure your Kobo ereader is running firmware version
3.1.1 (761b066420). These patches work only for this specific firmware version and no other.
Windows (or other OS using a Windows emulator):
1. Download mz_koboreaderpatch_11.exe (self-extracting archive) from
http://rghost.net/50558386. Extract kpg.exe only (ignore the other files).
2. Download kobo-update-3.1.1.zip from
http://download.kobobooks.com/firmwa...date-3.1.1.zip. Inside kobo-update-3.1.1.zip is a tar archive KoboRoot.tgz. Inside KoboRoot.tgz is a file usr/local/Kobo/libnickel.so.1.0.0. Extract libnickel.so.1.0.0 only (ignore the other files).
3. Download
kpg_conf_3_1_1.zip attached and extract kpg.conf.
4. Edit kpg.conf to: enable the patches you want (set patch_enable = `yes`) and disable the patches you don't want (set patch_enable = `no`); change the replacement values for the patches to suit your preferences. (See the section below on editing kpg.conf.)
5. Put kpg.exe, libnickel.so.1.0.0, and the edited kpg.conf together in the same directory and run kpg.exe.
6. If there are no problems then a file KoboRoot.tgz will be created. Copy this file to the .kobo directory on your ereader. Safely eject then unplug the ereader. Once unplugged the ereader will update and restart.
Linux (or other OS with GCC and GLIBC):
1. Download
patch32lsb-v0.6.zip attached, extract patch32lsb.c, and compile with the following command (there should be no errors or warnings):
gcc -Wall -o patch32lsb patch32lsb.c
2. Download kobo-update-3.1.1.zip from
http://download.kobobooks.com/firmwa...date-3.1.1.zip. Inside kobo-update-3.1.1.zip is a tar archive KoboRoot.tgz. Inside KoboRoot.tgz is a file usr/local/Kobo/libnickel.so.1.0.0. Extract libnickel.so.1.0.0 only (ignore the other files). You can use the following command to do this:
unzip -p kobo-update-3.1.1.zip KoboRoot.tgz | tar xz --strip-components=4 ./usr/local/Kobo/libnickel.so.1.0.0
3. Download
patch32lsb_conf_3_1_1.zip attached and extract patch32lsb.conf.
4. Edit patch32lsb.conf to: enable the patches you want (set patch_enable = `yes`) and disable the patches you don't want (set patch_enable = `no`); change the replacement values for the patches to suit your preferences. (See the section below on editing kpg.conf.)
5. Put patch32lsb, libnickel.so.1.0.0, and patch32lsb.conf together in the current directory and run the following commands:
mkdir -p usr/local/Kobo
./patch32lsb -p patch32lsb.conf -i libnickel.so.1.0.0 -o usr/local/Kobo/libnickel.so.1.0.0
tar czf KoboRoot.tgz ./usr/local/Kobo/libnickel.so.1.0.0
6. If there are no problems then a file KoboRoot.tgz will be created. Copy this file to the .kobo directory on your ereader. Safely eject then unplug the ereader. Once unplugged the ereader will update and restart.
To return your ereader to its original unpatched state:
1. Edit kpg.conf or patch32lsb.conf to disable all patches (set patch_enable = `no` for every patch).
2. Delete the old KoboRoot.tgz, then repeat steps 5-6 of the procedure for your OS above.
Editing kpg.conf to suit to your preferences and device
Some patches require no customisation, you can choose simply to enable them or not. But the following patches allow more customisation and their existing values in kpg.conf should be considered examples only.
1. Custom reading footer style: There are three example styles, comment out the styles you don't want by adding a "#" character at the beginning of the line beginning with replace_, and leave the style you want uncommented.
More complex customisation is possible by editing the replacement css text, see the
Kobo Patcher thread for examples.
2. My line spacing values: Change the lines starting with replace_float. The middle number is the original value, the number on the right is the new value that can be changed.
The values are the line spacings set by the adjustment slider. The actual spacing depends on the font used, but for most fonts a value of 0.7 gives very tight spacing with ascenders/descenders overlapping, a value of 0.9 gives a spacing similar to that of a mass-market paperback. The smallest value available in the unpatched firmware is 1.0.
3. Custom font sizes: Change the lines starting with replace_int. The middle number is the original value, the number on the right is the new value that can be changed.
The values are the font sizes set by the adjustment slider, they are in pixels so the absolute size depends on the device: size 20 on the Glo is about the same as size 25 on the AuraHD. Some books change the base font size, so you may need font sizes that are larger or smaller than your normal reading size to allow for adjusting such books.
4. Custom left & right margins: Change the lines starting with replace_int. The middle number is the original value, the number on the right is the new value that can be changed.
The values are the margin widths (in units of 1/16 inch I think) set by the adjustment slider. The margin size is added to whatever margin is fixed in the book (if any) and in reading software (The kepub reader has a base margin of about 2 units, the epub reader has a base margin of zero).
5. Brightness fine control: Change the lines starting with replace_int. The middle number is the original value, the number on the right is the new value that can be changed.
The values are the percentage amounts that the brightness slider changes when the small or large sun symbols are tapped. (Both should probably be set to the same value).