Repository navigation
Releases: tomaszstaniak/aros-foliopdf
Release list
Folio 0.5
Folio 0.5 renders pages and thumbnails in the background. Scrolling, page changes, zoom and window handling keep working while a heavy page renders.
- A background worker with its own MuPDF context and its own copy of the document renders one page or thumbnail at a time. Visible pages come before thumbnails.
- A render the view no longer needs (after a scroll, zoom, resize, view change or another document) is stopped, and its result is never shown. The previous picture stays until the new one is ready.
- Closing a document or quitting no longer renders the start-page picture; it is made from the page's thumbnail.
- New options:
-tshows job counts, the window's longest delay and the cache size;-l filewrites a timed log;-srenders without the worker, as 0.4 did.
Measurements
AROS One 1.3 x86_64 under QEMU (emulated CPU, guest time), the longest pause in the window, rendering in the window (-s) compared with the worker:
| File | -s |
worker | while the worker rendered |
|---|---|---|---|
| Generated heavy vector file | 27 744 ms | 193 ms | 65 ms |
| 22-page paper | 1 772 ms | 240 ms | 175 ms |
| Scanned PDF (200 dpi images) | 613 ms | 240 ms | 89 ms |
Keys pressed during a 28-second page render took effect at once, and the render that was no longer needed stopped within about 60 ms. The target for this version was a pause at least 4x shorter than with -s on every file. It was met for the heavy file (143x) and the paper (7.4x), not for the scanned file (2.6x). This deviation was accepted for 0.5. The remaining pauses of 112-240 ms come from redrawing after zoom and view changes in the window itself, with or without the worker; that work is planned for a later version.
Known limitations
- Quitting during a large image decode waits for it. Quitting while the worker renders usually takes 16-83 ms. MuPDF cannot interrupt the decode of a single image, so on a 2400x3200 image page quitting took 1.3-1.5 s in the measured case under emulation. The window stays responsive meanwhile.
- Pages with unsaved highlights are rendered by the window itself until the document is saved, so the window can pause while such a page is drawn (1.3 s for highlight plus save on the measured paper). After saving, the worker takes over again.
- i386: one Ctrl-C (Break) of 30 did not end Folio in a series of starts and stops. The window kept working and closed normally from its close gadget. The cause is not known; it was not seen in 90 quits on x86_64.
- Search, text selection and Copy as Image still run in the window.
- Menu shortcuts such as Amiga+Q do not work while the pointer is over a page; use the menu or move the pointer.
- From a Shell, run
Stack 8388608first. The icon sets this stack.
Packages
- x86_64 ABIv11 (AROS One):
Folio-0.5.x86_64-aros-v11.zip(arospkg package) and the same files as.lha(without the generatedapplication.json). Measured and tested on AROS One 1.3 under QEMU. - i386 ABIv0:
Folio-0.5.i386-aros-v0.zip. Run on AROS ABIv0 i386 under QEMU: rendering, scrolling during a render, highlights and saving, document switch, quit, start/stop cycles. See BUILD-REPORT.md. - Raspberry Pi aarch64:
Folio-0.5.aarch64-aros-raspi.zip. Compiled and linked; not run. - Mainline ABIv1 x86_64: no 0.5 build.
- Source:
Folio-0.5-source.zip, the repository at tag v0.5 with the pinned MuPDF revision and patches. All three executables rebuild byte-identically from it.
Use the package for your architecture and ABI; they are not interchangeable. The packages carry an arospkg description and start from the icon with apkg run. Checksums are in SHA256SUMS-0.5.
Folio 0.4.1
Folio 0.4.1 adds direct page entry and changes Magazine view to pair pages 1–2, 3–4, with an odd final page shown alone.
- Enter a page number between Previous and Next, or press Amiga+J.
- The Pages sidebar keeps its scroll position while reading.
- Fixed scrollbar arrows stalling on long documents.
- New PDF-and-pencil icon and revised documentation.
Packages:
- x86_64 ABIv11: LHA with an embedded arospkg manifest. Installation, PDF rendering, page entry and removal checked on AROS One 1.3 under QEMU.
- i386 ABIv0 and Raspberry Pi aarch64: compiled and linked; these new binaries have not been run. See the included BUILD-REPORT.md.
- Source: repository at tag v0.4.1, including the pinned MuPDF revision and patches.
Use the package matching your architecture and ABI. Keep the icon's 8 MB stack; for a Shell launch, run Stack 8388608 first.
The ABIv11 check did not repeat clipboard, annotation saving or external links. Checksums are in SHA256SUMS-0.4.1.
Packaging revision 1: the additional 0.4.1-aros1 Pi and i386 ZIPs include an arospkg manifest prepared with apkg-pack. Executables and all original files are unchanged. Use these ZIPs for catalogue submission; their checksums are in SHA256SUMS-0.4.1-aros1. Original downloads remain available.
Packaging revision 1 for x86_64 ABIv11 (Folio-0.4.1-aros1.x86_64-aros-v11.zip): adds the arospkg manifest. Application binaries and resources are unchanged. SHA-256 024ba46165b07e10bd44312f9cb2fe5ed8c412755e77958a750eb7d8b8065193.
Folio 0.4
Folio 0.4 adds a paged, two-page Magazine view to the PDF reader for AROS One x86_64 (ABIv11).
- View → Magazine (Amiga+2) shows one spread at a time: cover, 2–3, 4–5, and so on. Single Page is available with Amiga+1.
- The cover and a final unpaired page are centred and fitted to the reading area.
- Fit Page follows the window size and the current spread. Manual zoom keeps its scale.
- Text selection can cross the spine; links, outline and search retain the target page.
- Each document remembers its view, page, zoom and reading position.
Installation
Unpack Folio-0.4.x86_64-aros-v11.lha and open the Folio icon. From a Shell, run Stack 8388608 before Folio file.pdf. The package includes an arospkg manifest.
This binary is for ABIv11, tested on AROS One 1.3 x86_64 under QEMU. It is not a mainline ABIv1 binary. MuPDF and its supporting libraries are linked into the program; licences are included.
Checks
Host layout and render-queue tests pass, the GCC 10.5.0 ABIv11 build has no warnings, and the MuPDF patch series applies to the pinned source revision. The release LHA was installed and removed with arospkg on AROS One. Runtime checks covered the centred cover, first Zoom Out, 2–3 spread, window-height resize, reopening in Magazine and the final unpaired page.
Known limits: rendering runs in the UI task; no printing or forms; highlights are the only supported annotation. Copy as Image produces ILBM, but AROS One MultiView displayed it blank in earlier testing.
Source
Folio-0.4-source.zip contains the exact application sources for all three architectures, pinned MuPDF revisions, patches and build instructions. Its root is the i386/aarch64 source; x86_64-v11-original/ preserves the original x86_64 source snapshot. scripts/bootstrap.sh fetches and reconstructs the dependency sources. Licensed under AGPL-3.0-or-later.
Additional architectures — 2026-10-03
Folio 0.4 is also available as these cross builds:
| Archive | Target | Verification |
|---|---|---|
Folio-0.4.i386-aros-v0.zip |
AROS i386 ABIv0, built with GCC 6.5.0 and the matching SDK | Compilation and linking only; no runtime test |
Folio-0.4.aarch64-aros-raspi.zip |
Native AROS Raspberry Pi aarch64, SDK from the 20260822 system distribution, AROS-patched Clang 20.1.0 | QEMU Pi 3B smoke test: PDF rendering, keyboard navigation, quit and reopening |
These builds use commit 44bbd15bf2013beca6359ecdedab2494debf0652: version 0.4 including the existing scrollbar fix after the v0.4 tag. No application code was changed for the recompilation. The matching source is Folio-0.4-source.zip, which also includes the local cross-build recipes and toolchain setup scripts.
Unpack the appropriate ZIP and open the Folio icon. For Shell use, run Stack 8388608 before launching Folio. Each new ZIP contains its own target-specific README, build report, licence notices, checksums and package manifest.
The new binaries' ELF architecture and symbols were checked, and the archives passed integrity checks. The aarch64 toolchain also passed a C/AROS/pthread/long-double compile/link probe. i386 has not been runtime-tested. The Raspberry Pi build passed the QEMU smoke test below; clipboard and annotation saving remain unverified on both new targets. The original x86_64 test results above do not establish runtime support for i386 or Raspberry Pi.
QEMU emulates Raspberry Pi 3B, and the official AROS Raspberry Pi scripts include a raspi3b boot recipe. The Raspberry Pi QEMU smoke test is recorded below; real Raspberry Pi hardware remains untested.
Use SHA256SUMS-0.4 to verify all three program archives and the single source archive.
Raspberry Pi QEMU smoke test — 2026-10-04
The published aarch64 binary was tested on QEMU 11.1.2 raspi3b with native AROS 20260822. It opened the three-page PDF fixture, rendered all pages and thumbnails, responded to keyboard navigation, quit cleanly, and reopened on page 3 after a complete VM restart. A guest-written system-SD file also survived that restart. This is a limited smoke test, not a full functional or hardware test.
The private system SD was used for installation: USB mass-storage exchange currently fails during SCSI INQUIRY in this guest/emulator combination, so the new managed rpi-1 slot remains experimental (ready: false). Mouse calibration, clipboard, annotations/save, networking, audio and real hardware are unverified. i386 remains build-only.
Build reports bundled inside the original cross-build ZIPs describe verification at upload time and predate this follow-up.
Folio 0.3.8
Start page: Continue reading with a picture of the page last read, the other recent documents as rows, a drop hint; documents remembered by full path. For AROS One 1.3 x86_64 (ABIv11).
SHA-256
Folio-0.3.8.x86_64-aros-v11.lha e46f8c09562899bd41315c08eae47632c5316ae696c6785414989401a6531ecf
Folio-0.3.8-source.zip f28a71f6cd77ab8f73a8d1a4049dc8dd9222cea010678860fe8347fa09ef3f34
Folio 0.3.7
Each document comes back where it was left (page, place, zoom); Open Recent in the Project menu with the last five documents; a welcome page with Open PDF... and the recent list when started without a document. Package manifest carries the right version. For AROS One 1.3 x86_64 (ABIv11).
SHA-256
Folio-0.3.7.x86_64-aros-v11.lha 7474e2cc1410975f96787c88ac1c604e7c3adf64daffa93d26b2434fef23f975
Folio-0.3.7-source.zip 56bf8ac2c1720ef52943c829c5cc34113eeaa27bdf8f65b76bffc15391f783fc
Folio 0.3.6
Render retries with a state per request: a failed page or thumbnail is retried after five seconds without a scroll, three times, then reported in the label; Amiga+R tries again. No console window when started from Workbench. Source file and build output are now named Folio. For AROS One 1.3 x86_64 (ABIv11).
SHA-256
Folio-0.3.6.x86_64-aros-v11.lha c03df215e2a18f78c6d56b4d8d3e2ee6c51bf8d26842569424aa9bf43b922801
Folio-0.3.6-source.zip f9a337dd15bfe84e32672f1bde3f8abe00d8eb9dd6445a04433b8a1f798bfe4c
Folio 0.3.5
Exact zoom anchoring, render failure back-off, no stale render requests. For AROS One 1.3 x86_64 (ABIv11).
Folio 0.3
Links, outline positions, wheel zoom around the pointer, instant scaled preview on zoom. For AROS One 1.3 x86_64 (ABIv11). See CHANGELOG.md.
Folio 0.2.1
Selection drawn during a drag no longer spills below the page view. For AROS One 1.3 x86_64 (ABIv11).
Folio 0.2
Scrolling and layout fixes for long documents; see CHANGELOG.md. For AROS One 1.3 x86_64 (ABIv11).