PKGBUILD 3.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. # Maintainer: David P. <megver83@parabola.nu>
  2. # Maintainer (Arch): Felix Yan <felixonmars@archlinux.org>
  3. # Maintainer (Arch): Antonio Rojas <arojas@archlinux.org>
  4. # Contributor (Arch): Andrea Scarpino <andrea@archlinux.org>
  5. pkgname=sddm
  6. pkgver=0.19.0
  7. pkgrel=8
  8. pkgrel+=.nonsystemd1
  9. pkgdesc='QML based X11 and Wayland display manager'
  10. arch=(x86_64)
  11. arch+=(i686 armv7h)
  12. url='https://github.com/sddm/sddm'
  13. license=(GPL)
  14. depends=(qt5-declarative xorg-xauth xorg-server ttf-font)
  15. makedepends=(extra-cmake-modules python-docutils qt5-tools)
  16. backup=('usr/share/sddm/scripts/Xsetup'
  17. 'usr/share/sddm/scripts/Xstop'
  18. 'etc/pam.d/sddm'
  19. 'etc/pam.d/sddm-autologin'
  20. 'etc/pam.d/sddm-greeter')
  21. provides=(display-manager)
  22. source=($pkgname-$pkgver.tar.gz::"https://github.com/$pkgname/$pkgname/archive/v$pkgver.tar.gz"
  23. sddm.sysusers sddm.tmpfiles
  24. pam-faillock.patch
  25. sddm-fix-race-pre.patch::"https://github.com/sddm/sddm/commit/68cc9e31.patch"
  26. sddm-fix-race.patch::"https://patch-diff.githubusercontent.com/raw/sddm/sddm/pull/1324.patch"
  27. sddm-desktop-session.patch::"https://github.com/sddm/sddm/commit/5fd5ed27.patch"
  28. sddm-0.18.0-Xsession.patch
  29. sddm-0.19.0-pam-1.4-substack.patch
  30. sddm-0.19.0-Xserver_startup.patch
  31. sddm-fix-build.patch)
  32. sha256sums=('e76da1f13d5ad5e0179e3fec57543126044339405ef19c397e105e0807bd4e41'
  33. '9fce66f325d170c61caed57816f4bc72e9591df083e89da114a3bb16b0a0e60f'
  34. 'db625f2a3649d6d203e1e1b187a054d5c6263cadf7edd824774d8ace52219677'
  35. '441f441fc63c16c5dbd83411a305d88b17e50836c958677db881b9b6c13c668a'
  36. '33770560315b5369fd15baf5cd877f1191e642cefc6d2a1b4f0a7a80c109c025'
  37. 'bbe45a316140c145d7de67dbe95764e44a0787ad9c6bcd2f7e0694484bd79640'
  38. '83e4df6e1c0c23e7b38c1d523c236108eae177ba11c5d466825690845ef99fcf'
  39. 'dc2384e1b17cf1a217bff363c948494a74ec8d41c2a11dbd3cec0aefa880e845'
  40. '921674946b1d0f728382ebd4fde2566f16b80434ebce6e790c684f98819273bb'
  41. 'd46932e0a60cf5050aaea590ff5f3ab580d2118cbf746f55f78033f72f1bcb76'
  42. 'e9058d261138e637248b20243e3e81ff337ab669a4a25fbff387bf9558a682c6')
  43. options=(debug)
  44. prepare() {
  45. patch -d $pkgname-$pkgver -p1 < pam-faillock.patch # Port away from deprecated pam_tally2
  46. patch -d $pkgname-$pkgver -p1 < sddm-fix-race-pre.patch # Make next patch apply
  47. patch -d $pkgname-$pkgver -p1 < sddm-fix-race.patch # Fix race at startup
  48. patch -d $pkgname-$pkgver -p1 < sddm-desktop-session.patch # Fix desktop session name
  49. patch -d $pkgname-$pkgver -p1 < sddm-fix-build.patch # Fix build with Qt post 5.15.2
  50. }
  51. build() {
  52. cmake -B build -S $pkgname-$pkgver \
  53. -DCMAKE_INSTALL_PREFIX=/usr \
  54. -DCMAKE_INSTALL_LIBEXECDIR=/usr/lib/sddm \
  55. -DDBUS_CONFIG_DIR=/usr/share/dbus-1/system.d \
  56. -DDBUS_CONFIG_FILENAME=sddm_org.freedesktop.DisplayManager.conf \
  57. -DUSE_ELOGIND=yes \
  58. -DNO_SYSTEMD=yes \
  59. -DBUILD_MAN_PAGES=ON \
  60. -DUID_MAX=60513
  61. cmake --build build
  62. }
  63. package() {
  64. DESTDIR="$pkgdir" cmake --install build
  65. install -Dm644 sddm.sysusers "$pkgdir"/usr/lib/sysusers.d/sddm.conf
  66. install -Dm644 sddm.tmpfiles "$pkgdir"/usr/lib/tmpfiles.d/sddm.conf
  67. install -d "$pkgdir"/usr/lib/sddm/sddm.conf.d
  68. "$pkgdir"/usr/bin/sddm --example-config > "$pkgdir"/usr/lib/sddm/sddm.conf.d/default.conf
  69. # Don't set PATH in sddm.conf
  70. sed -r 's|DefaultPath=.*|DefaultPath=/usr/local/sbin:/usr/local/bin:/usr/bin|g' -i "$pkgdir"/usr/lib/sddm/sddm.conf.d/default.conf
  71. # Unset InputMethod https://github.com/sddm/sddm/issues/952
  72. sed -e "/^InputMethod/s/qtvirtualkeyboard//" -i "$pkgdir"/usr/lib/sddm/sddm.conf.d/default.conf
  73. }