- bundle: move a binary and its companion files into their own folder, picking the main executable with --main, zenity or kdialog - relink: point an entry at a different executable - repair: follow AppImages that were renamed or replaced by an update, matched by update info, embedded desktop id or version-stripped name Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
37 lines
1016 B
Bash
37 lines
1016 B
Bash
pkgname=ratbin
|
|
pkgver=0.1.0
|
|
pkgrel=1
|
|
pkgdesc="Integrate AppImages, binaries and scripts into the application menu via the Thunar context menu"
|
|
arch=('x86_64')
|
|
license=('unknown')
|
|
depends=('gcc-libs' 'glibc')
|
|
makedepends=('cargo')
|
|
optdepends=(
|
|
'kitty: terminal used by the Ratbin menu entry'
|
|
'thunar: context menu integration'
|
|
'desktop-file-utils: refresh the menu cache after changes'
|
|
'libnotify: notifications from context menu actions'
|
|
'zenity: choose the main binary when a bundle has several executables'
|
|
)
|
|
options=('!lto')
|
|
|
|
_root="$startdir/../.."
|
|
|
|
prepare() {
|
|
cd "$_root"
|
|
export RUSTUP_TOOLCHAIN=stable
|
|
cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')"
|
|
}
|
|
|
|
build() {
|
|
cd "$_root"
|
|
export RUSTUP_TOOLCHAIN=stable
|
|
export CARGO_TARGET_DIR="$srcdir/target"
|
|
cargo build --frozen --release
|
|
}
|
|
|
|
package() {
|
|
install -Dm755 "$srcdir/target/release/ratbin" "$pkgdir/usr/bin/ratbin"
|
|
install -Dm644 "$_root/assets/ratbin.desktop" "$pkgdir/usr/share/applications/ratbin.desktop"
|
|
}
|