Advertisement
Guest User

Untitled

a guest
May 19th, 2024
135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.34 KB | None | 0 0
  1. Working config for hyprland-git for Arch Linux
  2.  
  3. # Maintainer: FabioLolix
  4. # Maintainer: éclairevoyant
  5. # Contributor: ThatOneCalculator <kainoa at t1c dot dev>
  6.  
  7. pkgname=hyprland-git
  8. pkgver=0.38.0.r105.582d6233
  9. pkgrel=1
  10. pkgdesc="A dynamic tiling Wayland compositor based on wlroots that doesn't sacrifice on its looks."
  11. arch=(x86_64 aarch64)
  12. url="https://github.com/hyprwm/Hyprland"
  13. license=(BSD)
  14. depends=(
  15. cairo
  16. cpio
  17. gcc-libs
  18. glib2
  19. glibc
  20. glslang
  21. hyprlang
  22. hyprcursor
  23. libdisplay-info
  24. libdrm
  25. libglvnd
  26. libinput
  27. libliftoff
  28. libx11
  29. libxcb
  30. libxcomposite
  31. libxfixes
  32. libxkbcommon
  33. libxrender
  34. opengl-driver
  35. pango
  36. pixman
  37. polkit
  38. seatd
  39. systemd-libs
  40. tomlplusplus
  41. wayland
  42. wayland-protocols
  43. xcb-proto
  44. xcb-util
  45. xcb-util-errors
  46. xcb-util-keysyms
  47. xcb-util-renderutil
  48. xcb-util-wm
  49. xorg-xinput
  50. xorg-xwayland
  51. )
  52. depends+=(libdisplay-info.so)
  53. makedepends=(
  54. cmake
  55. gdb
  56. git
  57. hyprwayland-scanner-git
  58. jq
  59. meson
  60. ninja
  61. pkgconf
  62. xorgproto
  63. )
  64. provides=("hyprland=${pkgver%%.r*}")
  65. conflicts=(hyprland)
  66. source=(
  67. "git+https://github.com/hyprwm/Hyprland.git"
  68. "git+https://github.com/hyprwm/wlroots-hyprland.git"
  69. "git+https://github.com/hyprwm/hyprland-protocols.git"
  70. "git+https://github.com/canihavesomecoffee/udis86.git"
  71. "git+https://github.com/wolfpld/tracy.git"
  72. )
  73. b2sums=(
  74. 'SKIP'
  75. 'SKIP'
  76. 'SKIP'
  77. 'SKIP'
  78. 'SKIP'
  79. )
  80.  
  81. pick_mr() {
  82. git pull origin pull/$1/head --no-edit
  83. }
  84.  
  85. prepare() {
  86. cd Hyprland
  87. git submodule init
  88. git config submodule.subprojects/wlroots-hyprland.url "$srcdir/wlroots-hyprland"
  89. git config submodule.subprojects/hyprland-protocols.url "$srcdir/hyprland-protocols"
  90. git config submodule.subprojects/udis86.url "$srcdir/udis86"
  91. git config submodule.subprojects/tracy.url "$srcdir/tracy"
  92. git -c protocol.file.allow=always submodule update
  93.  
  94. if [[ -z "$(git config --get user.name)" ]]; then
  95. git config user.name local && git config user.email '<>' && git config commit.gpgsign false
  96. fi
  97. # Pick pull requests from github using `pick_mr <pull request number>`.
  98.  
  99. git -C subprojects/wlroots-hyprland reset --hard
  100. sed -E -i -e "s/(soversion = .*$)/soversion = 13032/g" subprojects/wlroots-hyprland/meson.build
  101. }
  102.  
  103. pkgver() {
  104. git -C Hyprland describe --long --tags | sed 's/^v//;s/\([^-]*-\)g/r\1/;s/-/./g'
  105. }
  106.  
  107. build() {
  108. cd Hyprland
  109.  
  110. meson setup build \
  111. --prefix /usr \
  112. --libexecdir lib \
  113. --sbindir bin \
  114. --buildtype release \
  115. --wrap-mode nodownload \
  116. -D b_lto=true \
  117. -D b_pie=true \
  118. -D default_library=shared \
  119. -D xwayland=enabled \
  120. -D systemd=enabled
  121.  
  122. meson compile -C build
  123. }
  124.  
  125. package() {
  126. cd Hyprland
  127.  
  128. meson install -C build \
  129. --destdir "$pkgdir" \
  130. --skip-subprojects hyprland-protocols
  131.  
  132. #mkdir "$pkgdir/usr/include/hyprland/wlroots"
  133. #mv "$pkgdir/usr/include/wlr" "$pkgdir/usr/include/hyprland/wlroots"
  134.  
  135. # resolve conflicts with system wlr
  136. rm -f "$pkgdir/usr/lib/libwlroots.so"
  137. rm -rf "$pkgdir/usr/lib/pkgconfig"
  138.  
  139. # FIXME: remove after xdg-desktop-portal-hyprland disowns hyprland-portals.conf
  140.  
  141. rm -rf "$pkgdir/usr/share/xdg-desktop-portal"
  142.  
  143. # license
  144. install -Dm0644 -t "$pkgdir/usr/share/licenses/${pkgname}" LICENSE
  145. }
  146. # vi: et ts=2 sw=2
  147.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement