* feat(packaging): build thin .deb and .rpm with nfpm and attach them to releases Adds packaging/native: an nfpm config that produces a .deb and an .rpm from the release wheel. The packages stay thin - Python, GTK, PyGObject and the typelibs are distro Depends; only pywhispercpp and pynput are vendored because the first is unpackaged on both distros and the second is missing on Fedora. The Debian 12 build image and the nfpm download are pinned in tool_checksums.txt. just native-packages builds both in the pinned container, and native-smoke installs the built package per distro: debian:12 and ubuntu:24.04 exercise the .deb, fedora:42 the .rpm, then each runs vocalinux --version plus an import smoke of the app and the vendored extension. unified-pipeline.yml gates on the same three-distro matrix, and release.yml attaches both arches to the release and covers them in SHA256SUMS and the provenance manifest. Refs #600 * fix(packaging): preserve launcher args and document Wayland input group The launcher joined $* into an unquoted exec, re-splitting file paths that contain spaces before argparse saw them. Exec "$@" directly and re-quote each argument for the inner shell of 'sg input -c'. On Wayland the packages could not grant the 'input' group membership evdev hotkeys need; name the usermod step and its caveat in INSTALL.md and the release notes. * test(packaging): add return types to the native packaging tests --------- Co-authored-by: Jatin K Malik <jatinkrmalik@gmail.com>
24 lines
1.5 KiB
Plaintext
24 lines
1.5 KiB
Plaintext
# Pinned build inputs for packaging/native/build.sh.
|
|
#
|
|
# Same contract as packaging/appimage/tool_checksums.txt: everything the
|
|
# package build downloads is pinned and verified here, so two builds of the
|
|
# same commit cannot differ.
|
|
#
|
|
# Columns: name, kind, value, source — parseable by awk.
|
|
#
|
|
# sha256 the file downloaded from <source> must hash to <value>
|
|
# docker build inside image <value>; <source> records the tag it came from
|
|
# version recorded for humans; the hash pins pin the artifacts themselves
|
|
#
|
|
# To bump nfpm: change the version in the <source> URLs, download the
|
|
# tarballs, and replace <value> with `sha256sum` of each. The base image
|
|
# digest comes from `docker buildx imagetools inspect debian:12` (use the
|
|
# index digest, not a per-architecture one — the same line has to work on
|
|
# x86_64 and aarch64).
|
|
|
|
base-image docker docker.io/library/debian@sha256:2c037a04925515fdd6ea85ea14a682d0e79931f5e9f5d07b6dbfc6ba12f9e858 debian:12
|
|
nfpm version 2.47.0 https://github.com/goreleaser/nfpm/releases/tag/v2.47.0
|
|
|
|
nfpm-x86_64 sha256 0660ca602b2d2d2ae4781a06c692b3eeb9d437ffea05b831d76e41f4a3188783 https://github.com/goreleaser/nfpm/releases/download/v2.47.0/nfpm_2.47.0_Linux_x86_64.tar.gz
|
|
nfpm-aarch64 sha256 1c0f5f2999b9a974bfb04fdb0cc3306096de530ac5dbb25d739cc5f5219c919c https://github.com/goreleaser/nfpm/releases/download/v2.47.0/nfpm_2.47.0_Linux_arm64.tar.gz
|