You are not logged in.
Hi! I don't have experience creating PKGBUILDs but I've followed the instructions to create one and I'd like if you could please review it and maybe give me some feedback.
I have created two versions, one to download a tar and the other to build from a git repository.
_pkgname=xfce4-docklike-plugin
pkgname=xfce4-docklike-plugin-git
pkgver=r1070.3581066
pkgrel=1
pkgdesc="A modern, minimalist taskbar for Xfce"
arch=('x86_64')
url="https://gitlab.xfce.org/panel-plugins/xfce4-docklike-plugin"
license=('GPL3')
depends=('xfce4-panel')
makedepends=('meson' 'ninja' 'python-tqdm' 'git')
source=("git+$url.git")
provides=("$_pkgname")
options=('!debug')
sha256sums=('SKIP')
pkgver() {
cd "$srcdir/$_pkgname"
printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
}
build() {
arch-meson ${srcdir}/${_pkgname} build
meson compile -C build
}
package() {
meson install -C build --destdir "$pkgdir"
install -D -m644 "${srcdir}/${_pkgname}/COPYING" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}pkgname=xfce4-docklike-plugin
pkgver=0.5.0
pkgrel=1
pkgdesc="A modern, minimalist taskbar for Xfce"
arch=('x86_64')
url="https://gitlab.xfce.org/panel-plugins/xfce4-docklike-plugin"
license=('GPL3')
depends=('xfce4-panel')
makedepends=('meson' 'ninja' 'python-tqdm')
source=("$pkgname-$pkgver.tar.gz::$url/-/archive/$pkgname-$pkgver/$pkgname-$pkgname-$pkgver.tar.gz")
provides=("$pkgname")
options=('!debug')
sha256sums=('6e32a6c04306dd800cb40396d07dd957adeefd42633f8dd676b90acbf8bd29b0')
prepare() {
tar xvf ${pkgname}-${pkgver}.tar.gz
}
build() {
arch-meson ${srcdir}/${pkgname}-${pkgname}-${pkgver} build
meson compile -C build
}
package() {
meson install -C build --destdir "$pkgdir"
install -D -m644 "${srcdir}/${pkgname}-${pkgname}-${pkgver}/COPYING" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}Thank you!
Last edited by AnnS (2025-08-01 18:16:07)
ASUS ROG G15 AMD Advantage | AMD Ryzen 9 5900HX | 8GB DDR4-3200 | AMD Radeon RX 6800M 12GB GDDR6 |
Acer Aspire 7741G-6426 | Intel Core i5-480M 2.66GHz | 8GB RAM DDR3 1333MHz | 640GB HDD 5400RPM | AMD Radeon 6550M 1GB DDR3 |
Lenovo 3000 C200 | Intel Core 2 Duo T5500 1.66GHz | 2GB RAM DDR2 667MHz | 250GB HDD 5400RPM | Intel GMA 950 |
Offline
prepare() {
tar xvf ${pkgname}-${pkgver}.tar.gz
}makepkg knows how to extract many archives, no need to do that manually.
# Highly opinionated wrapper for Arch Linux packaging
some packagers (including me) disagree with the settings in arch-meson and refuse to use it.
one example
--auto-features enabledThat tells the software being build to enable everything it can detect. Whether enabled stuff will be useful/needed is NOT tested .
This can lead to longer buildtimes, larger packages, more chances to break etc.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
Thnak you for the feedback! I'll make the changes.
ASUS ROG G15 AMD Advantage | AMD Ryzen 9 5900HX | 8GB DDR4-3200 | AMD Radeon RX 6800M 12GB GDDR6 |
Acer Aspire 7741G-6426 | Intel Core i5-480M 2.66GHz | 8GB RAM DDR3 1333MHz | 640GB HDD 5400RPM | AMD Radeon 6550M 1GB DDR3 |
Lenovo 3000 C200 | Intel Core 2 Duo T5500 1.66GHz | 2GB RAM DDR2 667MHz | 250GB HDD 5400RPM | Intel GMA 950 |
Offline