Giter Site home page Giter Site logo

plato's Introduction

rm1 rm2 opkg launchers

Logo

Plato is a document reader for Kobo's e-readers.

This is a fork for the reMarkable.

Also see darvin's work of porting plato to the reMarkable 2 years ago. ( I read nice mangas with his port. :) )

Install on reMarkable

Using an existing build

  • Go the releases and get the latest build (attached file with "dist" in the name).
  • Copy the unpacked contents that file to your device to a folder of your choice (e.g. using scp or an sftp client like Filezilla or WinSCP)
  • SSH into your reMarkable and run the file plato.sh. E.g. /home/root/plato/plato.sh
  • Add it to draft for easier launching without SSH-ing.

By default files are used from the empty media folder you got in the release. You can change this in the Settings.toml.

Notes: The software automatically recognizes the running UI (xochitl) and kills it. If it did so, you'll only have the option to "Quit to Xochitl", which will automatically start xochitl again when quitting. Should the software crash (had one case with a bad czb file) the screen will seem frozen. Either launch draft again, or hold the power button for about 10 seconds (= poweroff) and then hold it again to start the device again.

Compiling yourself

You need rust (nightly) the a toolchain for compiling code for an arm system (e.g. search for a package that provides commands like "arm-linux-gnueabihf-gcc").

After that, you can build the software using build.sh and create the same directory as attached using dist.sh (folder dist/).

Or just look at the file make_remarkable.sh which checks the above condition and runs a full clean build for you. Documentation: GUIDE, MANUAL and BUILD.

 

reMarkable 2 support

The reMarkable 2 is supported as well. Some features were initially added with the rM 1 in mind and may therefore have deminishing functionaility on the rM 2. An example are the refresh modes, which will not be that granular due to the reduced access to the framebuffer.

Otherwise everything should work fine.

Supported firmwares

Any 4.X.Y firmware, with X ≥ 6, will do.

Supported devices

  • Clara 2E.
  • Libra 2.
  • Sage.
  • Elipsa.
  • Nia.
  • Libra H₂O.
  • Forma.
  • Clara HD.
  • Aura H₂O Edition 2.
  • Aura Edition 2.
  • Aura ONE.
  • Glo HD.
  • Aura H₂O.
  • Aura.
  • Glo.
  • Touch C.
  • Touch B.

Supported formats

  • PDF, CBZ, FB2 and XPS via MuPDF.
  • ePUB through a built-in renderer.
  • DJVU via DjVuLibre.

Features

  • Crop the margins.
  • Continuous fit-to-width zoom mode with line preserving cuts.
  • Rotate the screen (portrait ↔ landscape).
  • Adjust the contrast.
  • Define words using dictd dictionaries.
  • Annotations, highlights and bookmarks.
  • Retrieve articles from online sources through hooks (an example wallabag article fetcher is provided).

Tn01 Tn02 Tn03 Tn04

Donations

Donate

plato's People

Contributors

amir avatar aszarsha avatar baskerville avatar eeems avatar elebow avatar haozeke avatar linuscde avatar louisabraham avatar mswift42 avatar niluje avatar paulrouget avatar siraben avatar ticky avatar verebes1 avatar welps avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

plato's Issues

text annotation (highlighting) for pdfs?

Thanks for porting plato to the remarkable. I often read scientific papers. It would be very great if it would be possible to use the pen to highlight text that would be stored as annotations in the pdf (as done by e.g. okular).

After pressing Calculator rM1 froze :/ What should I do?

Dear Developer! Thank you very much for this great thing! I love Plato very much, but when trying different features, I managed to make it freeze. How can I unfreeze my rM? The ssh didn't interrupt, so I can type something from the computer. Also on terminal it wrote "Error: Permission denied (os error 13)" - don't know when, but probably it's a Calculator error.

Settings.toml/plato.toml not parsed

While trying to get the article_fetcher hook working, I noticed that this fork of plato cannot read its own main settings file, linked from /opt/etc/plato.toml:

reMarkable: ~/ rm2fb-client plato     
Can't load settings: Cannot parse TOML content from Settings.toml.

Tested with the V0.9.13 release, shipped via toltec/entware.
Is it maybe related to this fix 4e720aa which came just after the package release? I haven't built this repo myself, yet.

It regularly even overwrites the settings file with defaults which made it very confusing to debug the article_fetcher hook. Is that a fallback feature of rust?
According to original plato docs, the main settings file should be only edited when plato is in 'shared mode', but I guess that is specific to Kobo readers. I also tried editing the settings file while plato was not running with the same behaviour.

This is probably unrelated, but could there be another issue with network access from this plato fork on the rm2? After putting the hook's setting file in the correct default place (/opt/lib/plato/bin/article_fetcher/ and not ~/bin/... as one could assume) the article_fetcher reports at least "Establishing a network connection." and sometimes "Waiting for the network to come up." but always returns with nothing.

Thanks for this port, btw, I really like Plato on the RM2!

RTL (manga) support

I know this is more an upstream thing, but I wondered if Plato had RTL support. In the manga-sense. I can't tell how different this port is to upstream, but I'm quietly confident that @LinusCDE reads manga...

Settings changes on plato.toml aren’t persistent

In #7 my question was also raised, but since the problem there was different, I created a new issue. Even after spending quite some time, I have not been able to get my changes to the /opt/etc/plato.toml file to persist. I understand this file is a symlink to /opt/etc/settings.toml and I am using the latest plato version from the Toltec testing branch together with remux. If I - as suggested - explicitly quit/kill plato before editing or do a reboot before, the file is still reset while/after the next invocation of Plato. I even completely removed all installation files, reinstalled Plato, manually duplicated the settings-sample.toml to the correct location and made my changes. On the first launch of Plato these changes were applied and visible in Plato (I added another library location and could select it). But when I launched Plato again the settings file was overwritten and my changes were wiped out.

So my simple question is: how exactly can I make persistent changes to the settings file?

Can't import into oxide

I would suggest updating the draft config so that there are no arguments being passed into call=. Either make it spare xochtil by default, or have it run a script that runs the argument like KOReader does.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.