diff --git a/0001-Make-H.264-codec-optional-during-runtime.patch b/0001-Make-H.264-codec-optional-during-runtime.patch deleted file mode 100644 index fa129a8..0000000 --- a/0001-Make-H.264-codec-optional-during-runtime.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 24b8b4e5df644ba77c673c41b90cc48c4358aaa0 Mon Sep 17 00:00:00 2001 -From: Fabian Vogt -Date: Thu, 2 Dec 2021 15:50:08 +0100 -Subject: [PATCH] Make H.264 codec optional during runtime - -It's possible that FreeRDP was built against FFmpeg, but it doesn't support -H.264. In that case, just continue without H.264 support instead of failing -hard before even trying to connect. - -This is especially useful for Linux distributions which can't ship H.264 -support in FFmpeg out of the box (patent issues), but allow enabling H.264 -later by installing a version of FFmpeg which has it enabled. ---- - libfreerdp/core/codecs.c | 5 +---- - 1 file changed, 1 insertion(+), 4 deletions(-) - -Index: FreeRDP-2.4.1/libfreerdp/core/codecs.c -=================================================================== ---- FreeRDP-2.4.1.orig/libfreerdp/core/codecs.c -+++ FreeRDP-2.4.1/libfreerdp/core/codecs.c -@@ -106,10 +106,7 @@ BOOL freerdp_client_codecs_prepare(rdpCo - - if (!(codecs->h264 = h264_context_new(FALSE))) - { -- WLog_ERR(TAG, "Failed to create h264 codec context"); --#ifndef WITH_OPENH264_LOADING -- return FALSE; --#endif -+ WLog_WARN(TAG, "Failed to create h264 codec context"); - } - } - #endif diff --git a/FreeRDP-2.11.2.tar.gz b/FreeRDP-2.11.2.tar.gz deleted file mode 100644 index 1e73870..0000000 --- a/FreeRDP-2.11.2.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:674b5600bc2ae3e16e5b5a811c7d5b0daaff6198601ba278bd15b4cb9b281044 -size 7332202 diff --git a/FreeRDP-3.0.0.tar.gz b/FreeRDP-3.0.0.tar.gz new file mode 100644 index 0000000..a3ec251 --- /dev/null +++ b/FreeRDP-3.0.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3bd040876289d835a461252fda91b7c48b9252b1c4f231f96a07b229aca8a4d9 +size 8975101 diff --git a/freerdp-rpmlintrc b/freerdp-rpmlintrc index ae7b8b1..465e513 100644 --- a/freerdp-rpmlintrc +++ b/freerdp-rpmlintrc @@ -1 +1 @@ -addFilter("binary-or-shlib-calls-gethostbyname /usr/lib64/libwinpr2.so") +addFilter("binary-or-shlib-calls-gethostbyname /usr/lib64/libwinpr3.so") diff --git a/freerdp.changes b/freerdp.changes index 67f0461..ceda1db 100644 --- a/freerdp.changes +++ b/freerdp.changes @@ -1,3 +1,39 @@ +------------------------------------------------------------------- +Thu Dec 14 07:23:30 UTC 2023 - Paolo Stivanin + +- Update to 3.0.0: + * Support for AAD/AVD authentication + * Support for websocket transport + * Support smartcard authentication (TLS and NLA) + * Full smartcard emulation support (login with certificate + key) + * Rewritten proxy, new module API + * New reference client based on SDL2 (work in progress) + * Rewritten logging, now parsing issues are all writing to the log so + that issues with protocol incompatibilities can be easier analyzed + by just turning on logging + * Full OpenSSL 3 support + * Internal implementations for RC4, MD4 and MD5 (required for non critical + parts in RDP but not part of more recend SSL libraries) + * Updated RDP protocol support + * Improved xfreerdp remote app support + * Reworked internal state machine for both client and server implementations + * Server implementations can now make use of connect-time network autodetection + * Improved clipboard handling, now also support server-to-client file transfer + (currently xfreerdp only) + * EnhancedRemoteApp support: Utilizing the more modern standard allows remote + apps with less glitches and window shadows + * Added client- and server-side handling for RDSTLS + * Support for the graphics redirection channel + * Full changelongs can be found at the following links: + + https://github.com/FreeRDP/FreeRDP/releases/tag/3.0.0-beta1 + + https://github.com/FreeRDP/FreeRDP/releases/tag/3.0.0-beta2 + + https://github.com/FreeRDP/FreeRDP/releases/tag/3.0.0-beta3 + + https://github.com/FreeRDP/FreeRDP/releases/tag/3.0.0-beta4 + + https://github.com/FreeRDP/FreeRDP/releases/tag/3.0.0-rc0 + + https://github.com/FreeRDP/FreeRDP/releases/tag/3.0.0 +- Drop upstreamed 0001-Make-H.264-codec-optional-during-runtime.patch. +- Enable GSS again since gh#issues/4348 has been fixed. + ------------------------------------------------------------------- Thu Nov 16 08:59:58 UTC 2023 - Christophe Marin diff --git a/freerdp.spec b/freerdp.spec index 8a730ba..1f4152c 100644 --- a/freerdp.spec +++ b/freerdp.spec @@ -27,16 +27,16 @@ %endif %endif -# enable -DWITH_GSSAPI=ON again after #gh/FreeRDP/FreeRDP/4348 has been fixed -#global _with_gss 1 +%global _with_gss 1 -%define major_version 2 +%define major_version 3 +%define rdtk_sover 0 %define libfreerdp_package %{major_version}-%{major_version} %define uwac_version 0 %define uwac_package %{uwac_version}-%{uwac_version} Name: freerdp -Version: 2.11.2 +Version: 3.0.0 Release: 0 Summary: Remote Desktop Viewer Client License: Apache-2.0 @@ -44,17 +44,17 @@ Group: Productivity/Networking/Other URL: https://www.freerdp.com/ Source0: https://github.com/FreeRDP/FreeRDP/archive/%{version}.tar.gz#/FreeRDP-%{version}.tar.gz Source1: freerdp-rpmlintrc -# PATCH-FIX-UPSTREAM https://github.com/FreeRDP/FreeRDP/pull/7476 -Patch0: 0001-Make-H.264-codec-optional-during-runtime.patch BuildRequires: chrpath BuildRequires: cmake >= 2.8 BuildRequires: cups-devel BuildRequires: ed BuildRequires: fdupes +BuildRequires: fuse3-devel BuildRequires: gcc-c++ BuildRequires: hicolor-icon-theme BuildRequires: libgsm-devel BuildRequires: libjpeg-devel +BuildRequires: pkcs11-helper-devel BuildRequires: pkgconfig BuildRequires: xmlto BuildRequires: zlib-devel @@ -125,6 +125,18 @@ This package contains a proxy that allows to select specific features and channels allowed for all connections passing through. It allows monitoring of the running sessions. +%package -n %{name}-proxy-plugins +Summary: Plugins for the Security and Monitorig Proxy Server +Group: Productivity/Networking/Other +Requires: %{name}-proxy = %{version}-%{release} + +%description -n %{name}-proxy-plugins +This package contains the following plugins for the proxy server: +* bitmap-filter +* capture +* demo +* dyn-channel-dump + %package -n lib%{name}%{libfreerdp_package} Summary: Remote Desktop Viewer client library Group: System/Libraries @@ -142,6 +154,7 @@ libraries used by the client. Summary: Development Files for freerdp Group: Development/Libraries/C and C++ Requires: lib%{name}%{libfreerdp_package} = %{version}-%{release} +Requires: lib%{name}-server-proxy%{major_version} Requires: winpr-devel = %{version}-%{release} %description devel @@ -193,6 +206,36 @@ Provides: libuwac0-devel = %{version}-%{release} This package contains header files for developing applications that use the uwac library. +%package -n librdtk%{rdtk_sover} +Summary: FreeRDP Toolkit +Group: Development/Languages/C and C++ + +%description -n librdtk%{rdtk_sover} +This package contains the library for the Remote Desktop Toolkit. + +%package -n rdtk%{rdtk_sover}-devel +Summary: FreeRDP Toolkit development files +Group: Development/Languages/C and C++ +Requires: librdtk%{rdtk_sover} = %{version}-%{release} + +%description -n rdtk%{rdtk_sover}-devel +This package contains the development files for RDTK. + +%package -n lib%{name}-server-proxy%{major_version} +Summary: FreeRDP Server Proxy library +Group: Development/Languages/C and C++ + +%description -n lib%{name}-server-proxy%{major_version} +This package contains the FreeRDP Server Proxy library files. + +%package -n %{name}-server-proxy%{major_version}-devel +Summary: FreeRDP Server Proxy library development files +Group: Development/Languages/C and C++ +Requires: lib%{name}-server-proxy%{major_version} = %{version}-%{release} + +%description -n %{name}-server-proxy%{major_version}-devel +This package contains the FreeRDP server proxy development files. + %prep %autosetup -p1 -n FreeRDP-%{version} @@ -206,6 +249,8 @@ fi -DCMAKE_INSTALL_LIBDIR=%{_lib} \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DCMAKE_EXE_LINKER_FLAGS="-pie" \ + -DCMAKE_SKIP_RPATH=TRUE \ + -DCMAKE_SKIP_INSTALL_RPATH=TRUE \ -DWITH_ALSA=ON \ -DWITH_CAIRO=ON \ -DWITH_CUPS=ON \ @@ -230,6 +275,7 @@ fi -DWITH_SERVER_INTERFACE=ON \ -DWITH_SHADOW_X11=ON \ -DWITH_SHADOW_MAC=ON \ + -DWITH_SAMPLE=OFF \ -DWITH_SOXR=%{?_with_soxr:ON}%{?!_with_soxr:OFF} \ -DWITH_WAYLAND=ON \ -DWITH_X11=ON \ @@ -276,6 +322,10 @@ cd build %postun -n libwinpr%{libfreerdp_package} -p /sbin/ldconfig %post -n libuwac%{uwac_package} -p /sbin/ldconfig %postun -n libuwac%{uwac_package} -p /sbin/ldconfig +%post -n librdtk%{rdtk_sover} -p /sbin/ldconfig +%postun -n librdtk%{rdtk_sover} -p /sbin/ldconfig +%post -n lib%{name}-server-proxy%{major_version} -p /sbin/ldconfig +%postun -n lib%{name}-server-proxy%{major_version} -p /sbin/ldconfig %files %{_bindir}/x%{name} @@ -297,6 +347,14 @@ cd build %files proxy %{_bindir}/%{name}-proxy +%files -n %{name}-proxy-plugins +%dir %{_libdir}/%{name}%{major_version} +%dir %{_libdir}/%{name}%{major_version}/proxy +%{_libdir}/%{name}%{major_version}/proxy/proxy-bitmap-filter-plugin.so +%{_libdir}/%{name}%{major_version}/proxy/proxy-capture-plugin.so +%{_libdir}/%{name}%{major_version}/proxy/proxy-demo-plugin.so +%{_libdir}/%{name}%{major_version}/proxy/proxy-dyn-channel-dump-plugin.so + %files -n lib%{name}%{libfreerdp_package} %license LICENSE %{_libdir}/lib%{name}%{major_version}.so.* @@ -304,14 +362,22 @@ cd build %{_libdir}/lib%{name}-shadow%{major_version}.so.* %{_libdir}/lib%{name}-server%{major_version}.so.* %{_libdir}/lib%{name}-shadow-subsystem%{major_version}.so.* -%dir %{_libdir}/freerdp2 -%{_libdir}/freerdp2/*.so %files devel +%dir %{_libdir}/cmake/FreeRDP-Proxy3 +%dir %{_libdir}/cmake/WinPR-tools3 %{_libdir}/cmake/FreeRDP%{major_version} %{_libdir}/cmake/FreeRDP-Client%{major_version} %{_libdir}/cmake/FreeRDP-Server%{major_version} %{_libdir}/cmake/FreeRDP-Shadow%{major_version} +%{_libdir}/cmake/FreeRDP-Proxy%{major_version}/FreeRDP-ProxyConfig.cmake +%{_libdir}/cmake/FreeRDP-Proxy%{major_version}/FreeRDP-ProxyConfigVersion.cmake +%{_libdir}/cmake/FreeRDP-Proxy%{major_version}/FreeRDP-ProxyTargets-relwithdebinfo.cmake +%{_libdir}/cmake/FreeRDP-Proxy%{major_version}/FreeRDP-ProxyTargets.cmake +%{_libdir}/cmake/WinPR-tools%{major_version}/WinPR-toolsConfig.cmake +%{_libdir}/cmake/WinPR-tools%{major_version}/WinPR-toolsConfigVersion.cmake +%{_libdir}/cmake/WinPR-tools%{major_version}/WinPR-toolsTargets-relwithdebinfo.cmake +%{_libdir}/cmake/WinPR-tools%{major_version}/WinPR-toolsTargets.cmake %{_includedir}/%{name}%{major_version} %{_libdir}/lib%{name}*.so %{_libdir}/pkgconfig/%{name}%{major_version}.pc @@ -342,4 +408,30 @@ cd build %{_libdir}/libuwac%{uwac_version}.so %{_libdir}/pkgconfig/uwac%{uwac_version}.pc +%files -n librdtk%{rdtk_sover} +%{_libdir}/librdtk%{rdtk_sover}.so.* + +%files -n rdtk%{rdtk_sover}-devel +%dir %{_includedir}/rdtk0/ +%dir %{_includedir}/rdtk0/rdtk +%{_includedir}/rdtk0/rdtk/api.h +%{_includedir}/rdtk0/rdtk/build-config.h +%{_includedir}/rdtk0/rdtk/buildflags.h +%{_includedir}/rdtk0/rdtk/config.h +%{_includedir}/rdtk0/rdtk/rdtk.h +%{_includedir}/rdtk0/rdtk/version.h +%dir %{_libdir}/cmake/rdtk0 +%{_libdir}/cmake/rdtk0/rdtk-relwithdebinfo.cmake +%{_libdir}/cmake/rdtk0/rdtk.cmake +%{_libdir}/cmake/rdtk0/rdtkConfig.cmake +%{_libdir}/cmake/rdtk0/rdtkConfigVersion.cmake +%{_libdir}/pkgconfig/rdtk0.pc +%{_libdir}/librdtk0.so + +%files -n lib%{name}-server-proxy%{major_version} +%{_libdir}/libfreerdp-server-proxy%{major_version}.so.* + +%files -n %{name}-server-proxy%{major_version}-devel +%{_libdir}/pkgconfig/freerdp-server-proxy%{major_version}.pc + %changelog