CPR-vCodex Steroids 1.5.0.22-dev4
๐ Bug Fixes & Resolved Issues
Home screen: EPUB covers not shown in Lyra themes โ [#81]
Fixed EPUB cover thumbnails not appearing on the Home screen with the lyra and lyra-vcodex themes. The cover-path template was not resolving the width placeholder, so the Home screen looked for a file that never existed. The width is now derived correctly from the theme's cover height, and the lyra-carousel and lyra-marcoand75 themes continue to work as before.
KOReader Sync: credentials lost and wrong back-navigation โ [#78]
- Pressing Back after a successful authentication now returns to the KOReader Sync settings menu instead of rebooting straight to the Home screen.
- Username, password and server URL now persist correctly after re-opening the settings, across reboots and after silent restarts.
- Fixed a crash (out-of-memory) that could occur when reloading reading statistics right after the authentication network operation: the WiFi stack is now released before the reload and the statistics reload is guarded against critically low heap.
Dictionary "Look Up Word" crash on X4 โ [#80]
Hardened the dictionary word-selection screen to prevent the device crash/reboot when opening "Look Up Word":
- The word-extraction loop now keeps the task watchdog fed, avoiding a watchdog reset on dense pages using SD-card reader fonts.
- A defensive null/empty word check prevents a hard fault from a corrupt word pointer.
- Added watchdog feeds after font warm-up and after page rendering.
X3 boot diagnostics
Added logging during boot for X3 device and display-controller detection, to help diagnose boot issues on X3 hardware.
๐งช Lua Plugin System โ Pre-release / In Testing
This release embeds a Lua 5.4.7 interpreter that lets you run user-authored Lua plugins directly on the device.
โ ๏ธ This is a pre-release, experimental feature still in testing. Currently only the included Hello World example plugin is confirmed working. The other example plugins (Snake, Breakout, Sudoku, To-do list, โฆ) are provided as starting points, but their full implementation still needs to be tested and completed. You can expect bugs, crashes and API changes in this area.
Key points:
- Plugins are plain
.luatext files placed in/custom/on the SD card โ no firmware recompilation required. - Each plugin runs in a sandboxed VM with a 40 KB memory cap; file I/O is restricted to a per-plugin data folder.
- Plugins are discovered through the "Plugins" entry in the Apps hub.
- The complete developer guide โ the full API reference for
lcd,fs,input,sysandplugin_str, the plugin lifecycle, sandboxing, memory limits and debugging โ is documented in theSTEROIDS-LUA.mdfile in this repository.
๐ Embedded Bookerly Font Removed
To free up space on the device, the Bookerly font is no longer built into the firmware. The on-screen text remains unaffected if you use any other built-in font; if you want to keep reading with Bookerly, you can still load it from the SD card as a font file.
๐ Documentation
- Lua plugin development guide:
STEROIDS-LUA.md - Example plugins available in the
plugins/folder (copy them to/custom/on the SD card).
The 4 bug-fix commits in this release are:
a3d4b4f1โ fix(reader): harden dictionary word-select against watchdog reset and bad word pointers (#80)dcd43ecaโ fix(kosync): persist KOReader settings, restore back-nav, and avoid stats-reload OOM (#78)46df719aโ fix(theme): resolve [WIDTH] placeholder in home cover thumb paths (#81)11a813a5โ log per x3 display
The Lua plugin system and the OMIT_BOOKERLY flash-space saving were introduced by the feature/lua-vm-plugins merge (82b932dc).