summaryrefslogtreecommitdiff
path: root/hyprland-raveos/hyprland/PKGBUILD
blob: 04736e58c17cad0cdb15292d40b26c1823c6f28a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# Maintainer: Caleb Maclennan <caleb@alerque.com>
# Contributor: ThatOneCalculator <kainoa@t1c.dev>
# Contributor: Brenno Lemos <brenno@syndel.is>
# Contributor: Gabriel Fox <inbox@gabrielfox.dev>

pkgname=(hyprland hyprpm)
pkgver=0.56.2
pkgrel=10
pkgdesc='a highly customizable dynamic tiling Wayland compositor'
arch=(x86_64 aarch64)
url="https://github.com/hyprwm/${pkgname^}"
license=(BSD-3-Clause)
depends=(cairo # libcairo.so
         aquamarine libaquamarine.so
         libgcc # libgcc_s.so
         'libstdc++' # libstdc++.so
         glibc # libc.so libm.so
         glib2 libgio-2.0.so libgobject-2.0.so
         glslang # libglslang-default-resource-limits.so libglslang.so
         hyprcursor libhyprcursor.so
         hyprgraphics libhyprgraphics.so
         hyprland-guiutils
         hyprlang libhyprlang.so
         hyprutils libhyprutils.so
         hyprwire libhyprwire.so
         lcms2 liblcms2.so
         libdrm # libdrm.so
         libglvnd libEGL.so libGLESv2.so
         libinput # libinput.so
         libx11
         libxcb # libxcb-dri3.so libxcb-present.so libxcb-render.so libxcb-res.so libxcb-shm.so libxcb.so libxcb-xfixes.so libxcb-xinput.so
         libxcomposite # libxcb-composite.so
         libxcursor # libXcursor.so
         libxfixes
         libxkbcommon libxkbcommon.so
         libxrender
         lua # liblua.so
         mesa # libgbm.so
         muparser # libmuparser.so
         opengl-driver
         pango libpango-1.0.so libpangocairo-1.0.so
         pixman libpixman-1.so
         re2 libre2.so
         tomlplusplus libtomlplusplus.so
         util-linux-libs libuuid.so
         wayland libwayland-server.so
         wayland-protocols
         xcb-proto
         xcb-util
         xcb-util-errors # libxcb-errors.so
         xcb-util-image
         xcb-util-keysyms
         xcb-util-renderutil # libxcb-render-util.so 
         xcb-util-wm # libxcb-ewmh.so  libxcb-icccm.so 
         xorg-xwayland)
makedepends=(cmake
             glaze
             hyprland-protocols
             hyprwayland-scanner
             meson
             ninja
             xorgproto)
optdepends=('hyprpm: build and install plugins'
            'hyprshutdown: clean logout and shutdown helper'
            'xdg-desktop-portal-hyprland: xdg-desktop-portal backend for hyprland')
provides=(wayland-compositor)
_archive="${pkgname^}-$pkgver"
source=("$_archive.tar.gz::$url/releases/download/v$pkgver/source-v$pkgver.tar.gz")
sha256sums=('03ad3f5ef152ff44116ffd56fcf808486211ecabf4f0ba567108ee746ba5cd2e')

prepare() {
	ln -sf hyprland-source "$_archive"
	cd "$_archive"
	sed -i -e '/^release:/{n;s/-D/-DCMAKE_SKIP_RPATH=ON -D/}' Makefile
	sed -i -e '/find_package.glaze/s/7...<8 //' {.,hyprpm,start}/CMakeLists.txt
}

build() {
	cd "$_archive"
	make release PREFIX=/usr
}

package_hyprland() {
	cd "$_archive"
	make DESTDIR="$pkgdir" install
	rm -fv "$pkgdir/usr/include/hyprland/src/version.h.in"
	find $pkgdir -name '*hyprpm*' -delete
	install -Dm0644 -t "$pkgdir/usr/share/licenses/$pkgname/" LICENSE
}

package_hyprpm() {
	pkgdesc='Plugin manager for Hyprland'
	depends=(cmake
	         cpio
	         glaze
	         hyprland
	         hyprland-protocols
	         hyprwayland-scanner
	         meson)
	cd "$_archive"
	make DESTDIR="$pkgdir" install
	find $pkgdir -type f,l -not -name '*hyprpm*' -delete
	find $pkgdir -type d -empty -delete
	install -Dm0644 -t "$pkgdir/usr/share/licenses/$pkgname/" LICENSE
}