blob: 662cb784a88ef22b8b152c28e429c18878d96f6a (
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
|
# Maintainer: AndyRTR <andyrtr@archlinux.org>
# Contributor: Gerhard Brauer <gerbra@archlinux.de>
# Contributor: Richard Murri <admin@richardmurri.com>
# Contributor: Markus Opitz <mastero23 at gmail dot com>
# Contributor: Milan Knížek <knizek@volny.cz>
pkgname=x2goserver
pkgver=4.1.0.6
pkgrel=1
pkgdesc="Open source graphical Remote Desktop and terminal server based on NX technology"
arch=('x86_64')
url="https://www.x2go.org/"
license=('GPL2')
# https://code.x2go.org/gitweb?p=x2goserver.git;a=blob;f=x2goserver.spec
# from 4.0.1.20 changelog there could be new deps on bash, xkeyboard-config, perl-cwd-guard
depends=(
'openssh'
'nxagent' # FS#67024
# certain shell script hardcode bash
'bash'
# for x2goruncommand - for now
'bc'
# for ss in x2gogetfreeport
'iproute'
# for x2goshowblocks
'lsof'
# For killall in x2gosuspend-session
'psmisc'
# For x2godbadmin
'pwgen' # in community
# For printing, file-sharing
'sshfs'
# for /etc/sudoers.d
'sudo'
'which'
# For /etc/X11/Xresources
'xorg-xinit'
'inetutils' # FS#68276
'xorg-fonts-misc'
'xorg-xauth'
'xkeyboard-config'
'xorg-xwininfo' # FS#38558
'xorg-setxkbmap' # FS#53345
# for useradd/groupadd
'shadow'
# for filemanager bindings
'desktop-file-utils'
'shared-mime-info'
'xdg-utils'
# We need a database
'perl-dbd-sqlite'
'perl-capture-tiny'
'perl-config-simple'
'perl-file-basedir' # FS#38551
'perl-file-which' # FS#44125
'perl-switch'
'perl-try-tiny' # FS#58226
# 'perl-file-readbackwards' ?
'dbus'
)
#makedepends=('man2html' 'perl-extutils-makemaker' 'systemd')
makedepends=('man2html' 'perl-extutils-makemaker' 'systemd'
# only needed for file system paths
'sudo'
)
optdepends=('perl-dbd-pg: Postgres support')
#conflicts=('x2go-agent')
#replaces=('x2go-agent')
#provides=('x2go-agent' 'x2goagent')
options=('emptydirs')
install=x2goserver.install
backup=('etc/x2go/x2goserver.conf'
'etc/x2go/desktopsharing/settings'
# from old x2go-agent pkg now provided here
etc/x2go/{keystrokes.cfg,x2goagent.keyboard,x2goagent.options}
)
# no https due to invalid certificate
source=(https://code.x2go.org/releases/source/${pkgname}/${pkgname}-${pkgver}.tar.gz{,.asc}
tmpfiles.d
sysusers.d
reproducible-man-gzip.patch)
sha256sums=('9c585f683996f0670aad3b118a1d98783ec897ef32add9b4c9e4e63ecf7b7c24'
'SKIP'
'548d48925171aeca198494236cfba7232921a25a1c4c81f5d004a734d83d1350'
'04d429e8d8fe02c8078d75ba63ba57774274df877b2c6ec942621312b7bf9118'
'2d52a5ca28d5b65a9cc9bd8cdc74d030d7faddb6d727d2df520686934ea125fb')
validpgpkeys=('1AD23D1B8F087A35AB74BDE9F4A7678C9C6B0B2B') # X2go Git Administrator <git-admin@x2go.org>
prepare() {
cd ${pkgname}-${pkgver}
# -r option does not exist in Arch linux
# (However, html man pages do not get installed anyway...)
for Makefile in $(find . -type f -name Makefile); do
sed -i 's@(MAN2HTML_BIN) -r @(MAN2HTML_BIN) < @g' $Makefile
sed -i 's@ \$(MAN2HTML_SRC)/@ < \$(MAN2HTML_SRC)/@g' $Makefile
done
# fix some Makefile permission options
for Makefile in $(find . -type f -name Makefile); do
sed -i "s:-o root -g root ::g" $Makefile
done
# Do not ship xsession - Debian specific
sed -i -e '/xsession/s/^/#/' Makefile
# remove timestamp to solve reproducible build
patch -Np1 -i ../reproducible-man-gzip.patch
}
build() {
cd ${pkgname}-${pkgver}
make PREFIX=/usr SBINDIR=/usr/bin DESTDIR="$pkgdir" PERL_INSTALLDIRS=vendor
}
package() {
cd ${pkgname}-${pkgver}
make -j1 PREFIX=/usr SBINDIR=/usr/bin DESTDIR="$pkgdir" install
# systemd files
install -Dm 644 "$srcdir/${pkgname}-${pkgver}/x2goserver.service" "$pkgdir/usr/lib/systemd/system/x2goserver.service"
# overwrite upstream systemd tmofile "x /tmp/.x2go-*" with ours
cat ../tmpfiles.d >> "${pkgdir}"/usr/lib/tmpfiles.d/x2goserver.conf
install -Dm644 ../sysusers.d "${pkgdir}"/usr/lib/sysusers.d/x2goserver.conf
# load fuse module at system start
install -dm755 "$pkgdir"/usr/lib/modules-load.d
echo "fuse" > "$pkgdir"/usr/lib/modules-load.d/x2goserver.conf
install -dm 755 "${pkgdir}/usr/share/doc/${pkgname}"
install -m 644 "ChangeLog" "${pkgdir}/usr/share/doc/${pkgname}/"
# fix permission - see INSTALL file
chown root:111 "${pkgdir}"/usr/lib/x2go/libx2go-server-db-sqlite3-wrapper
chmod 2755 "${pkgdir}"/usr/lib/x2go/libx2go-server-db-sqlite3-wrapper
chown root:112 "${pkgdir}"/usr/bin/x2goprint
chmod 2755 "${pkgdir}"/usr/bin/x2goprint
chmod 750 "${pkgdir}"/etc/sudoers.d
chmod 0440 "${pkgdir}"/etc/sudoers.d/x2goserver
# Arch offer logcheck package - http://logcheck.org/
rm -r "${pkgdir}"/etc/logcheck
}
|