KoboUpdater - A tool to upgrade the firmware of your Kobo on Linux
May 1, 2016

A tool to easily update your Kobo’s firmware to the latest version on Linux.

Why I made it

I made this because I do not want to sign in to my Kobo with a Kobo account, and Kobo desktop does not run on Linux. This has been tested with the Kobo Mini, Kobo Aura, Kobo Glo, and the Kobo WiFi. This should work with any device.

How to use it

  1. Plug in your e-reader
  2. Type: bash <(wget -qO- https://raw.githubusercontent.com/geek1011/KoboUpdater/master/KoboUpdate.sh) , and then press ENTER
  3. Follow the prompts
  4. You are done!

How it works

  1. It finds the mount point of your Kobo: mount | grep KOBO | head -n1 | cut -d' ' -f 3, and quits if it cannot find it
  2. It finds the info about your Kobo:
    1. The model id is the last field in the file KOBOPATH/.kobo/version : cat .kobo/version | rev | cut -d',' -f 1 | rev
    2. The serial number is the first field in the file KOBOPATH/.kobo/version : cat .kobo/version | cut -d',' -f 1
    3. The current firmware version is the third field in the file KOBOPATH/.kobo/version : cat .kobo/version | cut -d',' -f 3
    4. The affiliate is in the affiliate value in KOBOPATH/.kobo/affiliate.conf : cat .kobo/affiliate.conf | grep "affiliate=" | sed "s/affiliate=//g"
    5. It then confirms it for safety
  3. It uses the Kobo API to check for a new firmware version:
    1. https://api.kobobooks.com/1.0/UpgradeCheck/Device/$MODEL_ID/$AFFILIATE/$FWVERSION/$SERIAL
    2. It checks for an update by looking at the value in UpdateType: 0 for none, and 2 for anything else
    3. If it is 2, then it continues, if it is 0, it quits
  4. It then downloads the url returned (which is a zip file)
  5. After it downloads, it extracts the files into the KOBOPATH/.kobo/ directory
  6. It then ejects the Kobo, and tells the user to unplug it
  7. The Kobo will then finish installing the update

Where can I get the source code?

http://github.com/geek1011/KoboUpdater

Is there a Windows version?

Soon.

Demo

I hope you find this useful!

Patrick G
Patrick G
I like to write code. I love open source software. I like to self-host stuff.