File PKGBUILD of Package peazip
pkgname=peazip
pkgver=10.6.1
pkgrel=1
pkgdesc='PeaZip file manager and archiver (binary release)'
url='https://github.com/peazip/PeaZip'
license=('LGPL-3.0-or-later')
arch=('x86_64')
depends=('7zip' 'brotli' 'hicolor-icon-theme' 'libx11' 'qt6pas' 'upx' 'zstd')
optdepends=('zpaq')
options=('!emptydirs')
provides=("pea" "peazip")
conflicts=("pea" "peazip")
source=("$url/releases/download/$pkgver/peazip-$pkgver.LINUX.Qt6-1.x86_64.rpm")
sha256sums=('748c9bbb7cf094ae30da17f2aac52e94f78821c1af88637bbcc51872676e3af6')
prepare() {
# Cleanup
cd usr/share/peazip
rm -r lang-wincontext
rm -r batch/{Windows,'macOS service menus',bat}
rm -r batch/freedesktop_integration/KDE-servicemenus/{KDE3*,KDE4*}
# Use system libraries instead of bundled
cd "$srcdir/usr/lib/peazip/res/bin"
mkdir -p upx
ln -sf /usr/bin/7z 7z/7z
ln -sf /usr/lib/7zip/7zCon.sfx 7z/7zCon.sfx
ln -sf /usr/bin/brotli brotli/brotli
ln -sf /usr/bin/upx upx/upx
ln -sf /usr/bin/zstd zstd/zstd
rm 7z/7z.sfx
chmod -x 7z/Codecs/*.so
# Detect zpaq
if pacman -Qi zpaq &> /dev/null; then
ln -sf /usr/bin/zpaq zpaq/zpaq
else
# Do nothing
:
fi
}
package() {
mkdir -p "$pkgdir/usr/"{bin,lib/peazip,share/licenses/peazip}
cd usr
install -Dm755 lib/peazip/{pea,peazip} -t "$pkgdir/usr/lib/peazip"
mv lib/peazip/res "$pkgdir/usr/lib/peazip"
cd share
install -Dm644 applications/peazip.desktop -t "$pkgdir/usr/share/applications"
install -Dm644 peazip/icons/*.png -t "$pkgdir/usr/share/icons/hicolor/256x256/apps"
cd peazip
rm -dr icons
install -Dm644 peazip_help.pdf -t "$pkgdir/usr/share/doc/peazip"
rm peazip_help.pdf
mv copying "$pkgdir/usr/share/licenses/peazip"
install -Dm644 readme/readme_Linux.txt "$pkgdir/usr/share/doc/peazip/readme.txt"
rm -dr readme
mv ../peazip "$pkgdir/usr/share"
ln -s /usr/lib/peazip/{pea,peazip} "$pkgdir/usr/bin"
}