Rust (and Slint) on a Jailbroken Kindle

(sverre.me)

220 points | by homarp 21 hours ago

14 comments

  • sandreas 19 hours ago
    This is cool, thanks for sharing. I recently compiled Rust / Slint on a LicheeRV Nano, which is RISC-V 64bit musl[1]. It's a little portable audio player I'm working on, the compile process is done via custom Cross docker image.

    Currently I'm evaluating Battery Pal[2], because the TP4057 Module was not stable enough to power USB-C to 3.5mm Adapters reliably. So far it seems to work as expected.

    1: https://github.com/nanowave-player/nanowave-ui

    2: https://pnlabs.ca/batterypal/

  • FlyingSnake 19 hours ago
    Great article. Hacking old kindles is fun! I encourage everyone to give it a try. The retro feel of eink makes it special for me.

    I wrote about my experience in cross compiling zig on an old kindle some time ago.

    https://samkhawase.com/blog/zig-kindle-gdb/

  • homarp 21 hours ago
  • ilvez 6 hours ago
    Would be so nice to use those previous Paperwhites for something like this as well. Instead I just lose them while travelling. Just lost my last 2019/smth edition. 3rd one with such fate..
  • _hzw 11 hours ago
    I am working on a self-hosted library server for jailbroken kindle and opted for using pure Rust for the KUAL app to sync books and annotations with the server.

    It's just running `cargo build --release --target armv7-unknown-linux-musleabihf` with a .cargo/config.toml:

    ``` [target.armv7-unknown-linux-musleabihf] linker = "rust-lld" rustflags = ["-C", "link-self-contained=yes"]. ```

    the downside is I can't use any c-deps. :)

  • hardwaresofton 19 hours ago
    This is awesome! How reliable are kindle jailbreaks/avoiding updates, etc?

    Have opted for other devices like the xteink (or a boox in the future) due to what seemed like a relatively small ecosystem around “aftermarket” kindle modifications.

    The kindle would be a great option if it could be reliably jailbroken and loaded with custom software

    • akazantsev 7 hours ago
      Jailbreaks will be overridden on modern Kindle firmwares unless you install an additional extension to prevent updates.

      I use the "renameotabin" extension and enable Wi-Fi from time to time to load books from FTP via Koreader. It has been 3 years since I jailbroke it, and there have been no resets for me.

      See https://kindlemodding.org/jailbreaking/post-jailbreak/disabl...

    • wilted-iris 17 hours ago
      Worth noting that kobo devices are not locked down at all and run linux. They’re very easy to build for.
      • epicide 1 hour ago
        I've been using one of the Kobo Clara devices running Plato (built in Rust) for a few years now. Other than a couple of minor bugs early on, I've had no issues.

        It's largely the exact device that I want my book reader to be:

        * Small and lightweight

        * Nice epaper screen

        * No need for an internet connection whatsoever

        * Natively understands EPUB

        * Just reads books -- no ads, no markets, no apps, no upsell

        The built-in Kobo firmware isn't great. IIRC Rakuten/Walmart hoover up and sell your reading habits, etc. Hence one reason why I don't connect mine to the internet (running Plato probably fixes this, but restarting the device doesn't immediately go into Plato). The device is also weirdly sluggish with the default Kobo software, and much faster in Plato.

      • hardwaresofton 12 hours ago
        This is a great point. Back when I was checking I think I was underwhelmed by the customization ecosystem for kobos but now I’m not sure what was stopping me/made me reconsider.

        Upon further inspection there is also the Pine Note!

        https://news.ycombinator.com/item?id=46283016

        https://pine64.org/devices/pinenote/

        It’s quite pricey but certainly more straightforward in its offering.

        Kobo is the cheaper and has a color option and is likely slightly less hackable.

        [EDIT] Ah, I think this is what I found:

        https://github.com/Quill-OS/quill

        Kobo’s switch to secure boot made things harder for Quill which seemed to be the only custom OS.

      • dv_dt 6 hours ago
        I'm done with the kindle ecosystem, except for one last jailbroken kindle that I use for reading, but once that dies it's nice to know options.

        Open source software, open (to the owners) with default configs, open ecosystems, repairability, hackability, open hardware are all factors I look for across multiple devices now. routers & wifi, readers, phones, headphones, laptops, keyboards, etc..

        They don't always have to hit every element - but the more they cover, the more likely I am to track and purchase them when the time comes.

    • a10c 19 hours ago
      Depending on your firmware version, most jailbreak guides will have you either create an empty directory with the same name as the OTA firmware file (causing any OTA downloads to fail) or install an extension called `renameotabin` which renames the binaries responsible for performing the update, rendering them inaccessible.

      source: https://kindlemodding.org/jailbreaking/post-jailbreak/disabl...

    • pidgeon_lover 7 hours ago
      If you want to make sure to block Amazon, use: https://github.com/Darthagnon/kindle-kual-blockamazon and also one of the Kindle software update blockers here: https://github.com/Darthagnon/BlockKindleOTA
    • Rebelgecko 16 hours ago
      One of my biggest regrets is not jailbreaking my kindle before it auto updated last year
      • schrijver 5 hours ago
        Live has been kind to you ;)
    • looperhacks 8 hours ago
      I have a jailbroken Kindle that's connected to Wifi (and theoretically has access to the internet). No problems for three years now
  • DoctorOW 20 hours ago
    This looks cool, and one of the first posts I've seen on HN in a few months where I genuinely wanted to try it.
  • voidUpdate 10 hours ago
    Is there a list somewhere of jailbreak-able kindles? I've been thinking of getting one to toy with for a while, but I don't want to accidentally get one that is more heavily locked down, or that we cant run our own code on for some reason
  • KolmogorovComp 18 hours ago
    Tangential, how does slint fare compared to Druid/egui(?)
    • airstrike 13 hours ago
      Tangential reply, but Druid has been abandoned. The spirit lives on as Xilem, but that doesn't have much traction either. It's very... exploratory in nature.

      I'm partial to iced, which to me is the best GUI library in Rust by far. The Discord is super active if you have questions.

      https://iced.rs/

    • pjmlp 11 hours ago
      Slint is backed by a company that sponsors its development, in model similar to Qt.
      • airstrike 5 hours ago
        For the record, so is iced, effectively.
        • pjmlp 4 hours ago
          Ah, Cryptowatch, and what do they understand about selling GUIs?
          • airstrike 4 hours ago
            It's Kraken, not Cryptowatch, as the latter was acquired.

            Who's supposed to be selling GUIs here?

            Your comment goes against several HN guidelines. As the 15th highest karma on this site, I'm sure you could do better.

            • pjmlp 3 hours ago
              The remark "in a model similar to Qt" assumes it is a software company selling a GUI framework, while offering part of it for free.

              What I see there is a crypto fund that most likely cares about how iced fits into their own use cases first.

              I seldom read those, by the way.

            • rat9988 1 hour ago
              Your answer's tone is weird.
    • the__alchemist 17 hours ago
      I'm curious as well. My understanding is one notable differencse, exemplified here, is that Slint can work on embedded devices / no-std.
      • nicoburns 2 hours ago
        Most of the Rust GUI frameworks will run on something like a Kindle with 100's of MBs of RAM. Slint is the main one that will go smaller than that (it will run on actual MCU if you need it to).
  • ElenaDaibunny 14 hours ago
    zig as a cross-compile backend for rust is so good.
  • ge96 2 hours ago
    Funny I have a paperwhite too I hate that forced ad thing (on screen wake) which apparently you can pay to get rid of
  • IshKebab 19 hours ago
    Good work! I guess you need to leave it plugged in?
  • nelox 18 hours ago
    [flagged]