From 0f406c02ce7f56773cd9deaa6e339a2855750aa5 Mon Sep 17 00:00:00 2001 From: jhkaktus Date: Sun, 13 Sep 2026 15:08:45 +0200 Subject: [PATCH] add PKGBUILD --- cli/PKGBUILD | 25 +++++++++++++++++++++++++ daemon/PKGBUILD | 38 ++++++++++++++++++++++++++++++++++++++ gui-rs/PKGBUILD | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 111 insertions(+) create mode 100644 cli/PKGBUILD create mode 100644 daemon/PKGBUILD create mode 100644 gui-rs/PKGBUILD diff --git a/cli/PKGBUILD b/cli/PKGBUILD new file mode 100644 index 0000000..0de1418 --- /dev/null +++ b/cli/PKGBUILD @@ -0,0 +1,25 @@ +pkgname=sjnmusic-cli-git +pkgver=r11.f67e43c +pkgrel=1 +pkgdesc="CLI client for sjnmusicd HTTP daemon" +arch=('any') +url="https://github.com/serverjonas/SJNmusic" +license=('MIT') +depends=('python' 'sjnmusicd-git') +makedepends=('git') +provides=('sjnmusic-cli') +conflicts=('sjnmusic-cli') + +source=("git+https://github.com/serverjonas/SJNmusic.git") +sha256sums=('SKIP') + +pkgver() { + cd "$srcdir/SJNmusic" + printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" +} + +package() { + cd "$srcdir/SJNmusic" + + install -Dm755 "cli/sjnmusic" "$pkgdir/usr/bin/sjnmusic" +} diff --git a/daemon/PKGBUILD b/daemon/PKGBUILD new file mode 100644 index 0000000..3eff23c --- /dev/null +++ b/daemon/PKGBUILD @@ -0,0 +1,38 @@ +pkgname=sjnmusicd-git +pkgver=r8.7d80656 +pkgrel=1 +pkgdesc="SJNmusic daemon (Rust)" +arch=('x86_64') +url="https://github.com/serverjonas/SJNmusic" +license=('MIT') + +depends=('glibc' 'alsa-lib' 'yt-dlp') +makedepends=('git' 'rust' 'cargo') + +source=("git+https://github.com/serverjonas/SJNmusic.git") +sha256sums=('SKIP') + +pkgver() { + cd "$srcdir/SJNmusic" + printf "r%s.%s" \ + "$(git rev-list --count HEAD)" \ + "$(git rev-parse --short HEAD)" +} + +build() { + cd "$srcdir/SJNmusic/daemon" + cargo build --release +} + +package() { + cd "$srcdir/SJNmusic/daemon" + + install -Dm755 target/release/sjnmusicd \ + "$pkgdir/usr/bin/sjnmusicd" + + install -Dm644 systemd/sjnmusicd.service \ + "$pkgdir/usr/lib/systemd/user/sjnmusicd.service" + + install -Dm644 "$srcdir/SJNmusic/LICENSE" \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} diff --git a/gui-rs/PKGBUILD b/gui-rs/PKGBUILD new file mode 100644 index 0000000..9d6343b --- /dev/null +++ b/gui-rs/PKGBUILD @@ -0,0 +1,48 @@ +# Maintainer: +pkgname=sjnmusic-gui-git +pkgver=r29.6931d3a # placeholder; pkgver() computes the real value +pkgrel=1 +pkgdesc="SJNmusic GUI (Rust/egui remote control for sjnmusicd)" +arch=('x86_64') +url="https://github.com/serverjonas/SJNmusic" +license=('MIT') + +# ureq is built without its default TLS feature, so nothing links OpenSSL. +# tray-icon dlopens libappindicator3 at runtime; the package runs fine +# without it (the GUI logs a warning and skips the tray). +depends=('glibc' 'libglvnd' 'libxkbcommon' + 'libx11' 'libxcb' 'libxcursor' 'libxi' 'libxrandr' + 'wayland' 'fontconfig' 'freetype2') +optdepends=('sjnmusicd-git: the music daemon this GUI controls' + 'libappindicator-gtk3: system tray icon support') +makedepends=('git' 'rust' 'cargo' 'pkg-config' 'wayland' 'libx11') + +source=("git+https://github.com/serverjonas/SJNmusic.git") +sha256sums=('SKIP') + +pkgver() { + cd "$srcdir/SJNmusic" + printf "r%s.%s" \ + "$(git rev-list --count HEAD)" \ + "$(git rev-parse --short HEAD)" +} + +build() { + cd "$srcdir/SJNmusic/gui-rs" + cargo build --release --frozen +} + +check() { + cd "$srcdir/SJNmusic/gui-rs" + cargo test --release --frozen +} + +package() { + cd "$srcdir/SJNmusic/gui-rs" + + install -Dm755 target/release/sjnmusic-gui \ + "$pkgdir/usr/bin/sjnmusic-gui" + + install -Dm644 "$srcdir/SJNmusic/LICENSE" \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +}