Releases: huangziwei/sidle
Release list
bokai-v0.1.7
Fixed footnotes in KFX not showing up as popup on device. It happened to all EPUB2 to KFX. Similar defect was found in KFX to EPUB, also fixed.
Full Changelog: bokai-v0.1.6...bokai-v0.1.7
bokai-v0.1.6
KFX validator
Added a KFX validator (Okay-ish to the level of what I know about KFX, which of course far from perfect yet). Used the validator to flag and fix some defects in the previous EPUB to KFX conversion also. The validator is not included in the arm build, so nothing changed for the kxdedrm-fe side.
Panel magnification in KFX
Another new improvement is for fixed-layout manga / comics / graphic novels AZW3 to KFX.
Most manga nowadays are already in KFX, but some old graphic novels or comics (such the only two I own from Amazon US) are still delivered to new devices as AZW3. Fixed-layout books normally will trigger the comic reader instead of the normal reflowable KFX reader, which has different capacity such as hold to fast-forward/backward, or double tap on any panel to enable panel magnification. Manga normally lacks the latter, but comics normally have it. Amazon itself doesn't deliver any KFXs with this capacity, probably means something here, but we did it here anyways, because we can.
Full Changelog: v0.1.10...bokai-v0.1.6
v0.1.10
[Apps] tab in Sidle
One of my recent obsessions against depression is to make Kindle apps. This repo contains 1.5 (sidle-native, and bokai that can be run via Kterm as a cli tool) of them, and then there are 3 more doing other stuff:
- karyll, a iA Writer inspired writing app that can pair with a bluetooth keyboard, primarily for the Scribe but should also work competently on newer hardware like Colorsoft (in gray mode, color mode is not good), which has good enough CJK support, according to myself as a CJK user.
- steb, a frontend for downloading Standard Ebooks directly to Kindles, if you already have
bokaiin/mnt/us/extensionsit will also convert the azw3 to KFX so that on Scribe one can handwrite notes with the pen, otherwise you can't do it with azw3. - kfxdedrm-fe, a frontend for
kfxdedrm, together withbokaione can just convert the kindle store books to epub and read it with koreader. It's actually makes more sense to use the KOReader plugin and do everything within KOReader instead, if you think about it, but the FE offers a nicer book cover grid picker, in my not so humble opinion :)
I actually don't really use steb and kfxdedrm-fe myself, and they are just built for fun. But in short, still, there are too many apps to manage now, and every time any of the apps got modified, I need to repeat the progress of plugging them in, replacing the bin, unplugging them and test. I was thinking that I should build yet another app to manage them, check what's new, what's stale, what should be updated, etc. But then I think, hack, why not just let Sidle handle it just like books. So now I have an apps tab along with books and notes and files.
bokai v0.1.5
The kfxdedrm-fe detour was, honestly speaking, just a low hanging fruit that I can easily split from sidle-native, for distracting myself from the depressive negative thoughts. It's rewarding in a sense that by working with the latest version of Satsuoni's kfxdedrm now I can also decrypt azw3 which still have a few graphic novels in this format, and through them I found out a few defects in converting fixed-layout comics / manga / graphic novels into KFX and EPUB.
3 more defects of image only page box alignment has been found in converting Standard Ebooks into EPUB. They are also fixed.
And obviously there's a hard float / soft float build problem for older device backward compatibility, which I can't really test it myself. bokai now ship both and should be runnable within the koplugin without modification (but you need to update bokai to this release). kfxdedrm-fe will need a soft float build too, but it will come later.
Full Changelog: v0.1.9...v0.1.10
bokai-v0.1.4
Fixed more box-align related css bugs.
Full Changelog: bokai-v0.1.3...bokai-v0.1.4
bokai-v0.1.3
fixed some css bug.
Full Changelog: v0.1.9...bokai-v0.1.3
v0.1.9
Added a sidle-cli so that agents can run library wide operation for me while keeping the database in sync. Improved bokai's performance (mostly RAM management) so that it can be run on device and from now on will also release as a standalone binary in the artifacts.
There are some half-done features, such as sidle-server now talks https instead of plain http, for future possibilities of tailnet support (which might or might not come). bokai gained half-baked pobi to kfx conversion, but honestly, there's no built-in UI for pobi on newer firmwares since Amazon retired the whole magazine subscription business on Kindle store.
Oh, and updated Rust to 1.97.1.
And some other smaller changes I don't remember.
Full Changelog: v0.1.8...v0.1.9
v0.1.8: Reading Log, etc.
Reading Log
Confession: I built this app to help me read more, but I spent too much time on this app, I ended up not reading as much as I want. This is a fact, at least, according to the reading stats I extracted from Colorsoft and KOA2.
Or not, there's some error in the data, for example, fixed layout PDF-based KFX is not really tracked as precise as reflowable one, and on a busy day Kindle's backlog dump might be pruned (estimated lost 20 hours of logs, but those are not really my normal reading hours, so...) In short, the system/logbackup data is not as reliable as I want and it only went back a month of the stats.
To keep better records, sidle-native now backs up the logs more frequently and and keeps those copies itself for longer period of time, instead of relying on the stock OS's tinyrotten backup dump, and will sync the reading logs back to the server along with the highlights and others.
sidle-native now supports Kindle Scribe
I missed jailbreaking the Scribe when it was still on 5.18, because I didn't see the point of ding it. Now I do. So last night, as soon as, as the latest JB got released, I just did it immediately. And then started migrating sidle-native to Scribe, which includes making sure the UI rendered properly on the bigger screen, and also sync handwriting annotations and notebooks to Sidle desktop. The process is not as smooth as I expected, but it turned out well and fixed some bugs along the way, which also benefits the Colorsoft and Oasis. So, happy ending.
Also, as the KUAL no longer works on 5.19.4.* onwards and sidle-native got its own scriptlet in the last few releases, it's no longer an exclusive KUAL app, so it's properly renamed to be device or native.
Bidirectional annotation syncs
I took another trial in syncing annotations back to the Kindles. Previous attempts failed, but this time we made it worked. Now multiple devices reading the same book will share the same highlights, notes, and bookmarks, with Sidle Desktop as intermediate and backup.
bokai
- Better PDF-based KFX (aligned with the Send-to-Kindle PDF)
- Better TOC parser for EPUB;
- Better style parser for Aozora ZIP.
Others
There are more but I don't bother to recall them.
Full Changelog: v0.1.7...v0.1.8
v0.1.7: bokai
A lot has been changed since the last release. My original plan was to stick to a weekly or semi-weekly release cadence. For one, is to make writing each note manageable, without losing tracks of what has been done; for another, is to keep my own motivation up. It's fun to talk about something new and shiny. It's less fun to talk about something from weeks ago. But at the end I just keep adding things daily, without releasing anything for a while.
I made the same mistake at work too. Some features I've been working on for months and all packed into one PR has been stuck forever due to a difficult-to-solve bug for some other latest features, while the earlier ones are perfectly fine to be released on their own. The end result is, on the surface, I don't have things to show for months, while the truth is lots of progress has been made. But I digress.
Previously, in order to make boko works with vertical CJK text that reads from right to left and have heavy ruby annotations, I have to port jhowell's Calibre plugin kfx-input as a second route paralleled to boko's original IR route. In this release, we merge the two into one. Now every format go through the IR as the original boko but also 1:1 to the mechanically ported route, thus marking its retirement. And boko-kai is now renamed to just bokai, retagged the version from v0.3.0+kai.n to v0.1.0, as this fork have been diverged so much from the original boko, to the level that I think it's worth to have it's own versioning.
bokai now also has a new validator module that flags the same set of errors founds by epubcheck in my own Sidle library across 2k epubs. It's not a full port but useful enough so far. It also gains certain level of epub/kfx editing capacity, primarily via Sidle's book editor, for metadata, degenerated TOC and cover, etc.
The epub-splitter is the latest add-on. It's for splitting omnibus epubs back into individual volumes.
On the Sidle side, many bugs have been fixed along the way, such as some KFX reader rendering issues here and there, the new book editor we talked about earlier was added to fix some errors even from publishers' official eBooks, cleaned up and unified some duplicated codes so that some same features are handled by some shared utils, added a "Misc." tab for syncing screenshots and debugging logs, etc. Nothing really fancy.
The truly fancy part is some new KUAL APP UI change.
Some buttons have been changed from text to icons, and moved to the upper right corner. Next to the search bar is the "sync" button, originally at the bottom row, now replaced by the "DRM" button (more on it later), and next to the "sync" button is the "update" button. Updating the Sidle KUAL app is used to be done via KUAL's own menu, with a separate "Update Sidle" app. But now we just integrate everything into one, as in the last release (v0.1.6) we added the Sidle booklet, the KUAL booklet is used less frequently and always sunk to the bottom and difficult to find, so why not just make the process of updating Sidle app per se easier?
And now the "DRM" button. It's a frontend over KFXArchiver. KFXArchiver is another KUAl app that runs directly on an jailbroken Kindle and removes the DRM of all KFX books in /mnt/us/documents/. There are a handful of problem of KFXArchiver 's native UI:
- It scans and runs on all books within
/mnt/us/documents/every time without de-duplicating. That includes our own side-loaded books, with or without DRM. - After removing the DRM, it will just leave the original copies alone, and create the deDRM-ed copies in the
/mnt/us/dedrmfolder, then you need to do it manually to copy them out.
So our own Sidle frontend over KFXArchiver enhanced this process by only scanning and removing DRM for books in the official books' folder, and sending the books to the Sidle server after DRM is removed then also cleaning up the redundant copies on the device. DRM can be removed manually one by one or with the upper right "unlock" button to remove all at once. Life is now much easier in this way.
Full Changelog: v0.1.6...v0.1.7
v0.1.6: Mostly UI, Mostly QoL
KUAL
Three changes related to the Sidle KUAL app:
- a new Sidle booklet that lives in the stock Kindle Library. To enter Sidle, the old way was first tap KUAL, then tap Sidle within KUAL. Now you tap Sidle like you tap KUAL.
- a progress bar at the toast and also a cancel button in case you changed your mind in the middle. It's related to a bug where we can't actually download a book larger than 256Mb. Why did I think capping at 256Mb was a good idea, I don't remember, but making such a book revealed the bug, and also prompted me finally added the progress indicator and cancel button. So, everything happened for a reason, including bugs.
- removed the separated update script, and integrated the update as a button (upper right corner next to the search bar).
Sidle Reader
To Seam or Not To Seam, That's the Question.
For fixed-layout books, such as PDF, it'd be nice to have double spread when reading on a big enough screen. This is pretty standard.
But it looks odd to have disjointed double spread for fixed-layout manga, which often has cross-page panels
In those case we'd better merge the seam:
This can be done with the style ("Aa") settings within the reader.
Editing Metadata directly in the List view.
This should be done earlier. Without it the list view is mostly useless. Now at least it has a better reason to exist.
Full Changelog: v0.1.5...v0.1.6
v0.1.5: Search within the KUAL app
The effort of migrating away from Calibre continues. Now I have more than 1k books on Sidle, and finding a specific book on e-ink Kindles via the KUAL Sidle app becomes difficult, so a search bar is needed. The technical difficulty here is how to search CJK books. I don't want to add a full-fledged IME, it will likely take a long time to do it and it will also bloat up the size of the sub 2mb KUAL app. The comprise made at the end is to just add romaji title and author name field to the library database, and expose it to the KUAL app. So Japanese titles and author names are in romaji, Chinese ones are in pinyin, all search are in latin letters.
(The second image shows off my almost complete Norman Berrow's eBook collection, which only exists on Apple Books currently. If you didn't know, Apple Books' DRM has been cracked for a while.)
There are other changes since last tag:
- book orders in library are now natural order instead of the previous lexicographic order (that is, vol. 1 is now followed by vol. 2 instead of vol. 10);
- normalized language flags (en-US, en_GB, etc. are all normalized into en) and shows labels instead of flags on the frontend.
- export txt (md, actually)
- fixed a relative path bug so that moving the library to another folder other than the default one won't be broken;
- allow drag and drop books into a series
- closing a window will not quit the app now, aligned with macOS convention.
Full Changelog: v0.1.4...v0.1.5





