Add package-first build and distribution workflow
This commit is contained in:
parent
4a69c3d333
commit
993f51712b
13 changed files with 462 additions and 52 deletions
33
packaging/arch/PKGBUILD.in
Normal file
33
packaging/arch/PKGBUILD.in
Normal 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
11
packaging/deb/control.in
Normal 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
10
packaging/deb/postinst
Executable 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
|
||||
Loading…
Add table
Add a link
Reference in a new issue