Files
omarchy-pkgs/pkgbuilds/strata/PKGBUILD
T

92 lines
2.4 KiB
Bash

pkgname=strata
pkgver=0.8.0
pkgrel=2
pkgdesc='Fast, keyboard-first file manager for modern Linux desktops'
arch=('x86_64' 'aarch64')
url='https://github.com/lgse/strata'
license=('GPL-3.0-or-later')
depends=(
'bash'
'bubblewrap'
'cairo'
'ffmpeg'
'ffmpegthumbnailer'
'fontconfig'
'gcc-libs'
'gdk-pixbuf2'
'glib2'
'glibc'
'graphene'
'gst-libav'
'gst-plugins-good'
'gtk4'
'gtksourceview5'
'hicolor-icon-theme'
'pango'
'poppler-glib'
'util-linux'
'xdg-terminal-exec'
)
makedepends=('cargo' 'git' 'glib2-devel' 'pkgconf')
optdepends=(
'gvfs-smb: browse SMB network shares'
'imagemagick: additional camera RAW preview support'
'libraw: additional camera RAW preview support'
)
conflicts=('strata-git')
options=('!debug' '!lto')
source=("$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/v$pkgver.tar.gz")
sha256sums=('8a6179ad5673afd8036ff6640c1740f6fa676516a05346c180d67ef98c4a56f7')
prepare() {
cd "$pkgname-$pkgver"
local commit
if ! commit=$(git get-tar-commit-id < <(gzip -dc "$srcdir/$pkgname-$pkgver.tar.gz")) ||
[[ ! $commit =~ ^[0-9a-f]{40}$ ]]; then
printf 'Could not recover the release commit from the source archive\n' >&2
return 1
fi
printf '%s\n' "$commit" >.build-commit
cargo fetch --locked --target "$CARCH-unknown-linux-gnu"
}
build() {
cd "$pkgname-$pkgver"
export CARGO_TARGET_DIR=target
export STRATA_BUILD_COMMIT
STRATA_BUILD_COMMIT=$(<.build-commit)
export STRATA_RELEASE_TAG="v$pkgver"
export STRATA_BUILD_KIND=stable
cargo build --frozen --release
}
check() {
cd "$pkgname-$pkgver"
export CARGO_TARGET_DIR=target
export STRATA_BUILD_COMMIT
STRATA_BUILD_COMMIT=$(<.build-commit)
export STRATA_RELEASE_TAG="v$pkgver"
export STRATA_BUILD_KIND=stable
cargo test --frozen --release --all-targets --all-features
}
package() {
cd "$pkgname-$pkgver"
install -Dm755 target/release/strata "$pkgdir/usr/bin/strata"
install -Dm644 data/io.github.lgse.Strata.desktop \
"$pkgdir/usr/share/applications/io.github.lgse.Strata.desktop"
install -Dm644 data/icons/scalable/apps/io.github.lgse.Strata.svg \
"$pkgdir/usr/share/icons/hicolor/scalable/apps/io.github.lgse.Strata.svg"
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
install -Dm644 THIRD_PARTY_LICENSES.md \
"$pkgdir/usr/share/licenses/$pkgname/THIRD_PARTY_LICENSES.md"
install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
}