Some antivirus engines heuristically flag the self-signed, low-prevalence Windows installer (issue #198). Give downloaders a way to confirm assets are exactly what CI built: a checksum manifest plus signed SLSA provenance verifiable via gh attestation verify, with triage + code-signing policy docs linked from the README and release notes.
2.3 KiB
Code Signing Policy
This document describes how OpenPencil release binaries are built and signed, and the rules the project follows for code signing.
What gets signed
- Windows: the NSIS installer
OpenPencil-<version>-<arch>-win-setup.exe(x64 and arm64), containing the desktop appopenpencil-desktop.exe, the CLIop.exe, and the bundled ANGLE runtime DLLs. - macOS: the
.dmgdisk images and the app bundle inside them (Developer ID signing + notarization when release certificates are configured).
How releases are built
Every release artifact is produced by the public GitHub Actions workflow
.github/workflows/rust-release.yml
from a version tag on this repository. Binaries are compiled from the tagged
source, packaged, checksummed into SHA256SUMS.txt, attested with a signed
SLSA build-provenance attestation, and uploaded to GitHub Releases directly by
CI. No human handles or modifies the binaries between build and publication.
Anyone can verify an asset's origin:
gh attestation verify <downloaded-file> --repo ZSeven-W/openpencil
Signing rules
- Free code signing is provided by SignPath.io and a free code signing certificate by the SignPath Foundation.
- We only sign artifacts built by the release workflow of this repository from source code in this repository (including its vendored submodules, which the same team maintains). We never sign third-party binaries or locally built artifacts.
- Signing is performed in CI as part of the release pipeline; signing credentials are never exported to developer machines.
- The team responsible for code signing is the same team that develops and maintains OpenPencil and owns this source repository.
Privacy policy
OpenPencil is a local-first design tool. The application does not collect or transmit personal data or telemetry. Network access happens only for features the user explicitly invokes (e.g. optional AI providers, collaboration, or image search), using endpoints the user configures or enables.
Team
OpenPencil is developed and maintained by the ZSeven-W organization. The maintainers listed on the GitHub organization are the only people with commit access to this repository and control over the release workflow.