Lightweight Bluetooth manager for Linux with: - D-Bus BlueZ client via nim-dbus - CLI binary (nbt) — list, scan, power, connect, etc. - Daemon (nimbt-daemon) — event loop + UNIX socket IPC - JSON, TOML, YAML config support - Nerd Font icons + plain/JSON output modes - Autoconnect engine for trusted devices - systemd user service unit - Arch Linux PKGBUILD
46 lines
1.2 KiB
Bash
46 lines
1.2 KiB
Bash
# Maintainer: nimbt <niko@n1kt.ru>
|
|
pkgname=nimbt
|
|
pkgver=0.1.0
|
|
pkgrel=1
|
|
pkgdesc="Lightweight Bluetooth manager for Linux (daemon + CLI)"
|
|
arch=('x86_64' 'aarch64')
|
|
url="https://git.n1kt.ru/Niko/nim-bt"
|
|
license=('MIT')
|
|
depends=('dbus' 'glibc')
|
|
makedepends=('nim' 'nimble' 'git')
|
|
source=("$pkgname-$pkgver.tar.gz::https://git.n1kt.ru/Niko/nim-bt/archive/v$pkgver.tar.gz")
|
|
sha256sums=('SKIP')
|
|
|
|
prepare() {
|
|
cd "$srcdir/$pkgname"
|
|
nimble install -y --depsOnly --nimbleDir:"$srcdir/nimble" 2>/dev/null || true
|
|
}
|
|
|
|
build() {
|
|
cd "$srcdir/$pkgname"
|
|
export NIMBLE_DIR="$srcdir/nimble"
|
|
nim c \
|
|
--path:"$NIMBLE_DIR/pkgs2" \
|
|
--gc:orc \
|
|
-d:release \
|
|
--opt:speed \
|
|
--hints:off \
|
|
-o:build/nbt src/nbt.nim
|
|
nim c \
|
|
--path:"$NIMBLE_DIR/pkgs2" \
|
|
--gc:orc \
|
|
-d:release \
|
|
--opt:speed \
|
|
--hints:off \
|
|
-o:build/nimbt-daemon src/nimbt_daemon.nim
|
|
}
|
|
|
|
package() {
|
|
cd "$srcdir/$pkgname"
|
|
install -Dm755 build/nbt "$pkgdir/usr/bin/nbt"
|
|
install -Dm755 build/nimbt-daemon "$pkgdir/usr/bin/nimbt-daemon"
|
|
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
|
|
install -Dm644 PKGBUILD "$pkgdir/usr/share/doc/$pkgname/PKGBUILD"
|
|
|
|
install -Dm644 -t "$pkgdir/usr/lib/systemd/user" nimbt-daemon.service
|
|
}
|