mirror of
https://github.com/arabianq/pipewire-soundpad.git
synced 2026-04-28 06:21:23 +00:00
b2b83f5c32
* cargo fmt * deps: bump clap to 4.6.0 * deps: cargo update * Fix daemon autostart issue caused by sync pipewire retry loop (#43) (#44) At boot time, PipeWire takes some time to register the `pwsp-daemon` and `pwsp-virtual-mic` devices. Previously, the daemon's retry loop for `link_player_to_virtual_mic()` was synchronous and limited to 5 attempts (1.5 seconds total). This caused systemd autostarts to fail with a code 1 if the devices were not yet available. This change replaces the synchronous wait with an asynchronous `tokio::spawn` task. It will retry the link attempt up to 60 times with a 1-second delay without blocking the startup of the rest of the daemon. This prevents it from exiting abruptly during autostart. Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> * deps: bump egui & eframe version to 0.34.1 * feat: replaced App::update with new App::logic and App::ui * deps: bump egui_material_icons to 0.6.0 * deps: bump egui_dnd to 0.15.0 * fix: use .codepoint for icons * refactor * refactor: replaced deprecated CentralPanel::show with CentralPanel::show_inside * refactor * change version to 1.6.3 * update rust toolchain in github actions * update freedesktop platform version to 25.08 for flaptak * update github actions for flatpak builds * add flatpak-builder installation inside actions * add flathub configuration to actions * add --user flag to flathub configuration * remove sudo from flatpak actions * Fix/dev flatpak actions 6082245116761610541 (#47) * remove sudo * remove steps --------- Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
48 lines
1.7 KiB
Bash
48 lines
1.7 KiB
Bash
# Maintainer: Alexander Tarasov <a.tevg@ya.ru>
|
|
pkgsubn=pwsp
|
|
pkgname=pwsp
|
|
pkgver=1.6.3
|
|
pkgrel=1
|
|
pkgdesc="Lets you play audio files through your microphone"
|
|
arch=('any')
|
|
url="https://github.com/arabianq/pipewire-soundpad"
|
|
license=('MIT')
|
|
makedepends=(clang rust cargo pipewire alsa-lib)
|
|
source=("$url/archive/refs/tags/v$pkgver.tar.gz")
|
|
sha256sums=('SKIP')
|
|
|
|
|
|
prepare() {
|
|
cd "${srcdir}/pipewire-soundpad-${pkgver}"
|
|
|
|
export CARGO_HOME="${srcdir}/${pkgname%}/.cargo" # Download all to src directory, not in ~/.cargo
|
|
|
|
cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')"
|
|
}
|
|
|
|
build() {
|
|
cd "${srcdir}/pipewire-soundpad-${pkgver}"
|
|
|
|
export CARGO_ENCODED_RUSTFLAGS="--remap-path-prefix=${srcdir}=/" # Prevent warning: 'Package contains reference to $srcdir'
|
|
[[ -n "${_sccache}" ]] && export RUSTC_WRAPPER=sccache # If $_sccache not empty, build using binary cache
|
|
|
|
export CARGO_HOME="${srcdir}/${pkgname%}/.cargo" # Use downloaded earlier from src directory, not from ~/.cargo
|
|
export CARGO_TARGET_DIR=target # Place the output in target relative to the current directory
|
|
|
|
cargo build --frozen --release
|
|
}
|
|
|
|
|
|
package() {
|
|
cd "${srcdir}/pipewire-soundpad-${pkgver}"
|
|
|
|
install -Dm755 "target/release/pwsp-cli" "${pkgdir}/usr/bin/pwsp-cli"
|
|
install -Dm755 "target/release/pwsp-daemon" "${pkgdir}/usr/bin/pwsp-daemon"
|
|
install -Dm755 "target/release/pwsp-gui" "${pkgdir}/usr/bin/pwsp-gui"
|
|
|
|
install -Dm644 "assets/pwsp-gui.desktop" "${pkgdir}/usr/share/applications/pwsp-gui.desktop"
|
|
install -Dm644 "assets/icon.png" "${pkgdir}/usr/share/icons/hicolor/256x256/apps/icon.png"
|
|
|
|
install -Dm644 "assets/pwsp-daemon.service" "${pkgdir}/usr/lib/systemd/user/pwsp-daemon.service"
|
|
}
|