Releases: edrlab/thorium-reader
[latest-windows-intel] automated test build (beta)
Download links:
(build job: https://github.com/edrlab/thorium-reader/actions/runs/13542826399)
[latest-windows-arm] automated test build (beta)
Download links:
(build job: https://github.com/edrlab/thorium-reader/actions/runs/13542826399)
[latest-macos-intel] automated test build (beta)
Download links:
(build job: https://github.com/edrlab/thorium-reader/actions/runs/13542826399)
[latest-macos-arm] automated test build (beta)
Download links:
(build job: https://github.com/edrlab/thorium-reader/actions/runs/13542826399)
[latest-linux-intel] automated test build (beta)
[latest-linux-arm] automated test build (beta)
Thorium Reader v3.1.0
Summary
Version 3.1.0
was released on 17 February 2025.
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 fileThorium-3.1.0.dmg
, edit the new fileThorium-3.1.0.dmg.sha512
and write this exact line of text inside it:HEX Thorium-3.1.0.dmg
, then run the command lineshasum -a 512 -c Thorium-3.1.0.dmg.sha512
(=>Thorium-3.1.0.dmg: OK
)
- HEX:
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
)
- HEX:
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
- HEX:
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
- HEX:
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
- HEX:
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
- HEX:
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
- HEX:
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
- HEX:
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)
Thorium Reader v3.0.0
Summary
Version 3.0.0
was released on 26 June 2024.
This release includes the following (notable) new features, improvements and bug fixes:
- Major user interface refresh / redesign
- Support for dark/light modes (matches operating system, or can be overridden by user preference)
- Reader window supports additional colour themes
- Dockable panels (left/right) in reader window for navigation and display preferences
- NOTE: some keyboard tab-cycling and focus handling is currently occasionally buggy, will be fixed in v3.1 as we also improve screen reader support
- New feature: annotations (currently locally-stored database, a future revision will support import/export)
- Added a "mark as finished" action
- Support for PROXY servers via environment variables
- Simplified LCP/LSD network requests
- Updated locales / translations
Download checksum / hash verification
Thorium-3.0.0.dmg
is code-signed by an official EDRLab certificate, and it is notarised by Apple servers. The SHA512 is:- HEX:
88274d1e5d16ce226c75a43623c1c7d3487726bb57bbf70a694fd6f28aefe4c8ffe3b35212050cf4882f2fed7d2d51deb942241594572faae7cbaa79101eb906
- BASE64:
iCdNHl0WziJsdaQ2I8HH00h3JrtXu/cKaU/W8orv5Mj/47NSEgUM9IgvL+19LVHeuUIkFZRXL6rny6p5EB65Bg==
- Verification: create a file named
Thorium-3.0.0.dmg.sha512
next to the downloaded fileThorium-3.0.0.dmg
, edit the new fileThorium-3.0.0.dmg.sha512
and write this exact line of text inside it:HEX Thorium-3.0.0.dmg
, then run the command lineshasum -a 512 -c Thorium-3.0.0.dmg.sha512
(=>Thorium-3.0.0.dmg: OK
)
- HEX:
Thorium-3.0.0-arm64.dmg
is code-signed by an official EDRLab certificate, and it is notarised by Apple servers. The SHA512 is:- HEX:
122355e067bed06415abc22fbaf3f533bd7af4744adea3fd9a136e8b348db3c674e12c561e036b3005e27547bfbc286dbb9adc50f6ab94f07eb4bdca35b2fbc9
- BASE64:
EiNV4Ge+0GQVq8IvuvP1M7169HRK3qP9mhNuizSNs8Z04SxWHgNrMAXidUe/vChtu5rcUParlPB+tL3KNbL7yQ==
- Command line:
shasum -a 512 -c Thorium-3.0.0-arm64.dmg.sha512
(=>Thorium-3.0.0-arm64.dmg: OK
)
- HEX:
Thorium.Setup.3.0.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:
64339cd872fbdbc3b2f192157c9f668beda4940f5fe790e29c153e102fbe0501401300ce8665f875998d513fa04367929a56dec8141eaaf8dd11ddcdaaca25e6
- BASE64:
ZDOc2HL728Oy8ZIVfJ9mi+2klA9f55DinBU+EC++BQFAEwDOhmX4dZmNUT+gQ2eSmlbeyBQeqvjdEd3Nqsol5g==
- Command line:
certutil -hashfile Thorium.Setup.3.0.0.exe SHA512
- HEX:
Thorium-3.0.0.AppImage
is not code-signed. The SHA512 is:- HEX:
1fe7ad9cbe436d77c23ab20c805eb16635586e2c1af8fe4d1b126956e7c0c74ca00ffa32b344da48a047a2a895e1bdea0c704d119238d886201b0da2719f2588
- BASE64:
H+etnL5DbXfCOrIMgF6xZjVYbiwa+P5NGxJpVufAx0ygD/oys0TaSKBHoqiV4b3qDHBNEZI42IYgGw2icZ8liA==
- Command line:
sha512sum -c Thorium-3.0.0.AppImage.sha512
- HEX:
EDRLab.ThoriumReader_3.0.0_amd64.deb
is not code-signed. The SHA512 is:- HEX:
88057a075f2e96cab50078d2278ac047b4aa7fce704ed67c5bc6287f2e856864aceca4a9faa948ac3c333182dd9d28c1d72895955f10e55b37e54388a389cc18
- BASE64:
iAV6B18ulsq1AHjSJ4rAR7Sqf85wTtZ8W8Yofy6FaGSs7KSp+qlIrDwzMYLdnSjB1yiVlV8Q5Vs35UOIo4nMGA==
- Command line:
sha512sum -c EDRLab.ThoriumReader_3.0.0_amd64.deb.sha512
- HEX:
Thorium-3.0.0-arm64.AppImage
is not code-signed. The SHA512 is:- HEX:
c64f718d18c0b4a2faa21ad5248ac48f3243ff27129aded0236102d44aeec8fad5c649b65174348a0f630803e2c1b9fb7b26fe274ebb41812d0ce5be10a5fe2a
- BASE64:
xk9xjRjAtKL6ohrVJIrEjzJD/ycSmt7QI2EC1EruyPrVxkm2UXQ0ig9jCAPiwbn7eyb+J067QYEtDOW+EKX+Kg==
- Command line:
sha512sum -c Thorium-3.0.0-arm64.AppImage.sha512
- HEX:
EDRLab.ThoriumReader_3.0.0_arm64.deb
is not code-signed. The SHA512 is:- HEX:
a950ef228dedc75e0c7e26001feece0905c853f759fa10dc4cd3544d3fbaf20e9fb218f7c1c069c3cd7a2b769bcfa58071bacac4b568e0dcba8f8c1403e18706
- BASE64:
qVDvIo3tx14MfiYAH+7OCQXIU/dZ+hDcTNNUTT+68g6fshj3wcBpw816K3abz6WAcbrKxLVo4Ny6j4wUA+GHBg==
- Command line:
sha512sum -c EDRLab.ThoriumReader_3.0.0_arm64.deb.sha512
- HEX:
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.0.0.dmg
(for Linux and Windows, replace the release/Thorium-3.0.0.dmg
relative path with the respective executables / binaries - release/Thorium-3.0.0.AppImage
, release/EDRLab.ThoriumReader_3.0.0_amd64.deb
, release/Thorium Setup 3.0.0.exe
)
Thorium Reader v2.4.2
Summary
Version 2.4.2
was released on 17 May 2024.
This release includes the following (notable) new features, improvements and bug fixes:
- HOTFIX: LCP2 publications with obfuscated fonts or non-encrypted HTML resources were causing the app to crash
Download checksum / hash verification
Thorium-2.4.2.dmg
is code-signed by an official EDRLab certificate, and it is notarised by Apple servers. The SHA512 is:- HEX:
4c79bef47dedb64537801fa20b43af93460a85e7d51e2de1aa2623e365bcaa605c60899ddde4ea1f884a68cae8b549eb6fb113c19e5c6180057348aafeebe86c
- BASE64:
THm+9H3ttkU3gB+iC0Ovk0YKhefVHi3hqiYj42W8qmBcYImd3eTqH4hKaMrotUnrb7ETwZ5cYYAFc0iq/uvobA==
- Verification: create a file named
Thorium-2.4.2.dmg.sha512
next to the downloaded fileThorium-2.4.2.dmg
, edit the new fileThorium-2.4.2.dmg.sha512
and write this exact line of text inside it:HEX Thorium-2.4.2.dmg
, then run the command lineshasum -a 512 -c Thorium-2.4.2.dmg.sha512
(=>Thorium-2.4.2.dmg: OK
)
- HEX:
Thorium-2.4.2-arm64.dmg
is code-signed by an official EDRLab certificate, and it is notarised by Apple servers. The SHA512 is:- HEX:
0060d607d6170e9a053cfecfa0b4952f1c65aa577381564645abe0aa01d0cd612b1de8a9cd79e350629e426f819ae8271430d7f9da612f26e954d6c51d41e51d
- BASE64:
AGDWB9YXDpoFPP7PoLSVLxxlqldzgVZGRavgqgHQzWErHeipzXnjUGKeQm+BmugnFDDX+dphLybpVNbFHUHlHQ==
- Command line:
shasum -a 512 -c Thorium-2.4.2-arm64.dmg.sha512
(=>Thorium-2.4.2-arm64.dmg: OK
)
- HEX:
Thorium.Setup.2.4.2.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:
d6270334e5c695c7b872b141794370225f0f741fab1cf057ed666e363edf3a9a2414f832525dac69a5ba0f097e2d7deec4aefcaf9781c97a6c36b1515365959b
- BASE64:
1icDNOXGlce4crFBeUNwIl8PdB+rHPBX7WZuNj7fOpokFPgyUl2saaW6Dwl+LX3uxK78r5eByXpsNrFRU2WVmw==
- Command line:
certutil -hashfile Thorium.Setup.2.4.2.exe SHA512
- HEX:
Thorium-2.4.2.AppImage
is not code-signed. The SHA512 is:- HEX:
e6b94f84c85912a2b7cb835bd0d42aa85b1ac803af7284f684d7c76f4d8d1a229df42eb3db74825dc989105dfafde30e3771a9ab84b0d71ee90fdd4d20433069
- BASE64:
5rlPhMhZEqK3y4Nb0NQqqFsayAOvcoT2hNfHb02NGiKd9C6z23SCXcmJEF36/eMON3Gpq4Sw1x7pD91NIEMwaQ==
- Command line:
sha512sum -c Thorium-2.4.2.AppImage.sha512
- HEX:
EDRLab.ThoriumReader_2.4.2_amd64.deb
is not code-signed. The SHA512 is:- HEX:
fa95ace3266038100288a8f2544a674af43aee3d6a40d0f03260f570112c4af3aa34067b257ea0c8cbbe5e6304b9cafb85a70d7b43ca84639074318abf4303ea
- BASE64:
+pWs4yZgOBACiKjyVEpnSvQ67j1qQNDwMmD1cBEsSvOqNAZ7JX6gyMu+XmMEucr7hacNe0PKhGOQdDGKv0MD6g==
- Command line:
sha512sum -c EDRLab.ThoriumReader_2.4.2_amd64.deb.sha512
- HEX:
Thorium-2.4.2-arm64.AppImage
is not code-signed. The SHA512 is:- HEX:
685d883c423d5c64c686a8f22dd2978b105d0afaefffaee6fc3798c294aa4ab64a8f0175ffc033c2739d219d0730fce76defa7efb9de2924c16f62a88c7d60d1
- BASE64:
aF2IPEI9XGTGhqjyLdKXixBdCvrv/67m/DeYwpSqSrZKjwF1/8AzwnOdIZ0HMPznbe+n77neKSTBb2KojH1g0Q==
- Command line:
sha512sum -c Thorium-2.4.2-arm64.AppImage.sha512
- HEX:
EDRLab.ThoriumReader_2.4.2_arm64.deb
is not code-signed. The SHA512 is:- HEX:
1f964e7e7b88045c98d5660289b9db2107646547d08c1ef0ad53799d1134da1324d659801d4f2719c56be56d9ac2bd83ccf089f7f3dc81c5f0a20a868bbf7cfb
- BASE64:
H5ZOfnuIBFyY1WYCibnbIQdkZUfQjB7wrVN5nRE02hMk1lmAHU8nGcVr5W2awr2DzPCJ9/PcgcXwogqGi798+w==
- Command line:
sha512sum -c EDRLab.ThoriumReader_2.4.2_arm64.deb.sha512
- HEX:
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-2.4.2.dmg
(for Linux and Windows, replace the release/Thorium-2.4.2.dmg
relative path with the respective executables / binaries - release/Thorium-2.4.2.AppImage
, release/EDRLab.ThoriumReader_2.4.2_amd64.deb
, release/Thorium Setup 2.4.2.exe
)