Skip to content

fix: build and verify the unpacked Linux app - #22

Closed
charliebarmore wants to merge 1 commit into
mainfrom
codex/linux-package-verification
Closed

charliebarmore wants to merge 1 commit into
mainfrom
codex/linux-package-verification

Conversation

@charliebarmore

@charliebarmore charliebarmore commented Sep 22, 2026 •

Copy link
Copy Markdown
Owner

npm run package:dir failed on Linux because the fuse hook opened LedgerPDF, but electron-builder created a different executable name. The build now explicitly names the Linux binary ledgerpdf, the hook uses the packager's actual name, and package verification resolves Linux output directories instead of a Windows EXE.

The packaged smoke test now imports two PDFs, a receipt image, and a two-sheet workbook, exports all nine pages through the frozen engine, and requires nine pages after reopening the saved binder. A manual package option in the Linux workflow builds and verifies the unpacked app under Xvfb; ordinary PRs keep source-only checks. Documentation records the test scope and remaining limits.

Validation on Omarchy / Arch Linux x64, Node 26.7.0, Python 3.14.7:

  • Hash-pinned packaging dependencies installed; npm run package:dir passed after reproducing and fixing the original failure.
  • npm run verify:package passed: nine fuse settings, resources/licenses, frozen engine, mixed import/export/reopen, and packaged MCP with approved-folder enforcement.
  • Visible UI walkthrough of the normal packaged app: placed a tick with test initials, added a note, saved, quit, reopened from Recents, and verified the tick, initials, note, nine pages, and bookmarks survived. Inspected the spreadsheet page. Used synthetic files and an isolated configuration profile.
  • Release-configuration checks, workflow YAML parsing, and git diff --check passed.

The walkthrough used agent-browser against the normal packaged window, not a human acceptance test. Native file dialogs, installers/desktop registration, ARM builds, and portability of Arch-built binaries remain unverified. Details: docs/LINUX-VERIFICATION.md.

Follow-up to #20 and #21.

Clean-runner validation: Linux packaging run passed on Ubuntu 22.04 with Node 22 and Python 3.12 at commit 44aabd3, including nine fuse settings, frozen engine, nine-page mixed import/export/reopen, and packaged MCP. All PR source checks on Linux, Windows, and macOS plus CodeQL passed.

@charliebarmore
charliebarmore deleted the codex/linux-package-verification branch September 26, 2026 15:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant