Giter Site home page Giter Site logo

pgaskin / kobopatch-patches Goto Github PK

View Code? Open in Web Editor NEW
206.0 17.0 20.0 475.7 MB

Patches for use with kobopatch.

Home Page: https://pgaskin.net/kobopatch-patches/

License: MIT License

Shell 3.67% Batchfile 0.52% Go 95.81%
kobo kobopatch patch firmware ereader assembly zlib css

kobopatch-patches's Introduction

kobopatch-patches

Build Status

This repository stores patches for use with kobopatch. See the threads on MobileRead for more information.

kobopatch-patches's People

Contributors

geoffreynolds avatar jackiew1 avatar jcn363 avatar jswolf avatar lilymike avatar niluje avatar nkakouros avatar pgaskin avatar shermp avatar snarkophilus avatar ticky avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kobopatch-patches's Issues

Swap header/footer book title/chapter name

Several users are complaining about Kobo's decision to reverse which data was in header/footer.

I don't even know if this is possible and I wouldn't expect any early action from anyone but at least the thought won't get lost.

Changing the info panel in full size screensaver

Everything on MobileRead suggests that "Changing the info panel in full size screensaver" should work on all versions. But it isn't working on my Glo HD.

I would love to be able to customise the info panel, for example,

  • moving it to the upper left (or upper right)
  • adding the battery level
  • removing "Sleeping"

Have a different brightness icon when light is off

On the Kobo Forma, the brightness icon is the same whatever the brightness level, whether 0%, 1%... 5%... 50%... 100%. It's an icon of a sun.

I'd like to request the Kobo patch team to either:
A) replace the sun icon with a different icon when the light is completely off (for example, a circle that is filled with black)
or
B) create something beside the sun icon to indicate the light is completely off (for example,the word "0% light")

Rationale for this request: occasionally, when I'm in a completely dark room, I turn on the brightness from 0% to 1%. The next day, in the daytime, I read on my Kobo Forma forgetting that the brightness is on, and wading battery because I don't need the light at all in the daytime.

Change system font

Hi,

I'd like to have the system font changed. It would be great that we could
use side-loaded fonts for system font.

Many thanks.

kobopatch.yaml seems not to be used

Hi
thanks for the new patcher. I wanted to switch over from the old patcher to this one, and found that the changes in kobopatch.yaml are not used.

Here the relevant part of kobopatch_4.9.11311/kobopatch.yaml (all patch name lines are correctly intended by 4 spaces):

overrides:
  src/nickel.patch:
    Custom left & right margins: yes
    Fix three KePub fullScreenReading bugs: yes
    Change dicthtml strings to micthtml: yes
  src/libadobe.so.patch:
  src/libnickel.so.1.0.0.patch:
    Show all games: yes
    Custom reading footer style: yes
    Dictionary pop-up frame size increase: yes
    New home screen increasing cover size: yes
    Fix reading stats/author name cut off when series is showing: yes
    Increase the cover size in library: yes
    Increase the view details container size: yes
    Custom font to collection and author titles: yes
    New home screen subtitle custom font: yes
    Remove footer (row3) and increase cover size on new home screen: yes
  src/librmsdk.so.1.0.0.patch:
    Default ePub monospace font (Courier): yes

after that I run the .sh or the respective binary and get:

kobopatch v0.7.6
https://github.com/geek1011/kobopatch

Reading config file (kobopatch.yaml)
Opening input file
Patching ./usr/local/Kobo/librmsdk.so.1.0.0
...

but all patches are marked as disabled and skipped.

Thanks

Norbert

Set font scale factor should have defaults of 4 and not 8

The Set font scale patch as it is does not keep the same font size in ePub before the patch is applied. Values of 8 do not work well. Values of 4 are the correct defaults. Sure you can change the values if you want, but if you don't want, then 4 is what needs to be put in place. Here is the patch with the values of 4 instead of 8.

Set font scale factor:
  - Enabled: yes
  - Description: |
      This patch sets the font scale factor for ePub and KePub readers.
      See also `ePub uniform font scale` and `Custom font sizes` patches.
  # Font scale factor is calculated as (font size slider) / (X+32)
  # Original value X=14, so original scale factor is (font size slider) / 46.
  # Allowed replacement values for X: 0-15 (smaller X --> larger scale factor)
  - ReplaceInt: {Offset: 0x52C522, Find: 14, Replace: 4} # ePub
  - ReplaceInt: {Offset: 0xAE9C80, Find: 14, Replace: 4} # KePub

Patches for 4.13.12638

1. (v43)

2. (v44)

  • Update/fix other patches (@geoffreynolds and @geek1011)
  • New patches
    • Disable wishlist (@geek1011)
    • Reduce width of selection popup (the share button is gone, so it now has ugly side padding) (@geek1011)
  • Fix conflict between Remove recommendations (row1col2) from home screen and New home screen increasing cover size (@geek1011)
  • Cleanup zlib patches (remove unnecessary offsets) (@geek1011)
  • Make release

3. (v45)

  • New patches
    • Maybe lower min brightness (on KA2, 1%=18/255) (@geek1011)
    • Some stuff from the request thread
  • Maybe work on #9 (@geek1011)
  • Make release

Earlier start time for Comfortlight

@geek1011 For your consideration once you feel like looking at patches again.

There was a request in the MR 'Kobo future firmware feature request thread' MR:post-3913806 regarding having the ability to set Comfortlight start time earlier than 21:00.

Naturally I'm bringing it to your attention because it's one I'd be interested in myself.😁 It can be dark by 15:00 in the UK in winter. Absolutely no urgency.

Enable rotation on all devices

Thanks for all the work!

There's a note under this option:

# This patch is not necessary anymore, as there is a fully working config setting
# now, but is being kept for backwards compatibility with old kobopatch configs.

How do I access this config setting?

Patch to allow USB storage even when on PIN screen

I'm going to make a new patch to allow using USB storage before unlocking the device. This might seem useless, but it will make it possible to recover from almost all segfaults from a mistake in a patch without factory resetting, as there isn't much code run before the first unlock which the patches touch.

The motivation for this patch came from working on the requested homescreen patches (#39, #40).

Port patches from old patch zips

For version 4.9.11311

  • nickel
    • GeoffR's patches
    • oren64's patches
    • My patches
    • Test all patches
  • libnickel
    • GeoffR's patches
    • My patches
    • Test all patches
  • librmsdk
    • GeoffR's patches
    • Test all patches
  • libadobe
    • GeoffR's patches
    • Test all patches
  • Test all patches on my kobo
  • Make release scripts
  • Tag a release
  • Post on MobileRead
  • Port 4.9.11314
  • Write automated tests

Kobo Forma's orientation is momentarily upside down after every wake or power-on

I like holding my Kobo Forma in my right hand.
On my Kobo Forma, I have inverted "Next" and "Previous" page-control hardware buttons.

These two things combined seem to cause my Forma, after waking up or powering on, to momentarily have the text or the enter-your-PIN page to be upside down, before correcting itself to be right-side up. I don't want to waste time every time I pick up my Forma waiting for it to have the right orientation. That wastes 5 seconds every time.

I noticed that when my Next and Previous buttons are not inverted, I don't have this temporary hiccup. But, I will not choose "non-inverted" just to avoid this hiccup. I would like to invert my page-control buttons AND not have this glitch.

geek1011, can you add a patch that fixes this?
Maybe we can we can force the Kobo Forma into one of five orientations (regardless of Kobo's pitch axis):

  1. handle on the right (for me, since I like to hold the Kobo with my right hand)
  2. handle on the left
  3. handle at the bottom (landscape)
  4. handle at the top (bats, circus performers, and handstand-walkers would appreciate this orientation)
  5. Automatic (based on pitch-axis sensor)

"Change dicthtml strings to micthtml" doesn't work completely on 4.20

I posted about my experience here, but basically, the patch applies without errors, but the full list of dictionaries doesn't appear in the drop down box; just a small subset. And the Settings menu thinks there are no dictionaries installed, despite the Installed and IsSynced columns in the database all being set to true and the micthtml files all being there. And you can still do searches on the dictionaries that are selectable, meaning that changing the file name does work since the Kobo can still access them.

Remove the patch and rename everything to dicthtml format, and everything works as expected again. Patch worked fine in 4.19 and earlier.

Make some patches multi-version

There are quite a few patches which take a bit of time to update (usually multiple int replacements), but don't change relative offsets often.

The CSS patches have already been simplified for v52.

The following patches will be made multi-version for 4.15.12920 or 4.17.13651+:

  • Sleep/power-off timeouts (138b6d6)\
    • Value offsets have been the same for a while.
    • If something changes, the patch will fail (offsets are spread around the function).
  • Custom kepub default margins (bdaa026)
    • Same as previous.
  • Change dicthtml strings to micthtml (a33da35)
    • Strings have been the same for a while.
    • A null byte was added to prevent matching the wrong string.
  • More?

Patches will be made multi-version if they:

  • Are relatively simple.
  • Will fail to build if something changes rather than causing side effects or segfaults (e.g. nothing with ReplaceBLX).
  • Are simple enough to figure out from the multi-version one (i.e. if someone else needs to figure out how they work, it should be relatively obvious and not require comparing files before and after the patch).
  • Will work in at least 2 versions.
  • Are able to have unique ways to identify replacements (e.g. not replacing a specific instance of a string appearing multiple times).
  • Do not require additional attention on upgrades (e.g. not depending on constants which are likely to change, such as the smartlink patches).
  • Have relative offsets less than 1000.

And a quick note: Due to some implementation details in the kobopatch symbol-finding, offsets from a symbol found by other tools will usually need to be decreased by 1 to work.

GeoffR's multi-version "My 10 line spacing values" patch for libnickel

@geek1011
This is what I've been using. I don't know if it answers your question but I think it's working OK.
I believe the only bits I changed myself are the last 10 lines of ReplaceFloat custom line-height values. You're on your own with the FindBaseAddressHex, ReplaceBytes bits :)

My 10 line spacing values - MV:
  - Enabled: no
  - PatchGroup: Line spacing values alternatives
  - Description: |
      This patch changes the values on the line spacing adjustment slider,
      reducing the number of spacing options from 15 to 10, but allowing
      much narrower spacing values to be set.
      Created by GeoffR for fw 4.11.11980 
      https://www.mobileread.com/forums/showpost.php?p=3772937&postcount=248
    # Bypass code-constructed values 1.0, 1.2, 1.5, 2.0, 3.0
  - FindBaseAddressHex: 4F F0 00 09 07 F1 80 01 4F F0 00 08 C3 F6 F0 79 3C 1D F3 58 20 46 61 E9 1E 89 7B 60
  - ReplaceBytes: {Offset: 20, FindH: 20 46 61 E9 1E 89, ReplaceH: 7B 60 03 E0 00 BF}
  - ReplaceBytes: {Offset: 108, FindH: 20 46, ReplaceH: 03 E0}
  - ReplaceBytes: {Offset: 150, FindH: 20 46, ReplaceH: 03 E0}
  - ReplaceBytes: {Offset: 210, FindH: 20 46, ReplaceH: 03 E0}
  - ReplaceBytes: {Offset: 312, FindH: 20 46, ReplaceH: 03 E0}
    # 10 values for replacement, change these replace_float values to suit:
  - FindBaseAddressHex: CD CC CC CC CC CC F0 3F 1F 85 EB 51 B8 1E F1 3F
  - ReplaceFloat: {Offset: 0,  Find: 1.05,  Replace: 0.8}
  - ReplaceFloat: {Offset: 8,  Find: 1.07,  Replace: 0.85}
  - ReplaceFloat: {Offset: 16, Find: 1.1,   Replace: 0.9}
  - ReplaceFloat: {Offset: 24, Find: 1.35,  Replace: 0.92}
  - ReplaceFloat: {Offset: 32, Find: 1.7,   Replace: 0.94}
  - ReplaceFloat: {Offset: 40, Find: 1.8,   Replace: 0.96}
  - ReplaceFloat: {Offset: 48, Find: 2.2,   Replace: 0.98}
  - ReplaceFloat: {Offset: 56, Find: 2.4,   Replace: 1.0}
  - ReplaceFloat: {Offset: 64, Find: 2.6,   Replace: 1.02}
  - ReplaceFloat: {Offset: 72, Find: 2.8,   Replace: 1.04}

"Custom new header/footer font" - right-half progress part

I want to try to track down why using "Custom new header/footer font" to change font-family from Avenir to whatever only works on the Chapter name, Book title parts of header/footer, not the progress part on the right.

@geek1011 @NiLuJe
I'm not asking you to do this for me (at least not yet :)) but before I spend a lot of effort with trial & error in nickel CSS I'm asking whether you already know the answer from when you were researching "Don't uppercase header/footer text"?

Create new nickel patch to customise style of new header/footer

GeoffR's old patch "Custom reading footer style" included customisation of both height and style of the old footer.

The new patch "Reduce new header/footer height" handles the height part for both header/footer. There is not yet a patch to handle the style aspects. I am working on adding it.

It will be of most use to users where the default Avenir font serves their native language quite badly because it is not a Kobo-supported language, e.g. Russian, Vietnamese. However it will be usable by anyone for purely cosmetic purposes or just-because-we-like-to-tinker.

SmartLink patches

  • Figure out how it works
  • Patches
    • Set visible SmartLink
    • Only show pocket
    • Only show stats
    • Remove Kobo Plus, wishlist, and points SmartLinks
  • Test

Footer/header/navbar FAQ

There are at least 5 different patches about this, and it's not clear (even to me) what they all do. Let's collect some notes here which can be turned into a FAQ.

cc @jackiew1

Patches for 4.20.14601

Patches for 4.16.13162

v52:

v52/v53:

Patches for 4.19.14123

Create new nickel patch to customise new navigation scrubber

The navigation scrubber is new in 4.17 so there aren't any existing patches. I am planning to add one. I have found the relevant nickel CSS code.

Like issue 26, it will be of most use to users whose language is not officially supported by Kobo, e.g. Russian, where the default Avenir font is pretty hopeless and the fallback CJK font even worse.

add missing letter replacement for Hebrew keyboard (GloHD/ClaraHD/AuraOne/H2O2):

based on latest Cyrillic keyboard update to "libnickel.so.1.0.0.yaml" there is also a need to update the missing line for the

Hebrew keyboard (GloHD/ClaraHD/AuraOne/H2O2):
- ReplaceString: {Offset: -56, Find: "ß\0", Replace: "ן"}

here it is in the context of the file:

Hebrew keyboard (GloHD/ClaraHD/AuraOne/H2O2):
  - Enabled: no
  - PatchGroup: Keyboard alternatives
    ## Replaces keys on the Extended Latin keypad with Hebrew alternatives.
    ##
    ## Note that after the device boots, the keypad might just show blank squares
    ## until after the first book has been opened.
    ## Also note that long-pressing keys on the base keypad will no longer show
    ## the appropriate list of Extended Latin keys.
    #
    # Replace layout sign
  - FindBaseAddressString: "ÉÀÇ"
  - ReplaceString: {Offset: 0, Find: "ÉÀÇ", Replace: "אב"}
    # Change keyboard layout
  - FindBaseAddressString: "ý\0\0ÿ\0\0š\0\0ž\0\0"
    # Top row, left to right (10 keys):
  - ReplaceString: {Offset: 0x00, Find: "ý\0", Replace: "/"}
  - ReplaceString: {Offset: 0x04, Find: "ÿ\0", Replace: "'"}
  - ReplaceString: {Offset: 0x08, Find: "š\0", Replace: "ק"}
  - ReplaceString: {Offset: 0x0C, Find: "ž\0", Replace: "ר"}
  - ReplaceString: {Offset: 0x10, Find: "æ\0", Replace: "א"}
  - ReplaceString: {Offset: 0x14, Find: "œ\0", Replace: "ט"}
  - ReplaceString: {Offset: 0x18, Find: "þ\0", Replace: "ו"}
  **- ReplaceString: {Offset: -56, Find: "ß\0", Replace: "ן"}**
  - ReplaceString: {Offset: 0x1C, Find: "ij\0", Replace: "ם"}
  - ReplaceString: {Offset: 0x20, Find: "ŀ\0", Replace: "פ"}

Patches for 4.15.12920

v47:

  • Testdata (@geek1011: 0771e96)
  • Update patches (@geek1011: e80962a)
    • Sign out button CSS needs to be redone
    • Preserve PDF pan position also needs to be redone
  • TOC indentation patches (@geek1011: b3334e5)
    • Fix the Kobo bug where everything is indented 1 extra level
    • Make indentation more visible
  • Release (@geek1011: v47)
  • Post on MobileRead (@geek1011)

v48:

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.