![]() |
#1 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,785
Karma: 6990707
Join Date: May 2016
Location: Ontario, Canada
Device: Kobo Mini, Aura Edition 2 v1, Clara HD
|
![]() kobopatch An improved patching system ------ Continued from https://www.mobileread.com/forums/sh...d.php?t=296597 Features/improvements over patch32lsb:
Usage:
Saving patch_enable options separately: See kobopatch.yaml in the patch zip for instructions. Reporting bugs: You can either reply here or open an issue on GitHub. Please provide log.txt along with your report. Last edited by geek1011; 02-03-2019 at 11:32 PM. |
![]() |
![]() |
![]() |
#2 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,785
Karma: 6990707
Join Date: May 2016
Location: Ontario, Canada
Device: Kobo Mini, Aura Edition 2 v1, Clara HD
|
FAQ:
What should the overrides option in kobopatch.yaml look like? Here is mine as an example: Spoiler:
Is this stable? It is. It has many automated tests, both at compile-time and at runtime. I periodically run manual tests comparing the output of all the patches with the existing patching system. I have also used this on my kobos for over 3 months with 4 different firmware versions. What is YAML? YAML is a superset of JSON. Can I use this with old patches? Yes. How can I update kobopatch? Download the latest binaries from the release page and put them in the bin folder. How does kobopatch convert from the old patch zips? First, it extracts the zip and copies the patches to a new folder. Second, it processes the patch files and uncomments instructions which are commented but it recognizes (like patch_group). This allows compatibility to be maintained with the original patcher for now. Finally, it puts kobopatch and the default config in the folder and zips it. When is zlib support coming? zlib support was implemented on July 9, 2018. How can I convert the patch32lsb format to the new kobopatch format? You can use this tool. Note that this tool is still alpha quality and needs manual checking after conversion. It also has issues with binary patches (e.g. the zlib ones). It should be stable by v1.0.0. For individual patches, you can manually convert according to the samples included in the kobopatch repository. Manually converted patches currently are stable, including the binary ones. How do I add translation files? First, put the ts files in the src folder. Second, update kobopatch.yaml to match. If you haven't already done so, install the QT Linguist tools. Finally, run kobopatch normally. Why does my keyboard have the wrong letters when I enable the "Rename new home screen footer" patch? This is a side effect of some of the string-related patches (especially the "Rename new home screen footer" patch). Due to the way QT stores strings, sometimes, it will use part of another string to save space, and as a result, another string may change as well (such as the keyboard). Why does kobopatch say a FindReplaceString with special characters has the wrong replacement length? QT uses the UTF-8 string encoding, which encodes special unicode characters as two bytes. This means that many special unicode characters (like accents, upside-down chars, fancy arrows, etc) may take up two bytes. Last edited by geek1011; 08-24-2018 at 03:28 PM. |
![]() |
![]() |
Advert | |
|
![]() |
#3 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,785
Karma: 6990707
Join Date: May 2016
Location: Ontario, Canada
Device: Kobo Mini, Aura Edition 2 v1, Clara HD
|
Last edited by geek1011; 11-03-2018 at 05:37 PM. |
![]() |
![]() |
![]() |
#4 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,785
Karma: 6990707
Join Date: May 2016
Location: Ontario, Canada
Device: Kobo Mini, Aura Edition 2 v1, Clara HD
|
Tips and Tricks
Separating custom patches from the included ones To make upgrading easier, as well as using the overrides section of kobopatch.yaml, you can also put custom patches which are not included into their own file. To do this, make a new file in the src folder, for example nickel.custom.patch (for patch32lsb format), or nickel.custom.yaml (for the new format). Afterwards, add a line in the patches section of kobopatch.yaml corresponding to your new file. Here is an example of mine: Spoiler:
Last edited by geek1011; 07-06-2018 at 01:19 PM. |
![]() |
![]() |
![]() |
#5 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,785
Karma: 6990707
Join Date: May 2016
Location: Ontario, Canada
Device: Kobo Mini, Aura Edition 2 v1, Clara HD
|
Discussion Questions
1. Is there any additional features you would like? 2. Is there anything you would like to change? 3. How do you want the zlib patching to work (format, usecases, etc) 4. How much would you value a web interface (like the old KHD)? 5. Is there anything else you want to ask/say? Last edited by geek1011; 05-27-2018 at 04:55 PM. |
![]() |
![]() |
Advert | |
|
![]() |
#6 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 6,321
Karma: 12117215
Join Date: Jun 2009
Location: Madrid, Spain
Device: Kobo Clara/Aura One/Forma,XiaoMI 5, iPad, Huawei MediaPad, YotaPhone 2
|
I would like to be able to include the updated translations in a directory so they are added to nickel. At this moment, I've modified the bat file for adding them, but I would like if they are included from the beginning.
|
![]() |
![]() |
![]() |
#7 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,785
Karma: 6990707
Join Date: May 2016
Location: Ontario, Canada
Device: Kobo Mini, Aura Edition 2 v1, Clara HD
|
So you want to be able to have a dir which gets added to KoboRoot.tgz after the patches are applied, right?
|
![]() |
![]() |
![]() |
#8 |
Guru
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 868
Karma: 2676800
Join Date: Aug 2008
Location: Taranaki - NZ
Device: Kobo Aura H2O, Kobo Forma
|
|
![]() |
![]() |
![]() |
#9 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 6,321
Karma: 12117215
Join Date: Jun 2009
Location: Madrid, Spain
Device: Kobo Clara/Aura One/Forma,XiaoMI 5, iPad, Huawei MediaPad, YotaPhone 2
|
|
![]() |
![]() |
![]() |
#10 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,785
Karma: 6990707
Join Date: May 2016
Location: Ontario, Canada
Device: Kobo Mini, Aura Edition 2 v1, Clara HD
|
Thanks for the feedback. As for kobopatch itself, is it working well for you?
|
![]() |
![]() |
![]() |
#11 | ||
absolute beginner
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 323
Karma: 1750999
Join Date: May 2017
Location: Go with the wind (43°19'17.7"N 2°00'19.4"W)
Device: ka1
|
Quote:
![]() ![]() Quote:
Can we have groups of settings in kobopatch.yaml? Spoiler:
|
||
![]() |
![]() |
![]() |
#12 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 6,321
Karma: 12117215
Join Date: Jun 2009
Location: Madrid, Spain
Device: Kobo Clara/Aura One/Forma,XiaoMI 5, iPad, Huawei MediaPad, YotaPhone 2
|
I have a question. There are some patches that, aside of been enabled or no, accept some customization (Custom footer (page number text), for example). How would you handle it here?
|
![]() |
![]() |
![]() |
#13 | |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,785
Karma: 6990707
Join Date: May 2016
Location: Ontario, Canada
Device: Kobo Mini, Aura Edition 2 v1, Clara HD
|
Quote:
If one of you can think of a better way to implement this, I'd be happy to consider it. Also, what would you think of a print instruction to show a message to the user during patching? This would be useful to inform about dangerous patches or things like that. Last edited by geek1011; 05-28-2018 at 02:24 PM. |
|
![]() |
![]() |
![]() |
#14 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 2,785
Karma: 6990707
Join Date: May 2016
Location: Ontario, Canada
Device: Kobo Mini, Aura Edition 2 v1, Clara HD
|
No problem!
I'm not quite sure I understand what you are asking. Last edited by geek1011; 05-28-2018 at 02:20 PM. |
![]() |
![]() |
![]() |
#15 |
Connoisseur
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 80
Karma: 63118
Join Date: May 2018
Device: Kobo Aura One
|
Thanks! Nice work
![]() |
![]() |
![]() |
![]() |
Tags |
kobo, kobopatch, patch, patch32lsb |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
kobopatch - A new (WIP) patching system | geek1011 | Kobo Developer's Corner | 93 | 05-27-2018 03:04 PM |
Patching H2O | Maillemom | Kobo Developer's Corner | 8 | 10-19-2016 09:58 AM |
Instructions for patching firmware 3.17.3 | GeoffR | Kobo Developer's Corner | 60 | 09-17-2015 05:35 PM |
Instructions for patching firmware 3.8.0 | GeoffR | Kobo Developer's Corner | 92 | 10-22-2014 07:22 AM |
how to clean more disk space in root file system to upgrade system | chinaet | iRex | 1 | 12-18-2006 03:54 PM |