bt-volume-step: add package

Source package for https://github.com/Felitendo/bt-volume-step: a daemon that
corrects the coarse internal volume grid of Bluetooth audio devices on
PipeWire. Nothing is compiled; the upstream Makefile installs the script and
a systemd user unit.
This commit is contained in:
Felitendo committed 2026-08-16 03:12:52 +02:00
1 parent 58e02289d5
commit 11929e6ef6
3 files changed
+56

No files matched your search

+1
View File
@@ -39,6 +39,7 @@ source in the `PKGBUILD` (and drop the `-bin` suffix), or don't package it.
| Package | Upstream | Upstream deliverable | AUR |
|---|---|---|---|
| `bt-volume-step` | [Felitendo/bt-volume-step](https://github.com/Felitendo/bt-volume-step) — corrects the coarse internal volume grid of Bluetooth audio devices on PipeWire | *built from source* | [bt-volume-step](https://aur.archlinux.org/packages/bt-volume-step) |
| `cachy-auto-update` | [Felitendo/cachy-auto-update](https://github.com/Felitendo/cachy-auto-update) — unattended background updates for CachyOS (pacman, AUR, Flatpak, AppImages) | *built from source* | [cachy-auto-update](https://aur.archlinux.org/packages/cachy-auto-update) |
| `chiaki-ng-bin` | [streetpea/chiaki-ng](https://github.com/streetpea/chiaki-ng) — PlayStation Remote Play client (Qt6) | AppImage | [chiaki-ng-bin](https://aur.archlinux.org/packages/chiaki-ng-bin) |
| `chromium-widevine-helper` | [GloriousEggroll/chromium-widevine-helper](https://github.com/GloriousEggroll/chromium-widevine-helper) — extension + native helper installing Google's Widevine CDM into Chromium-based browser profiles | *no build step* | [chromium-widevine-helper](https://aur.archlinux.org/packages/chromium-widevine-helper) |
+28
View File
@@ -0,0 +1,28 @@
# Maintainer: Felitendo
# This PKGBUILD is updated automatically:
# https://github.com/Felitendo/PKGBUILDS
pkgname=bt-volume-step
pkgver=1.0.0
pkgrel=1
pkgdesc="Fixed volume steps for Bluetooth audio devices on PipeWire"
arch=('any')
url="https://github.com/Felitendo/bt-volume-step"
license=('BSD-3-Clause')
depends=('python' 'libpulse')
optdepends=('kconfig: follow the KDE Plasma volume step setting'
'bluez-utils: device names in --show')
source=("${pkgname}-${pkgver}.tar.gz::${url}/archive/refs/tags/v${pkgver}.tar.gz")
sha256sums=('0b06ba55c3764271856a5a806c28dc71b0802f85fd3d706699834eb4249ed097')
check() {
cd "${pkgname}-${pkgver}"
make check
}
package() {
cd "${pkgname}-${pkgver}"
make install PREFIX=/usr DESTDIR="$pkgdir"
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
install -Dm644 README.md -t "$pkgdir/usr/share/doc/$pkgname"
}
+27
View File
@@ -0,0 +1,27 @@
# bt-volume-step - fixed volume steps for Bluetooth audio devices on PipeWire
# (https://github.com/Felitendo/bt-volume-step).
#
# Nothing is compiled: the payload is a single Python script plus a systemd
# user unit, installed by the upstream Makefile. Sourced from the release
# tarball, so this is a source package without a -bin suffix.
UPSTREAM_REPO="Felitendo/bt-volume-step"
# Installed in CI (pacman) before the makepkg test build. check() runs the
# upstream test suite, which needs nothing beyond python.
BUILD_DEPS=(python)
latest_version() {
curl -sf "https://api.github.com/repos/$UPSTREAM_REPO/releases/latest" \
| jq -r '.tag_name' | sed 's/^v//'
}
# refresh_checksums <version> <pkgbuild-path>
refresh_checksums() {
local ver="$1" pkgbuild="$2"
local sha
sha="$(curl -sfL \
"https://github.com/$UPSTREAM_REPO/archive/refs/tags/v$ver.tar.gz" \
| sha256sum | cut -d' ' -f1)"
sed -i "s|^sha256sums=.*|sha256sums=('$sha')|" "$pkgbuild"
}