github edrlab/thorium-reader v3.1.0
Thorium Reader v3.1.0

latest releases: latest-windows-intel, latest-windows-arm, latest-linux-arm...
4 days ago

Summary

Version 3.1.0 was released on 17 February 2025.

Total Downloads


LINUX USERS (Ubuntu in particular): you will need to run the shell command sudo chmod 4755 /opt/Thorium/chrome-sandbox in a terminal session after installing the Debian package. Unfortunately this is a known issue with Electron: #2519 (comment)


This release includes the following (notable) new features, improvements and bug fixes:

  • Localization: updated translations, Weblate now recommended instead of GitLocalize
  • Feature: annotations, import + export (various "selector" formats powered by Apache Annotator, tested with DOM Ranges spanning across XHTML, SVG, MathML, foreignObject, etc.) and updated graphical user interface (list filtering, etc.)
  • Feature: TTS readaloud and EPUB3 Media Overlays, option to disable continuous playback (checkbox in playback settings panel)
  • Feature: visual navigation indicators in HTML publication documents (temporary outline) can now be disabled
  • Feature: additional information labels in the "settings" GUI to describe actions and choices
  • Feature: URL query params 'lang' and 'version' to online documentation
  • Feature: TTS readium-speech integration, organised and opinionated voice selector
  • Feature: TTS and EPUB3 Media Overlays, popup foonotes are disabled so that they can be played inline as intended by content creators
  • Feature: "preferred" settings for reader configuration, save/load/reset
  • Feature: PDF.js latest library version
  • Feature: latest Electron v34 (i.e. more recent Chromium web browser engine and NodeJS runtime)
  • Fix: XML parsing in DAISY 2.02 NCC.html was choking on doctype with empty declaration [], also SMIL parser fix for skippables (system-required sidebar-on and note-on), and merge of contiguous SMIL SEQ/AUDIO inside PAR
  • Fix: XML parser UTF8 BOM Byte Order Mark removal
  • Fix: TTS readaloud SVG deep utterances (no aria-label / title), escapability
  • Fix: TTS Japanese Ruby skipped (ignored) when visually hidden, played instead of base / non-Ruby when visually displayed (does not use skippability semantics of TTS / EPUB3 Media Overlays)
  • Fix: accessibility labels in some user interface controls, improved GUI structure and semantics
  • Fix: accessibility metadata, preliminary update (more to come in a future release) to match the latest presentation guide, support for printPageNumbers vs. pageBreakMarkers vs. pageNavigation
  • Fix: download panel was reporting incorrect status (mismatched unique identification), URL was conflated with label, added support for unknown content-length (indeterminate progress bar), handling of content-disposition UTF8 percent-escaped filename, consume www-authenticate response error description, HTTP content-type was taking the precedence over content-disposition header
  • Fix: LCP provider certificate expiration error messaging
  • Fix: bookmarks were incorrectly synchronised when several reader windows were open
  • Fix: OPDS and other publication download authentication flow across domains, also fixed OAuth 2.0 Implicit Grant flow (client ID etc.)
  • Fix: added missing keyboard shortcuts in library view for first/last previous/next
  • Fix: keyboard focus "inversion of control" (eliminated focus stealing), Thorium GUI now pushes requests to navigator / HTML document renderer, removed body-injected underscore / jump link, automatic vs. manual keyboard redirection from modal vs. docked navigation panels, added keyboard shortcut to force-focus deep into the webview (just in case the default method fails, depends on Chromium behaviour of out-of-process iframe inside shadow DOM / custom element)
  • Fix: command line lifecycle / action flow
  • Fix: various GUI issues
  • Fix(dev): updated Continuous Integration / GitHub Actions scripts, added dependency analyser script, introduced support for Flox/Nix, improved Linux Docker builder, adde NPM scripts lifecycle checks (pre/post/install security)
  • Fix: Thorium was only accepting lower case file extensions
  • Fix: LCP edge-case,broken publications that are encrypted but do not contain a license to unlock them
  • Fix: Divina layout setting was not enabled, improved progression reporting
  • Fix: user interface finger touch / swipe, text selection
  • Fix: persistent JSON filesystem state diff/patch could crash with large dataset
  • Fix: improved performance of text selection highlighter engine

Download checksum / hash verification

  • Thorium-3.1.0.dmg is code-signed by an official EDRLab certificate, and it is notarised by Apple servers. The SHA512 is:
    • HEX: e67b0570bb2ee93d86fb3084c5631fafc20ef03146e5d1d392b72e956a879a96057a7c7727d35cb354a8c4fc2b490f6636fc758ae82bd62db6b09240091051b0
    • BASE64: 5nsFcLsu6T2G+zCExWMfr8IO8DFG5dHTkrculWqHmpYFenx3J9Ncs1SoxPwrSQ9mNvx1iugr1i22sJJACRBRsA==
    • Verification: create a file named Thorium-3.1.0.dmg.sha512 next to the downloaded file Thorium-3.1.0.dmg, edit the new file Thorium-3.1.0.dmg.sha512 and write this exact line of text inside it: HEX Thorium-3.1.0.dmg, then run the command line shasum -a 512 -c Thorium-3.1.0.dmg.sha512 (=> Thorium-3.1.0.dmg: OK)
  • Thorium-3.1.0-arm64.dmg is code-signed by an official EDRLab certificate, and it is notarised by Apple servers. The SHA512 is:
    • HEX: f6c83491d308cff750d8306e9775b291ec6ad0d8535f49699d5964543d9077431a62f0759cf64db2abec7a1c87b1670c0be78ee1a979be8fa8a17b02c18368ba
    • BASE64: 9sg0kdMIz/dQ2DBul3Wykexq0NhTX0lpnVlkVD2Qd0MaYvB1nPZNsqvsehyHsWcMC+eO4al5vo+ooXsCwYNoug==
    • Command line: shasum -a 512 -c Thorium-3.1.0-arm64.dmg.sha512 (=> Thorium-3.1.0-arm64.dmg: OK)
  • Thorium.Setup.3.1.0.exe is code-signed by an official EDRLab certificate (the version distributed via the Microsoft Store is also code-signed, albeit via EDRLab's Microsoft account). The SHA512 is:
    • HEX: e4660c7fc6d7c0c731614676cca9eb1a707eabe4b1864f38f9ea7e3a5f55ebe00b05659f6fc4b0e871d4edaa02802d0be3b22eaafb69980372d9e0991a861003
    • BASE64: 5GYMf8bXwMcxYUZ2zKnrGnB+q+Sxhk84+ep+Ol9V6+ALBWWfb8Sw6HHU7aoCgC0L47IuqvtpmANy2eCZGoYQAw==
    • Command line: certutil -hashfile Thorium.Setup.3.1.0.exe SHA512
  • Thorium.Setup.3.1.0-arm64.exe is code-signed by an official EDRLab certificate. The SHA512 is:
    • HEX: 8e0363786288747dd6c79a6cbe5fb7522047c365fc419ae6a30964b2d6354637d666736f62a8634213e0d15cf3610f29c16c0b9f3995e08f3ff891ae964b21d6
    • BASE64: jgNjeGKIdH3Wx5psvl+3UiBHw2X8QZrmowlkstY1RjfWZnNvYqhjQhPg0VzzYQ8pwWwLnzmV4I8/+JGulksh1g==
    • Command line: certutil -hashfile Thorium.Setup.3.1.0.exe SHA512
  • Thorium-3.1.0.AppImage is not code-signed. The SHA512 is:
    • HEX: ea0973118b770fcf5451955b7afb904e6a3703d45a46a905f64cc8800bcaf63b1d8d2e2e9aa83f1da8e162637ffbe475f030509f18639236fdcb0ba940978623
    • BASE64: 6glzEYt3D89UUZVbevuQTmo3A9RaRqkF9kzIgAvK9jsdjS4umqg/HajhYmN/++R18DBQnxhjkjb9ywupQJeGIw==
    • Command line: sha512sum -c Thorium-3.1.0.AppImage.sha512
  • EDRLab.ThoriumReader_3.1.0_amd64.deb is not code-signed. The SHA512 is:
    • HEX: c89ef795ecb25a9a922bce67aa35f96d4a201dd7a03069726e6aa71cac40694390cd3054b7a00264be3c3782eca17134ddcf25f7d42a582057894d9821417be3
    • BASE64: yJ73leyyWpqSK85nqjX5bUogHdegMGlybmqnHKxAaUOQzTBUt6ACZL48N4LsoXE03c8l99QqWCBXiU2YIUF74w==
    • Command line: sha512sum -c EDRLab.ThoriumReader_3.1.0_amd64.deb.sha512
  • Thorium-3.1.0-arm64.AppImage is not code-signed. The SHA512 is:
    • HEX: 73d475020d50637846bd7ebebce2581e22b1377cb6ca3ab9792c2b751726aace4428ce14e6ec18c850ac304b42509e5185323f9ff73f86f69caae6921a5d14d0
    • BASE64: c9R1Ag1QY3hGvX6+vOJYHiKxN3y2yjq5eSwrdRcmqs5EKM4U5uwYyFCsMEtCUJ5RhTI/n/c/hvacquaSGl0U0A==
    • Command line: sha512sum -c Thorium-3.1.0-arm64.AppImage.sha512
  • EDRLab.ThoriumReader_3.1.0_arm64.deb is not code-signed. The SHA512 is:
    • HEX: 9bcd98ad511a04bda2e1bc0d87a9b534c95595cd2e4ee64d3b91e5c0510dee439355f111d5ff9a950ee768617e52a94a1aca8d7f831bc8e2bcd19d16c2987f3f
    • BASE64: m82YrVEaBL2i4bwNh6m1NMlVlc0uTuZNO5HlwFEN7kOTVfER1f+alQ7naGF+UqlKGsqNf4MbyOK80Z0Wwph/Pw==
    • Command line: sha512sum -c EDRLab.ThoriumReader_3.1.0_arm64.deb.sha512

MacOS command line: node -e "const hash = require('crypto').createHash('sha512'); const stream = require('fs').createReadStream(process.argv[1]); stream.on('readable', () => { const data = stream.read(); if (data) { hash.update(data); } else { const hex = hash.digest('hex'); console.log(hex); console.log(Buffer.from(hex, 'hex').toString('base64')); } });" release/Thorium-3.1.0.dmg
(for Linux and Windows, replace the release/Thorium-3.1.0.dmg relative path with the respective executables / binaries - release/Thorium-3.1.0.AppImage, release/EDRLab.ThoriumReader_3.1.0_amd64.deb, release/Thorium Setup 3.1.0.exe ... and the ARM64 equivalents)

Don't miss a new thorium-reader release

NewReleases is sending notifications on new releases.