Summary: Remote desktop server
Summary(pl.UTF-8): Serwer remote desktop
Name: xrdp
-Version: 0.6.1
-Release: 1.1
+Version: 0.9.7
+Release: 1
License: GPL
Group: X11/Applications/Networking
-Source0: http://download.sourceforge.net/xrdp/%{name}-v%{version}.tar.gz
-# Source0-md5: 26099c6588943262023607c1b4e774d8
+Source0: https://github.com/neutrinolabs/xrdp/releases/download/v%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: 5f8074a7bed8b45d43ef028748a86755
Source1: %{name}.init
Source2: %{name}.pamd
-Source3: %{name}.xrdp.ini
-Source4: %{name}.sesman.ini
-Source5: %{name}.README.TLD
-Source6: %{name}.README.TLD.pl
-Patch0: format-security.patch
-Patch1: build.patch
-Patch2: link.patch
-URL: http://xrdp.sourceforge.net/
+Source3: %{name}.README.TLD
+Source4: %{name}.README.TLD.pl
+Source5: startwm.sh
+Patch0: config.patch
+Patch1: quiet.patch
+URL: http://www.xrdp.org/
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: freerdp-devel
BuildRequires: openssl-devel
BuildRequires: pam-devel
BuildRequires: rpmbuild(macros) >= 1.268
+Requires: xrdp-libs = %{version}-%{release}
Requires(post,preun): /sbin/chkconfig
Requires: /usr/bin/Xvnc
Requires: rc-scripts
xrdp używa jako backendu Xvnc lub X11rdp.
+%package -n xrdp-libs
+Summary: xrdp shared libraries
+Summary(pl.UTF-8): Biblioteki współdzielone xrdp
+Group: Libraries
+Requires(post,postun): /sbin/ldconfig
+
+%description -n xrdp-libs
+xrdp shared libraries.
+
+%description -n xrdp-libs -l pl.UTF-8
+Biblioteki współdzielone xrdp.
+
+%package -n xrdp-devel
+Summary: Header files for xrdp libraries
+Summary(pl.UTF-8): Pliki nagłówkowe bibliotek xrdp
+Group: Development/Libraries
+Requires: xrdp-libs = %{version}-%{release}
+
+%description -n xrdp-devel
+Header files for xrdp libraries.
+
+%description -n xrdp-devel -l pl.UTF-8
+Pliki nagłówkowe bibliotek xrdp.
+
+%package -n xrdp-static
+Summary: Static xrdp libraries
+Summary(pl.UTF-8): Statyczne biblioteki xrdp
+License: LGPL v2.1
+Group: Development/Libraries
+Requires: xrdp-devel = %{version}-%{release}
+
+%description -n xrdp-static
+Static xrdp libraries.
+
+%description -n xrdp-static -l pl.UTF-8
+Statyczne biblioteki xrdp.
+
%prep
-%setup -q -n %{name}-v%{version}
+%setup -q
%patch0 -p1
%patch1 -p1
-%patch2 -p1
-install %{SOURCE5} README.TLD
-install %{SOURCE6} README.TLD.pl
-awk '{gsub("LIBDIR","%{_libdir}"); print}' < %{SOURCE3} > xrdp/xrdp.ini
+install %{SOURCE3} README.TLD
+install %{SOURCE4} README.TLD.pl
%build
%{__libtoolize}
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT%{_sysconfdir}/{%{name},pam.d,rc.d/init.d}
+install -d $RPM_BUILD_ROOT%{_sysconfdir}/{%{name},pam.d,rc.d/init.d,security}
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/xrdp
install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/pam.d/sesman
-install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/sesman.ini
+%{__rm} -f $RPM_BUILD_ROOT%{_sysconfdir}/pam.d/xrdp-sesman
+%{__ln} -s sesman $RPM_BUILD_ROOT%{_sysconfdir}/pam.d/xrdp-sesman
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/lib*.{a,la}
+%{__rm} -f $RPM_BUILD_ROOT%{_sysconfdir}/xrdp/startwm.sh
+install %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/xrdp/startwm.sh
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/lib*.{a,la,so}
+:> $RPM_BUILD_ROOT/etc/security/blacklist.sesman
%post
-/sbin/ldconfig
/sbin/chkconfig --add xrdp
%service xrdp restart "xrdp server"
-%postun -p /sbin/ldconfig
-
%preun
if [ "$1" = "0" ]; then
%service xrdp stop
/sbin/chkconfig --del xrdp
fi
-
%clean
rm -rf $RPM_BUILD_ROOT
+%post -n xrdp-libs -p /sbin/ldconfig
+%postun -n xrdp-libs -p /sbin/ldconfig
+
%files
%defattr(644,root,root,755)
%doc *.txt
%doc README.TLD
%doc README.TLD.pl
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/sesman
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.sesman
+%attr(640,root,root) /etc/pam.d/xrdp-sesman
%attr(754,root,root) /etc/rc.d/init.d/xrdp
%dir %{_sysconfdir}/%{name}
-%config(noreplace) %{_sysconfdir}/%{name}/xrdp.ini
+%dir %{_sysconfdir}/%{name}/pulse
+%config(noreplace) %{_sysconfdir}/%{name}/cert.pem
+%config(noreplace) %{_sysconfdir}/%{name}/key.pem
%config(noreplace) %{_sysconfdir}/%{name}/rsakeys.ini
%config(noreplace) %{_sysconfdir}/%{name}/sesman.ini
-%{_sysconfdir}/%{name}/km-0407.ini
-%{_sysconfdir}/%{name}/km-0409.ini
-%{_sysconfdir}/%{name}/km-040c.ini
-%{_sysconfdir}/%{name}/km-0410.ini
-%{_sysconfdir}/%{name}/km-0419.ini
-%{_sysconfdir}/%{name}/km-041d.ini
+%config(noreplace) %{_sysconfdir}/%{name}/xrdp.ini
+%config(noreplace) %{_sysconfdir}/%{name}/xrdp_keyboard.ini
+%{_sysconfdir}/%{name}/km-*.ini
+%config(noreplace) %{_sysconfdir}/%{name}/pulse/default.pa
+%attr(755,root,root) %{_sysconfdir}/xrdp/reconnectwm.sh
+%attr(755,root,root) %{_sysconfdir}/xrdp/startwm.sh
%attr(755,root,root) %{_bindir}/xrdp-dis
%attr(755,root,root) %{_bindir}/xrdp-genkeymap
%attr(755,root,root) %{_bindir}/xrdp-keygen
%attr(755,root,root) %{_bindir}/xrdp-sesadmin
%attr(755,root,root) %{_bindir}/xrdp-sesrun
-%attr(755,root,root) %{_bindir}/xrdp-sestest
%attr(755,root,root) %{_sbindir}/xrdp
%attr(755,root,root) %{_sbindir}/xrdp-chansrv
%attr(755,root,root) %{_sbindir}/xrdp-sesman
-%attr(755,root,root) %{_sbindir}/xrdp-sessvc
%dir %{_libdir}/xrdp
-%attr(755,root,root) %{_libdir}/xrdp/libcommon.so.*
-%attr(755,root,root) %{_libdir}/xrdp/libmc.so.*
-%attr(755,root,root) %{_libdir}/xrdp/librdp.so.*
-%attr(755,root,root) %{_libdir}/xrdp/libscp.so.*
-%attr(755,root,root) %{_libdir}/xrdp/libvnc.so.*
-%attr(755,root,root) %{_libdir}/xrdp/libxrdp.so.*
-%attr(755,root,root) %{_libdir}/xrdp/libxrdpfreerdp1.so.*
-%attr(755,root,root) %{_libdir}/xrdp/libxup.so.*
+%attr(755,root,root) %{_libdir}/xrdp/libcommon.so*
+%attr(755,root,root) %{_libdir}/xrdp/libmc.so*
+%attr(755,root,root) %{_libdir}/xrdp/libscp.so*
+%attr(755,root,root) %{_libdir}/xrdp/libvnc.so*
+%attr(755,root,root) %{_libdir}/xrdp/libxrdp.so*
+%attr(755,root,root) %{_libdir}/xrdp/libxrdpapi.so*
+%attr(755,root,root) %{_libdir}/xrdp/libxup.so*
%dir %{_datadir}/xrdp
%{_datadir}/xrdp/ad24b.bmp
%{_datadir}/xrdp/ad256.bmp
%{_datadir}/xrdp/sans-10.fv1
%{_datadir}/xrdp/xrdp24b.bmp
%{_datadir}/xrdp/xrdp256.bmp
+%{_datadir}/xrdp/xrdp_logo.bmp
+%{_mandir}/man1/xrdp-dis.1*
%{_mandir}/man5/sesman.ini.5*
%{_mandir}/man5/xrdp.ini.5*
+%{_mandir}/man8/xrdp-chansrv.8*
+%{_mandir}/man8/xrdp-genkeymap.8*
+%{_mandir}/man8/xrdp-keygen.8*
+%{_mandir}/man8/xrdp-sesadmin.8*
%{_mandir}/man8/xrdp-sesman.8*
%{_mandir}/man8/xrdp-sesrun.8*
%{_mandir}/man8/xrdp.8*
+
+%files libs
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libpainter.so.*.*
+%attr(755,root,root) %{_libdir}/librfxencode.so.*.*
+
+%files devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libpainter.so
+%attr(755,root,root) %{_libdir}/librfxencode.so
+%{_includedir}/painter.h
+%{_includedir}/rfxcodec_common.h
+%{_includedir}/rfxcodec_decode.h
+%{_includedir}/rfxcodec_encode.h
+%{_includedir}/xrdp_client_info.h
+%{_includedir}/xrdp_constants.h
+%{_includedir}/xrdp_rail.h
+%{_includedir}/xrdp_sockets.h
+%{_pkgconfigdir}/libpainter.pc
+%{_pkgconfigdir}/rfxcodec.pc
+%{_pkgconfigdir}/xrdp.pc
+
+%files static
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libpainter.a
+%attr(755,root,root) %{_libdir}/librfxencode.a