PKGBUILDs/extra/rclone/PKGBUILD
2023-11-29 17:44:03 -05:00

60 lines
2 KiB
Bash

# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Maintainer: Morten Linderud <foxboron@archlinux.org>
# ALARM: Lorenz Steinert <lsteinert@uraziel.de>
# - remove makedepends pandoc
# - remove rclone.1 MANUAL.html and MANUAL.txt targets from make in build()
pkgname=rclone
pkgver=1.65.0
pkgrel=1
pkgdesc="Sync files to and from Google Drive, S3, Swift, Cloudfiles, Dropbox and Google Cloud Storage"
arch=('x86_64')
url="https://github.com/rclone/rclone"
license=('MIT')
depends=('glibc')
optdepends=('fuse3: for rclone mount')
makedepends=('python' 'go' 'git' 'fuse3')
source=("$pkgname-$pkgver.tar.gz::https://github.com/rclone/rclone/archive/v$pkgver.tar.gz")
sha512sums=('ed0432a48d9016f8d6bb70ab852a6bb51216d9a3182fc8cea0b7c8ba1654ac555fc50b8cd189a12ec708c49c4ba6410157e0a08baf2459d81078c53cbc3fe213')
prepare() {
cd "rclone-$pkgver"
sed -i "1s/python$/&2/" bin/make_manual.py bin/make_backend_docs.py
}
build() {
cd "rclone-$pkgver"
export GOFLAGS="-buildmode=pie -trimpath"
export CGO_LDFLAGS="${LDFLAGS}"
export CGO_CFLAGS="${CFLAGS}"
export CGO_CPPFLAGS="${CPPFLAGS}"
PATH="/build/go/bin:$PATH" make TAG=v$pkgver rclone || true
PATH="/build/go/bin:$PATH" rclone genautocomplete bash rclone.bash_completion
PATH="/build/go/bin:$PATH" rclone genautocomplete zsh rclone.zsh_completion
}
check() {
cd "rclone-$pkgver"
PATH="/build/go/bin:$PATH" make TAG=v$pkgver test
}
package() {
cd "rclone-$pkgver"
install -Dm755 rclone "$pkgdir"/usr/bin/rclone
install -Dm644 rclone.bash_completion "$pkgdir"/usr/share/bash-completion/completions/rclone
install -Dm644 rclone.zsh_completion "$pkgdir"/usr/share/zsh/site-functions/_rclone
install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
install -Dm644 rclone.1 "$pkgdir"/usr/share/man/man1/rclone.1
install -d "$pkgdir"/usr/share/doc/$pkgname
install -t "$pkgdir"/usr/share/doc/$pkgname -m644 MANUAL.html MANUAL.txt
# Mount helper symlinks
ln -s /usr/bin/rclone "${pkgdir}"/usr/bin/mount.rclone
ln -s /usr/bin/rclone "${pkgdir}"/usr/bin/rclonefs
}