1 |
luigiwalser |
861426 |
Summary: Open source remote desktop protocol (RDP) server |
2 |
|
|
Name: xrdp |
3 |
|
|
Epoch: 1 |
4 |
|
|
Version: 0.9.0 |
5 |
|
|
Release: 4%{?dist} |
6 |
|
|
License: GPLv2+ with exceptions |
7 |
|
|
Group: Applications/Internet |
8 |
|
|
URL: http://xrdp.sourceforge.net/ |
9 |
|
|
Source0: http://sourceforge.net/projects/xrdp/files/xrdp/%{version}/xrdp-%{version}.tar.gz |
10 |
|
|
Source1: xrdp-sesman.pamd |
11 |
|
|
Source2: xrdp.sysconfig |
12 |
|
|
Source3: xrdp.logrotate |
13 |
|
|
|
14 |
|
|
Patch0: xrdp-0.9.0-sesman.patch |
15 |
|
|
Patch1: xrdp-0.9.0-service.patch |
16 |
|
|
|
17 |
|
|
BuildRequires: pam-devel |
18 |
|
|
BuildRequires: openssl-devel |
19 |
|
|
BuildRequires: autoconf |
20 |
|
|
BuildRequires: automake |
21 |
|
|
BuildRequires: libtool |
22 |
|
|
Buildrequires: libX11-devel |
23 |
|
|
BuildRequires: libXfixes-devel |
24 |
|
|
BuildRequires: libXrandr-devel |
25 |
|
|
BuildRequires: systemd |
26 |
|
|
|
27 |
|
|
|
28 |
|
|
#vnc-server provides Xvnc (tigervnc-server in fedora) |
29 |
|
|
Requires: tigervnc-server-minimal |
30 |
|
|
|
31 |
|
|
Requires(post): systemd |
32 |
|
|
Requires(post): systemd-sysv |
33 |
|
|
Requires(preun): systemd |
34 |
|
|
Requires(postun): systemd |
35 |
|
|
|
36 |
|
|
|
37 |
|
|
%description |
38 |
|
|
The goal of this project is to provide a fully functional Linux terminal |
39 |
|
|
server, capable of accepting connections from rdesktop and Microsoft's own |
40 |
|
|
terminal server / remote desktop clients. |
41 |
|
|
|
42 |
|
|
%prep |
43 |
|
|
%setup -q -n %{name}-%{version} |
44 |
|
|
%patch0 -p1 -b .sesman |
45 |
|
|
%patch1 -p1 -b .service |
46 |
|
|
|
47 |
|
|
# never hardcode rpaths |
48 |
|
|
%{__sed} -i -e 's/^\(AM_CONDITIONAL(GOT_PREFIX,\).*$/\1 false)/' configure.ac |
49 |
|
|
|
50 |
|
|
# remove unused modules from xrdp login combobox |
51 |
|
|
%{__sed} -i -e '/\[xrdp1\]/,$d' xrdp/xrdp.ini |
52 |
|
|
|
53 |
|
|
echo " |
54 |
|
|
[xrdp1] |
55 |
|
|
name=sesman-Xvnc |
56 |
|
|
lib=libvnc.so |
57 |
|
|
username=ask |
58 |
|
|
password=ask |
59 |
|
|
ip=127.0.0.1 |
60 |
|
|
port=-1 |
61 |
|
|
delay_ms=2000 |
62 |
|
|
" >> xrdp/xrdp.ini |
63 |
|
|
|
64 |
|
|
#Low is 40 bit key and everything from client to server is encrypted. |
65 |
|
|
#Medium is 40 bit key, everything both ways is encrypted. |
66 |
|
|
#High is 128 bit key everything both ways is encrypted. |
67 |
|
|
|
68 |
|
|
# increase encryption to 128 bit's |
69 |
|
|
%{__sed} -i 's/crypt_level=low/crypt_level=high/g' xrdp/xrdp.ini |
70 |
|
|
|
71 |
|
|
# create 'bash -l' based startwm, to pick up PATH etc. |
72 |
|
|
echo '#!/bin/bash -l |
73 |
|
|
. %{_sysconfdir}/xrdp/startwm.sh' > sesman/startwm-bash.sh |
74 |
|
|
|
75 |
|
|
%build |
76 |
|
|
./bootstrap |
77 |
|
|
|
78 |
|
|
%configure |
79 |
|
|
%{__make} %{?_smp_mflags} |
80 |
|
|
|
81 |
|
|
%install |
82 |
|
|
%{__rm} -rf %{buildroot} |
83 |
|
|
%{__make} install DESTDIR=%{buildroot} |
84 |
|
|
|
85 |
|
|
#remove .la and .a files |
86 |
|
|
find %{buildroot} -name '*.a' -exec rm {} \; |
87 |
|
|
find %{buildroot} -name '*.la' -exec rm {} \; |
88 |
|
|
|
89 |
|
|
#install sesman pam config /etc/pam.d/xrdp-sesman |
90 |
|
|
%{__install} -Dp -m 644 %{SOURCE1} %{buildroot}%{_sysconfdir}/pam.d/xrdp-sesman |
91 |
|
|
|
92 |
|
|
#install xrdp sysconfig /etc/sysconfig/xrdp |
93 |
|
|
%{__install} -Dp -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/sysconfig/xrdp |
94 |
|
|
|
95 |
|
|
#install logrotate /etc/logrotate.d/xrdp |
96 |
|
|
%{__install} -Dp -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/logrotate.d/xrdp |
97 |
|
|
|
98 |
|
|
#install log file /var/log/xrdp-sesman.log |
99 |
|
|
%{__mkdir} -p %{buildroot}%{_localstatedir}/log/ |
100 |
|
|
touch %{buildroot}%{_localstatedir}/log/xrdp-sesman.log |
101 |
|
|
|
102 |
|
|
#install 'bash -l' startwm script |
103 |
|
|
%{__install} -Dp -m 755 sesman/startwm-bash.sh %{buildroot}%{_sysconfdir}/xrdp/startwm-bash.sh |
104 |
|
|
|
105 |
|
|
#rsakeys.ini |
106 |
|
|
touch %{buildroot}%{_sysconfdir}/xrdp/rsakeys.ini |
107 |
|
|
%{__chmod} 0600 %{buildroot}%{_sysconfdir}/xrdp/rsakeys.ini |
108 |
|
|
|
109 |
|
|
|
110 |
|
|
%post |
111 |
|
|
%systemd_post xrdp.service |
112 |
|
|
|
113 |
|
|
xrdp-keygen xrdp %{_sysconfdir}/xrdp/rsakeys.ini > /dev/null |
114 |
|
|
%{__chmod} 0600 %{_sysconfdir}/xrdp/rsakeys.ini |
115 |
|
|
|
116 |
|
|
%preun |
117 |
|
|
%systemd_preun xrdp.service |
118 |
|
|
|
119 |
|
|
%postun |
120 |
|
|
%systemd_postun_with_restart xrdp.service |
121 |
|
|
|
122 |
|
|
%triggerun -- xrdp < 0.6.0-1 |
123 |
|
|
systemd-sysv-convert --save xrdp >/dev/null 2>&1 ||: |
124 |
|
|
|
125 |
|
|
# If the package is allowed to autostart: |
126 |
|
|
systemctl preset xrdp.service >/dev/null 2>&1 ||: |
127 |
|
|
|
128 |
|
|
# Run these because the SysV package being removed won't do them |
129 |
|
|
/sbin/chkconfig --del xrdp >/dev/null 2>&1 || : |
130 |
|
|
if [ "`systemctl is-active xrdp.service`" = 'active' ]; then |
131 |
|
|
systemctl stop xrdp.service >/dev/null 2>&1 || : |
132 |
|
|
systemctl start xrdp.service >/dev/null 2>&1 || : |
133 |
|
|
fi |
134 |
|
|
|
135 |
|
|
|
136 |
|
|
%files |
137 |
|
|
%doc COPYING *.txt |
138 |
|
|
%dir %{_libdir}/xrdp |
139 |
|
|
%dir %{_sysconfdir}/xrdp |
140 |
|
|
%dir %{_sysconfdir}/xrdp/pulse |
141 |
|
|
%dir %{_datadir}/xrdp |
142 |
|
|
%config(noreplace) %{_sysconfdir}/xrdp/xrdp.ini |
143 |
|
|
%config(noreplace) %{_sysconfdir}/pam.d/xrdp-sesman |
144 |
|
|
%config(noreplace) %{_sysconfdir}/logrotate.d/xrdp |
145 |
|
|
%config(noreplace) %{_sysconfdir}/sysconfig/xrdp |
146 |
|
|
%config(noreplace) %{_sysconfdir}/xrdp/sesman.ini |
147 |
|
|
%{_sysconfdir}/xrdp/*.sh |
148 |
|
|
%{_sysconfdir}/xrdp/km*.ini |
149 |
|
|
%{_sysconfdir}/xrdp/xrdp_keyboard.ini |
150 |
|
|
%{_bindir}/xrdp-genkeymap |
151 |
|
|
%{_bindir}/xrdp-sesadmin |
152 |
|
|
%{_bindir}/xrdp-keygen |
153 |
|
|
%{_bindir}/xrdp-sesrun |
154 |
|
|
# %{_bindir}/xrdp-sestest |
155 |
|
|
%{_bindir}/xrdp-dis |
156 |
|
|
%{_sbindir}/xrdp-chansrv |
157 |
|
|
%{_sbindir}/xrdp |
158 |
|
|
%{_sbindir}/xrdp-sesman |
159 |
|
|
%{_sbindir}/xrdp-sessvc |
160 |
|
|
%{_datadir}/xrdp/ad256.bmp |
161 |
|
|
%{_datadir}/xrdp/cursor0.cur |
162 |
|
|
%{_datadir}/xrdp/cursor1.cur |
163 |
|
|
%{_datadir}/xrdp/xrdp256.bmp |
164 |
|
|
%{_datadir}/xrdp/sans-10.fv1 |
165 |
|
|
%{_datadir}/xrdp/ad24b.bmp |
166 |
|
|
%{_datadir}/xrdp/xrdp24b.bmp |
167 |
|
|
%{_datadir}/xrdp/xrdp_logo.bmp |
168 |
|
|
%{_mandir}/man5/* |
169 |
|
|
%{_mandir}/man8/* |
170 |
|
|
%{_mandir}/man1/* |
171 |
|
|
%{_libdir}/xrdp/lib*.so.* |
172 |
|
|
%{_libdir}/xrdp/libcommon.so |
173 |
|
|
%{_libdir}/xrdp/libmc.so |
174 |
|
|
%{_libdir}/xrdp/librdp.so |
175 |
|
|
%{_libdir}/xrdp/libscp.so |
176 |
|
|
%{_libdir}/xrdp/libvnc.so |
177 |
|
|
%{_libdir}/xrdp/libxrdp.so |
178 |
|
|
%{_libdir}/xrdp/libxup.so |
179 |
|
|
%{_libdir}/xrdp/libxrdpapi.so |
180 |
|
|
%{_sysconfdir}/xrdp/pulse/default.pa |
181 |
|
|
%{_unitdir}/xrdp-sesman.service |
182 |
|
|
%{_unitdir}/xrdp.service |
183 |
|
|
|
184 |
|
|
|
185 |
|
|
|
186 |
|
|
%ghost %{_localstatedir}/log/xrdp-sesman.log |
187 |
|
|
%attr(0600,root,root) %verify(not size md5 mtime) %{_sysconfdir}/xrdp/rsakeys.ini |
188 |
|
|
|