Skip to content

khanhas/zshelf

Repository files navigation

title

Z-Library browser and downloader for reMarkable devices


Installation

  1. Know how to SSH to your device: https://remarkablewiki.com/tech/ssh
  2. Make sure package manager toltec is installed.
  3. Run following command to install zshelf:
opkg update
opkg install zshelf
  1. [reMarkable 2 only] You definitely need rm2fb package to run any app:
opkg install rm2fb

[IMPORTANT] Configure domain and cookie

zshelf basically is a web crawler, which fetches and parses z-library web pages, gets the gist of them and natively displays book items on UI. Because it's not web browser, user needs to manually configure domain and cookie so zshelf can download books on demand. Free user account is still limited at downloading 10 books a day.

  1. Open https://z-lib.org on your web browser
  2. Under "Books" link, you should notice domain part that is specifically available for your region/country. Note it down.

  1. Log in with your account.
  2. In any page, open up Console (hit F12 and switch to tab Console), run:
document.cookie

It will return a string contains your ids. Copy the parts have remix_userkey and remix_userid and ignore the rest:

  1. SSH to your reMarkable device and open config file:
nano /opt/etc/zshelf/config.json
  1. Replace keys "domain" and "cookie"'s values with yours.

  1. Save file (In nano: Ctrl + X -> Y -> Enter)
  2. Start zshelf to test configuration:
zshelf

reMarkable 2 user, use this instead:

LD_PRELOAD=/opt/lib/librm2fb_client.so.1.0.0 zshelf

Downloaded EPUB and PDF books will be automatically available on your reMarkable app (if not, please restart the app or restart device). zshelf also makes a copy of the book to location configured in additionalBookLocation, so you can open it in other reader like KOReader, which has ten fold better reading experience, highly recommended and also available on toltec.

Also, install an app launcher so that you can open zshelf easier. Recommend oxide, draft or remux, all of them are available on toltec.

Development

  1. Set up reMarkable toolchain, NodeJS and npm
  2. git clone https://github.com/khanhas/zshelf
  3. qmake
  4. make
  5. cd backend
  6. node install

Credits