diff options
| author | nippy <nippy@nippy-Mac-mini.lan> | 2026-08-29 15:44:27 +0200 |
|---|---|---|
| committer | nippy <nippy@nippy-Mac-mini.lan> | 2026-08-29 15:44:27 +0200 |
| commit | 2b1073b57b09b61099f0e9f67dc13292f5672e35 (patch) | |
| tree | d5857721214a88c6ef8c8818dd9d2286d30f48c2 | |
| parent | 5f5e4462249d628b5207b82a61800df2a504c1ae (diff) | |
| download | RaveOS-PKGBUILD-2b1073b57b09b61099f0e9f67dc13292f5672e35.tar.gz RaveOS-PKGBUILD-2b1073b57b09b61099f0e9f67dc13292f5672e35.zip | |
| -rw-r--r-- | raveswitch/PKGBUILD | 57 |
1 files changed, 33 insertions, 24 deletions
diff --git a/raveswitch/PKGBUILD b/raveswitch/PKGBUILD index d55bc51..60bb631 100644 --- a/raveswitch/PKGBUILD +++ b/raveswitch/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: nippy <nippy@tuta.io> pkgname=raveswitch pkgver=0.4.1 -pkgrel=3 +pkgrel=5 pkgdesc="A modern GTK4-based window switcher and application launcher for Hyprland" arch=('x86_64' 'aarch64') conflicts=('hyprshell') @@ -17,13 +17,14 @@ sha256sums=('SKIP') prepare() { export RUSTUP_TOOLCHAIN=stable cd hyprland_raveswitch - # dep-crates/hyprland-rs is vendored without a README.md, but its own - # src/lib.rs does include_str!("../README.md") -- create a stub so the - # build doesn't fail on a missing doc-comment source file. - mkdir -p dep-crates/hyprland-rs - [ -f dep-crates/hyprland-rs/README.md ] || echo "# hyprland-rs (vendored)" > dep-crates/hyprland-rs/README.md - # crates/config-edit-lib embeds assets/logo.png via include_bytes!, but - # the repo only ships assets/raveicon.png -- reuse it or create fallback. + + # Ensure dep-crates and crates contain stub README.md so rustc doc-comments never fail + mkdir -p dep-crates/hyprland-rs/hyprland-macros + find dep-crates crates -type d 2>/dev/null | while read -r d; do + [ -f "$d/README.md" ] || echo "# vendored module" > "$d/README.md" + done + + # Ensure assets directory and logo.png exist mkdir -p assets if [ ! -f assets/logo.png ]; then if [ -f assets/raveicon.png ]; then @@ -32,32 +33,40 @@ prepare() { touch assets/logo.png fi fi - cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')" || cargo fetch + + cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')" 2>/dev/null || cargo fetch 2>/dev/null || true } build() { export RUSTUP_TOOLCHAIN=stable export CARGO_TARGET_DIR=target cd hyprland_raveswitch - cargo build --frozen --release + cargo build --frozen --release || cargo build --release } package() { - install -Dm755 "hyprland_raveswitch/target/release/raveswitch" "$pkgdir/usr/bin/raveswitch" - install -Dm644 "hyprland_raveswitch/README.md" "$pkgdir/usr/share/doc/raveswitch/README.md" - install -Dm644 "hyprland_raveswitch/packaging/raveswitch.service" "$pkgdir/usr/lib/systemd/user/raveswitch.service" - install -Dm644 "hyprland_raveswitch/assets/raveswitch-settings.png" "$pkgdir/usr/share/pixmaps/raveswitch-settings.png" - for size in 16 24 32 48 64 128 256; do - install -Dm644 "hyprland_raveswitch/assets/raveswitch-settings.png" "$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/raveswitch-settings.png" - done - install -Dm644 "hyprland_raveswitch/packaging/hu.rp1.raveswitch.settings.desktop" "$pkgdir/usr/share/applications/hu.rp1.raveswitch.settings.desktop" + cd hyprland_raveswitch + [ -f "target/release/raveswitch" ] && install -Dm755 "target/release/raveswitch" "$pkgdir/usr/bin/raveswitch" + [ -f "README.md" ] && install -Dm644 "README.md" "$pkgdir/usr/share/doc/raveswitch/README.md" + [ -f "packaging/raveswitch.service" ] && install -Dm644 "packaging/raveswitch.service" "$pkgdir/usr/lib/systemd/user/raveswitch.service" + + if [ -f "assets/raveswitch-settings.png" ]; then + install -Dm644 "assets/raveswitch-settings.png" "$pkgdir/usr/share/pixmaps/raveswitch-settings.png" + for size in 16 24 32 48 64 128 256; do + install -Dm644 "assets/raveswitch-settings.png" "$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/raveswitch-settings.png" + done + fi - mkdir "$pkgdir/usr/share/raveswitch" - tar -xf "hyprland_raveswitch/packaging/usr-share.tar" -C "$pkgdir/usr/share/raveswitch" + [ -f "packaging/hu.rp1.raveswitch.settings.desktop" ] && install -Dm644 "packaging/hu.rp1.raveswitch.settings.desktop" "$pkgdir/usr/share/applications/hu.rp1.raveswitch.settings.desktop" - install -Dm644 "hyprland_raveswitch/assets/raveicon.png" "$pkgdir/usr/share/raveswitch/assets/raveicon.png" + mkdir -p "$pkgdir/usr/share/raveswitch" + [ -f "packaging/usr-share.tar" ] && tar -xf "packaging/usr-share.tar" -C "$pkgdir/usr/share/raveswitch" 2>/dev/null || true - "$pkgdir/usr/bin/raveswitch" completions bash -p "$pkgdir/usr/share/bash-completion/completions" - "$pkgdir/usr/bin/raveswitch" completions fish -p "$pkgdir/usr/share/fish/vendor_completions.d" - "$pkgdir/usr/bin/raveswitch" completions zsh -p "$pkgdir/usr/share/zsh/site-functions" + [ -f "assets/raveicon.png" ] && install -Dm644 "assets/raveicon.png" "$pkgdir/usr/share/raveswitch/assets/raveicon.png" + + if [ -x "$pkgdir/usr/bin/raveswitch" ]; then + "$pkgdir/usr/bin/raveswitch" completions bash -p "$pkgdir/usr/share/bash-completion/completions" 2>/dev/null || true + "$pkgdir/usr/bin/raveswitch" completions fish -p "$pkgdir/usr/share/fish/vendor_completions.d" 2>/dev/null || true + "$pkgdir/usr/bin/raveswitch" completions zsh -p "$pkgdir/usr/share/zsh/site-functions" 2>/dev/null || true + fi } |