]> git.pld-linux.org Git - packages/xrdp.git/blobdiff - xrdp.spec
updated deps; enabled more features
[packages/xrdp.git] / xrdp.spec
index aab034639a6154dfcf6b93c34c37fc6caed8daaa..974893724daa3574ff23be78545a3632b00a0e9b 100644 (file)
--- a/xrdp.spec
+++ b/xrdp.spec
@@ -1,30 +1,56 @@
 #
+# TODO:
+#   - package systemd stuff
+#
 Summary:       Remote desktop server
 Summary(pl.UTF-8):     Serwer remote desktop
 Name:          xrdp
-Version:       0.4.1
-Release:       2
+Version:       0.9.14
+Release:       1
 License:       GPL
 Group:         X11/Applications/Networking
-Source0:       http://dl.sourceforge.net/xrdp/%{name}-%{version}.tar.gz
-# Source0-md5: 86a2afcb8d304d5003ecbbdbf46058c0
+Source0:       https://github.com/neutrinolabs/xrdp/releases/download/v%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: 6066c2d8d2bb0883f14ab2fafb968404
 Source1:       %{name}.init
 Source2:       %{name}.pamd
-Source3:       %{name}.xrdp.ini
-Source4:       %{name}.sesman.ini
-Source5:       %{name}.README.PLD
-Source6:       %{name}.README.PLD.pl
-Patch0:                %{name}-paths.patch
-Patch1:                %{name}-make.patch
-Patch2:                %{name}-signals.patch
-URL:           http://xrdp.sourceforge.net/
-BuildRequires: openssl-devel
+Source3:       %{name}.README.PLD
+Source4:       %{name}.README.PLD.pl
+Source5:       startwm.sh
+Patch0:                config.patch
+Patch1:                quiet.patch
+Patch2:                x32.patch
+URL:           http://www.xrdp.org/
+BuildRequires: autoconf >= 2.65
+BuildRequires: automake >= 1:1.7.2
+BuildRequires: fdk-aac-devel >= 0.1.0
+BuildRequires: lame-libs-devel
+BuildRequires: libfuse-devel >= 2.6
+BuildRequires: libjpeg-turbo-devel
+BuildRequires: libtool
+BuildRequires: openssl-devel >= 0.9.8
+BuildRequires: opus-devel
 BuildRequires: pam-devel
+BuildRequires: pixman-devel >= 0.1.0
+BuildRequires: pkgconfig
 BuildRequires: rpmbuild(macros) >= 1.268
+BuildRequires: systemd-units
+BuildRequires: xorg-lib-libX11-devel
+BuildRequires: xorg-lib-libXfixes-devel
+BuildRequires: xorg-lib-libXrandr-devel
+Requires:      xrdp-libs = %{version}-%{release}
 Requires(post,preun):  /sbin/chkconfig
+Requires(post,preun,postun):   systemd-units >= 38
+Requires:      /usr/bin/Xvnc
+Requires:      fdk-aac >= 0.1.0
+Requires:      libfuse >= 2.6
+Requires:      openssl >= 0.9.8
+Requires:      pixman >= 0.1.0
 Requires:      rc-scripts
-Requires:      tightvnc-server
+Requires:      systemd-units >= 38
 Requires:      xinitrc-ng
+Requires(postun):       /usr/sbin/groupdel
+Requires(pre):  /usr/bin/getgid
+Requires(pre):  /usr/sbin/groupadd
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -39,93 +65,206 @@ Xrdp uses Xvnc or X11rdp backends to manage the X session.
 
 %description -l pl.UTF-8
 xrdp jest serwerem protokołu Remote Desktop (rdp) dla systemów
-UNIXowych. Do xrdp można się łączyć zarówno programem rdesktop,
-jak i klientami protokołu rdp Microsoftu.
+UNIXowych. Do xrdp można się łączyć zarówno programem rdesktop, jak i
+klientami protokołu rdp Microsoftu.
 
 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
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
 
-install %{SOURCE5} README.PLD
-install %{SOURCE6} README.PLD.pl
-awk '{gsub("LIBDIR","%{_libdir}"); print}' < %{SOURCE3} > xrdp.ini
+install %{SOURCE3} README.PLD
+install %{SOURCE4} README.PLD.pl
 
 %build
-%{__make} \
-       CC="%{__cc}"
+%{__libtoolize}
+%{__aclocal}
+%{__autoconf}
+%{__autoheader}
+%{__automake}
+cd librfxcodec
+%{__libtoolize}
+%{__aclocal} -I m4
+%{__autoconf}
+%{__autoheader}
+%{__automake}
+cd ..
+%configure \
+       --enable-fdkaac \
+       --enable-fuse \
+       --enable-mp3lame \
+       --enable-opus \
+       --enable-pam-config=redhat \
+       --enable-pixman \
+       --enable-tjpeg
+%{__make} V=1
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_libdir}/xrdp,%{_sbindir},%{_docdir},%{_localstatedir}/run,%{_datadir}/%{name}} \
-       $RPM_BUILD_ROOT%{_mandir}/man{5,8} \
-       $RPM_BUILD_ROOT%{_sysconfdir}/{%{name},pam.d,rc.d/init.d} \
-       $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
+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
-install xrdp.ini $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/xrdp.ini
-install libxrdp/libxrdp.so $RPM_BUILD_ROOT%{_libdir}/libxrdp.so
-install rdp/librdp.so $RPM_BUILD_ROOT%{_libdir}/xrdp/librdp.so
-install sesman/sessvc $RPM_BUILD_ROOT%{_sbindir}/sessvc
-install sesman/sesman $RPM_BUILD_ROOT%{_sbindir}/sesman
-install sesman/startwm.sh $RPM_BUILD_ROOT%{_sbindir}/startwm.sh
-install sesman/libscp/libscp.so $RPM_BUILD_ROOT%{_libdir}/libscp.so
-install sesman/tools/sesrun $RPM_BUILD_ROOT%{_sbindir}/sesrun
-install sesman/tools/sestest $RPM_BUILD_ROOT%{_sbindir}/sestest
-install vnc/libvnc.so $RPM_BUILD_ROOT%{_libdir}/xrdp/libvnc.so
-install xrdp/xrdp $RPM_BUILD_ROOT%{_sbindir}/xrdp
-install xrdp/ad256.bmp $RPM_BUILD_ROOT%{_datadir}/%{name}/ad256.bmp
-install xrdp/xrdp256.bmp $RPM_BUILD_ROOT%{_datadir}/%{name}/xrdp256.bmp
-install xrdp/cursor0.cur $RPM_BUILD_ROOT%{_datadir}/%{name}/cursor0.cur
-install xrdp/cursor1.cur $RPM_BUILD_ROOT%{_datadir}/%{name}/cursor1.cur
-install xrdp/Tahoma-10.fv1 $RPM_BUILD_ROOT%{_datadir}/%{name}/Tahoma-10.fv1
-install xrdp/rsakeys.ini $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/rsakeys.ini
-install xup/libxup.so $RPM_BUILD_ROOT%{_libdir}/xrdp/libxup.so
-install docs/man/sesman.8 $RPM_BUILD_ROOT%{_mandir}/man8/sesman.8
-install docs/man/sesrun.8 $RPM_BUILD_ROOT%{_mandir}/man8/sesrun.8
-install docs/man/xrdp.8 $RPM_BUILD_ROOT%{_mandir}/man8/xrdp.8
-install docs/man/sesman.ini.5 $RPM_BUILD_ROOT%{_mandir}/man5/sesman.ini.5
-install docs/man/xrdp.ini.5 $RPM_BUILD_ROOT%{_mandir}/man5/xrdp.ini.5
+%{__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
 
-%post
-       /sbin/ldconfig
-       %service xrdp stop
-       /sbin/chkconfig --add xrdp
+:> $RPM_BUILD_ROOT/etc/security/blacklist.sesman
+
+%pre
+%groupadd -g 183 xrdp
 
-%postun -p /sbin/ldconfig
+%post
+/sbin/chkconfig --add xrdp
+%service xrdp restart "xrdp server"
+%systemd_post xrdp.service xrdp-sesman.service
 
 %preun
 if [ "$1" = "0" ]; then
        %service xrdp stop
        /sbin/chkconfig --del xrdp
 fi
+%systemd_preun xrdp.service xrdp-sesman.service
 
+%postun
+if [ "$1" = "0" ]; then
+       %groupremove xrdp
+fi
+%systemd_reload
 
 %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.PLD
 %doc README.PLD.pl
-%dir %{_sysconfdir}/%{name}
-%dir %{_localstatedir}/run
-%{_libdir}/libscp.so
-%{_libdir}/libxrdp.so
-%dir %{_libdir}/xrdp
-%{_libdir}/xrdp/*
-%dir %{_datadir}/xrdp
-%{_datadir}/xrdp/*
-%attr(755,root,root) %{_sbindir}/*
 %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
-%config(noreplace) %{_sysconfdir}/%{name}/xrdp.ini
+%dir %{_sysconfdir}/%{name}
+%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
-%{_mandir}/man8/*
-%{_mandir}/man5/*
+%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) %{_sbindir}/xrdp
+%attr(755,root,root) %{_sbindir}/xrdp-chansrv
+%attr(755,root,root) %{_sbindir}/xrdp-sesman
+%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/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*
+%{systemdunitdir}/xrdp.service
+%{systemdunitdir}/xrdp-sesman.service
+%dir %{_datadir}/xrdp
+%{_datadir}/xrdp/ad24b.bmp
+%{_datadir}/xrdp/ad256.bmp
+%{_datadir}/xrdp/cursor0.cur
+%{_datadir}/xrdp/cursor1.cur
+%{_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}/ms-*.h
+%{_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
This page took 0.818317 seconds and 4 git commands to generate.