Add package-first build and distribution workflow

This commit is contained in:
Thales Maciel 2026-02-27 15:06:57 -03:00
parent 4a69c3d333
commit 993f51712b
13 changed files with 462 additions and 52 deletions

View file

@ -0,0 +1,33 @@
# Maintainer: Aman Maintainers <maintainers@example.com>
pkgname=aman
pkgver=__VERSION__
pkgrel=1
pkgdesc="Local amanuensis daemon for X11 desktops"
arch=('x86_64')
url="https://github.com/example/aman"
license=('MIT')
depends=('python' 'python-pip' 'python-setuptools' 'portaudio' 'gtk3' 'libayatana-appindicator' 'python-gobject' 'python-xlib')
makedepends=('python-build' 'python-installer' 'python-wheel')
source=("__TARBALL_NAME__")
sha256sums=('__TARBALL_SHA256__')
prepare() {
cd "${srcdir}/aman-${pkgver}"
python -m build --wheel
}
package() {
cd "${srcdir}/aman-${pkgver}"
install -dm755 "${pkgdir}/opt/aman"
python -m venv --system-site-packages "${pkgdir}/opt/aman/venv"
"${pkgdir}/opt/aman/venv/bin/python" -m pip install --upgrade pip
"${pkgdir}/opt/aman/venv/bin/python" -m pip install "dist/aman-${pkgver}-"*.whl
install -Dm755 /dev/stdin "${pkgdir}/usr/bin/aman" <<'EOF'
#!/usr/bin/env bash
set -euo pipefail
exec /opt/aman/venv/bin/aman "$@"
EOF
install -Dm644 "systemd/aman.service" "${pkgdir}/usr/lib/systemd/user/aman.service"
}

11
packaging/deb/control.in Normal file
View file

@ -0,0 +1,11 @@
Package: __PACKAGE_NAME__
Version: __VERSION__
Section: utils
Priority: optional
Architecture: __ARCH__
Maintainer: Aman Maintainers <maintainers@example.com>
Depends: python3, python3-venv, python3-gi, python3-xlib, libportaudio2, gir1.2-gtk-3.0, libayatana-appindicator3-1
Description: Aman local amanuensis daemon for X11 desktops
Aman records microphone input, transcribes speech, optionally rewrites output,
and injects text into the focused desktop app. Includes tray controls and a
first-run graphical settings UI.

10
packaging/deb/postinst Executable file
View file

@ -0,0 +1,10 @@
#!/bin/sh
set -eu
cat <<'EOF'
Aman installed.
To enable auto-start for your user session:
systemctl --user daemon-reload
systemctl --user enable --now aman
EOF