db-move: moved webkitgtk-6.0 from [testing] to [extra] (x86_64)
[arch-packages.git] / gnome-remote-desktop / trunk / PKGBUILD
blobbc3e5b61639eee7c2d61abaf3499c053b7de3f0a
1 # Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
2 # Contributor: Fabian Bornschein <fabiscafe-cat-mailbox-dog-org>
4 pkgname=gnome-remote-desktop
5 pkgver=44.1
6 pkgrel=1
7 pkgdesc="GNOME Remote Desktop server"
8 url="https://wiki.gnome.org/Projects/Mutter/RemoteDesktop"
9 arch=(x86_64)
10 license=(GPL2)
11 depends=(
12   cairo
13   dconf
14   freerdp
15   fuse3
16   glib2
17   libdrm
18   libepoxy
19   libfdk-aac
20   libnotify
21   libsecret
22   libvncserver
23   libxkbcommon
24   pipewire
25   systemd
26   tpm2-tss
28 makedepends=(
29   asciidoc
30   ffnvcodec-headers
31   git
32   meson
34 checkdepends=(
35   mutter
36   python-dbus
37   python-gobject
38   wireplumber
40 groups=(gnome)
41 _commit=66e0fa21c87f82d7aaf71846dc408fb832d43146  # tags/44.1^0
42 source=("git+https://gitlab.gnome.org/GNOME/gnome-remote-desktop.git#commit=$_commit")
43 b2sums=('SKIP')
45 pkgver() {
46   cd $pkgname
47   git describe --tags | sed 's/[^-]*-g/r&/;s/-/+/g'
50 prepare() {
51   cd $pkgname
54 build() {
55   local meson_options=(
56     -D vnc=true
57   )
59   arch-meson $pkgname build "${meson_options[@]}"
60   meson compile -C build
63 _check() (
64   export XDG_CONFIG_HOME="$PWD/config-dir" XDG_RUNTIME_DIR="$PWD/runtime-dir"
65   mkdir -p -m 700 "$XDG_CONFIG_HOME" "$XDG_RUNTIME_DIR"
67   export GSETTINGS_SCHEMA_DIR="$PWD/build/src" GSETTINGS_BACKEND=keyfile
68   glib-compile-schemas "$GSETTINGS_SCHEMA_DIR"
70   openssl req -new -newkey rsa:4096 -days 720 -nodes -x509 \
71     -subj /C=DE/ST=NONE/L=NONE/O=GNOME/CN=gnome.org \
72     -keyout tls.key -out tls.crt
74   gsettings set org.gnome.desktop.remote-desktop.rdp tls-cert "$PWD/tls.crt"
75   gsettings set org.gnome.desktop.remote-desktop.rdp tls-key "$PWD/tls.key"
76   gsettings set org.gnome.desktop.remote-desktop.rdp screen-share-mode extend
77   gsettings set org.gnome.desktop.remote-desktop.rdp enable true
78   gsettings set org.gnome.desktop.remote-desktop.vnc enable true
80   pipewire &
81   _p1=$!
83   wireplumber &
84   _p2=$!
86   trap "kill $_p1 $_p2; wait" EXIT
88   export TCTI=tabrmd:bus_type=session
90   meson test -C build --print-errorlogs -t 3
93 check() {
94   dbus-run-session bash -c "$(declare -f _check); _check"
97 package() {
98   meson install -C build --destdir "$pkgdir"
101 # vim:set sw=2 sts=-1 et: