1764421727

The path of knowledge is collection of explorations which reveal something greater than it’s individual elements, but only to those that wish wish to see it.

What follows is a collection of small, niche and rather unimportant solutions to some challenges we’ve faced. Each one may very well be irrelevant by the time it is stumbled upon again, but the hope is that it serves as a remainder of the path travelled and the patterns of thought behind it.


1764520956

To reinstall KOReader on a Kindle Paperwhite 2 (PW2) with firmware version 5.12.2 that was previously jail broken and then reset (Settings > Device Options > Reset):

  • Install MR Installer (MRI) by copying extensions and mrpackages to the Kindle root folder
  • Install KUAL (Coplate)
    • Copy Update_KUALBooklet..._install.bin to mrpackages
    • Eject the kindle
    • Execute the installer by typing :log mrpi on the default searchbar
    • Reboot twice, then repeat for Update_KUALBooklet_hotfix..._install.bin
  • Install JailBreak…FW-5.X.hotfix
    • Reboot twice
    • Copy Update_jailbreak_hotfix...install.bin to mrpackages
    • Eject the kindle
    • Execute the installer by typing :log mrpi on the default searchbar
  • Install KOReader
    • Copy koreader to the kindle root
    • Copy extension/koreader to the extensions folder under kindle root
    • Eject the kindle and launch KOReader (KUAL > KOReader > Start KOReader)

Follow the MobileRead threads very carefully (it is easy to misread instructions or do them in the wrong order). All required files can be found on the snapshots page.

If the jail break is not installed properly, KOReader will not launch.

  • Ensure the correct variant of KUAL is installed.
  • The crash log is stored in the koreader folder in at the kindle root as crash.log.
  • If the screen flashes but remains on the home page, the hotfix hasn’t been installed correctly and will log a could not open framebuffer error. Carefully follow the above instructions - reset to start from scratch if necessary.

Kindle root refers to the folder seen when the kindle is plugged in (USB Drive Mode) - it should contain the folders documents, extensions, mrpackages and so on.


1764696164

To generate a key using gpg:

gpg --gen-key

This will prompt for a name and email address, as well as a passphrase to encrypt the private key.

To print the public key:

gpg --armor --export name

Where name is the name provided when generating the key. The --armor flag is used to convert the binary format in which data is stored to base64 encoded text.

To encrypt text, pipe the text directly or provide the filename:

gpg --encrypt --armor -r recepient-name filename

Where recepient-name is the user ID or name of the key pair and filename is the name of the file to encrypt.

To decrypt text, provide the filename or pipe the text directly:

echo "-----BEGIN PGP MESSAGE----- ..." | gpg --decrypt

This automatically selects the correct key and prompts for the passphrase to decrypt the private key.

Encryption can also be done without public/private keys:

echo "Hello" | gpg --symmetric --armor --passphrase "secret-passphrase"

1765043334

To see which process is using a particular port on Linux:

sudo ss -tulnp | grep :portnumber
sudo lsof -i portnumber

Use kill(graceful) or kill -9(forceful) to stop the process.