PKGBUILD RawHistoryFolder
1# Built by `make pkg` at the repo root, from `git archive HEAD`.
2pkgname=neferwl
3pkgver=0.0.0
4pkgrel=1
5pkgdesc='A Wayland compositor that spends its frames on your apps, not on itself'
6arch=('x86_64')
7url='https://github.com/bnema/neferwl'
8license=('AGPL-3.0-only')
9# Loaded at runtime (purego, no cgo): not seen by makepkg's library scan.
10depends=('glibc' 'libinput' 'libxkbcommon' 'seatd' 'systemd-libs' 'vulkan-icd-loader'
11 'vulkan-driver' 'wayland' 'dbus' 'libcap')
12makedepends=('go')
13optdepends=('xwayland-satellite>=0.7: X11 apps'
14 'foot: default terminal'
15 'fuzzel: launcher'
16 'xdg-desktop-portal-gtk: file pickers and settings for apps'
17 'xdg-desktop-portal-gnome: screen sharing and screenshots through the portal'
18 'pipewire: screen sharing streams'
19 'nefercap: screenshots and screen recording')
20install=neferwl.install
21source=("$pkgname-$pkgver.tar.gz")
22sha256sums=('SKIP')
23
24prepare() {
25 cd "$pkgname-$pkgver"
26 export GOPATH="$srcdir/gopath" GOFLAGS='-mod=readonly -modcacherw' GOWORK=off GOTOOLCHAIN=local
27 go mod download
28 go mod vendor
29}
30
31build() {
32 cd "$pkgname-$pkgver"
33 export CGO_ENABLED=0 GOFLAGS='-mod=vendor -trimpath -buildvcs=false -buildmode=pie' GOPROXY=off GOWORK=off GOTOOLCHAIN=local
34 go build -ldflags "-X main.version=$pkgver" -o neferwl ./cmd/neferwl
35}
36
37check() {
38 cd "$pkgname-$pkgver"
39 ./neferwl version
40 ./neferwl validate-config examples/config
41}
42
43package() {
44 cd "$pkgname-$pkgver"
45 install -Dm755 neferwl "$pkgdir/usr/bin/neferwl"
46 install -Dm755 packaging/neferwl-session "$pkgdir/usr/bin/neferwl-session"
47 install -Dm644 packaging/neferwl.service "$pkgdir/usr/lib/systemd/user/neferwl.service"
48 install -Dm644 packaging/neferwl-shutdown.target "$pkgdir/usr/lib/systemd/user/neferwl-shutdown.target"
49 install -Dm644 packaging/neferwl.desktop "$pkgdir/usr/share/wayland-sessions/neferwl.desktop"
50 install -Dm644 packaging/neferwl-portals.conf "$pkgdir/usr/share/xdg-desktop-portal/neferwl-portals.conf"
51 install -Dm644 examples/config "$pkgdir/usr/share/doc/neferwl/config.example"
52 install -Dm644 examples/capture-allow "$pkgdir/usr/share/doc/neferwl/capture-allow.example"
53 install -Dm644 README.md "$pkgdir/usr/share/doc/neferwl/README.md"
54 install -Dm644 LICENSE "$pkgdir/usr/share/licenses/neferwl/LICENSE"
55}