diff --git a/.gitignore b/.gitignore index 38cbe28..ffd5622 100644 --- a/.gitignore +++ b/.gitignore @@ -65,3 +65,9 @@ remmina-0.7.5.tar.gz /remmina-1.4.20.tar.gz /remmina-1.4.21.tar.gz /remmina-1.4.23.tar.gz +<<<<<<< HEAD +======= +/remmina-1.4.24.tar.gz +/remmina-1.4.25.tar.gz +/remmina-1.4.26.tar.gz +>>>>>>> rawhide diff --git a/remmina.spec b/remmina.spec index 41c6c75..6ea038b 100644 --- a/remmina.spec +++ b/remmina.spec @@ -1,26 +1,27 @@ -%global commit0 a03c1648a090458736434c77c0be00a7cf9cc44b +%global release_commit_hash fa11b6d1c1f20922b594cc2a8c204f9ea6592836 -Name: remmina -Version: 1.4.23 -Release: 2%{?dist} -Summary: Remote Desktop Client -License: GPLv2+ and MIT -URL: http://remmina.org +Name: remmina +Version: 1.4.26 +Release: 1%{?dist} +Summary: Remote Desktop Client +License: GPLv2+ and MIT +URL: https://remmina.org -Source0: https://gitlab.com/Remmina/Remmina/-/archive/v%{version}/Remmina-%{version}.tar.gz#/%{name}-%{version}.tar.gz +Source0: https://gitlab.com/Remmina/Remmina/-/archive/v%{version}/Remmina-%{version}.tar.gz#/%{name}-%{version}.tar.gz -%if 0%{?rhel} >= 7 -ExcludeArch: aarch64 +# Exclude el7 from building on aarch64. +%if 0%{?rhel} == 7 +ExcludeArch: aarch64 %endif # Cmake helper file to easy build plugins outside remmina source tree # See http://www.muflone.com/remmina-plugin-rdesktop/english/install.html which # use http://www.muflone.com/remmina-plugin-builder/ with remmina bundled source. # So we can't use it directly only as instructions. -Source1: pluginBuild-CMakeLists.txt +Source1: pluginBuild-CMakeLists.txt %if 0%{?fedora} || 0%{?rhel} >= 8 -BuildRequires: cmake >= 3.0.0 +BuildRequires: cmake %else BuildRequires: cmake3 %endif @@ -34,39 +35,44 @@ BuildRequires: kf5-kwallet-devel BuildRequires: libappstream-glib BuildRequires: libgcrypt-devel BuildRequires: libsodium-devel -# pyhoca-cli needed as build dep for x2go plugin to be built when actually -# only a runtime dep. Has a FIXME on it in upstream tarball. -BuildRequires: pyhoca-cli +BuildRequires: python3-devel +BuildRequires: xdg-utils +%if 0%{?fedora} || 0%{?rhel} <= 8 BuildRequires: pkgconfig(appindicator3-0.1) -BuildRequires: pkgconfig(avahi-ui) >= 0.6.30 -BuildRequires: pkgconfig(avahi-ui-gtk3) >= 0.6.30 +%endif +%if 0%{?fedora} || 0%{?rhel} <= 8 +BuildRequires: pkgconfig(avahi-ui) +BuildRequires: pkgconfig(avahi-ui-gtk3) +%endif BuildRequires: pkgconfig(freerdp2) BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(json-glib-1.0) BuildRequires: pkgconfig(libsecret-1) BuildRequires: pkgconfig(libsoup-2.4) -BuildRequires: pkgconfig(libssh) >= 0.6 +BuildRequires: pkgconfig(libssh) BuildRequires: pkgconfig(libvncserver) +%if 0%{?fedora} || 0%{?rhel} <= 8 BuildRequires: pkgconfig(spice-client-gtk-3.0) +%endif BuildRequires: pkgconfig(vte-2.91) BuildRequires: pkgconfig(webkit2gtk-4.0) BuildRequires: pkgconfig(xkbfile) -# We don't ship these remmina plugins any longer -Obsoletes: %{name}-plugins-nx < %{version}-%{release} -Obsoletes: %{name}-plugins-st < %{version}-%{release} -Obsoletes: %{name}-plugins-xdmcp < %{version}-%{release} +# We don't ship these remmina plugins any longer. +Obsoletes: %{name}-plugins-nx < %{version}-%{release} +Obsoletes: %{name}-plugins-st < %{version}-%{release} +Obsoletes: %{name}-plugins-xdmcp < %{version}-%{release} %if 0%{?fedora} || 0%{?rhel} >= 8 -Recommends: %{name}-plugins-exec -Recommends: %{name}-plugins-rdp -Recommends: %{name}-plugins-secret -Recommends: %{name}-plugins-vnc +Recommends: %{name}-plugins-exec +Recommends: %{name}-plugins-rdp +Recommends: %{name}-plugins-secret +Recommends: %{name}-plugins-vnc %else -Requires: %{name}-plugins-exec -Requires: %{name}-plugins-rdp -Requires: %{name}-plugins-secret -Requires: %{name}-plugins-vnc +Requires: %{name}-plugins-exec +Requires: %{name}-plugins-rdp +Requires: %{name}-plugins-secret +Requires: %{name}-plugins-vnc %endif %description @@ -75,26 +81,24 @@ system administrators and travelers, who need to work with lots of remote computers in front of either large monitors or tiny net-books. Remmina supports multiple network protocols in an integrated and consistent -user interface. Currently RDP, VNC, XDMCP and SSH are supported. +user interface. Currently RDP, VNC and SSH are supported. Please don't forget to install the plugins for the protocols you want to use. +%package devel +Summary: Development files for %{name} +Requires: %{name} = %{version}-%{release} +Requires: pkgconfig -%package devel -Summary: Development files for %{name} -Requires: %{name} = %{version}-%{release} -Requires: pkgconfig - -%description devel +%description devel The %{name}-devel package contains header files for developing plugins for %{name}. +%package plugins-exec +Summary: External execution plugin for Remmina Remote Desktop Client +Requires: %{name}%{?_isa} = %{version}-%{release} -%package plugins-exec -Summary: External execution plugin for Remmina Remote Desktop Client -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description plugins-exec +%description plugins-exec Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travelers, who need to work with lots of remote computers in front of either large monitors or tiny net-books. @@ -102,14 +106,13 @@ computers in front of either large monitors or tiny net-books. This package contains the plugin to execute external processes (commands or applications) from the Remmina window. +%package plugins-secret +Summary: Keyring integration for Remmina Remote Desktop Client +Requires: %{name}%{?_isa} = %{version}-%{release} +Obsoletes: %{name}-plugins-gnome < %{version}-%{release} +Provides: %{name}-plugins-gnome%{?_isa} = %{version}-%{release} -%package plugins-secret -Summary: Keyring integration for Remmina Remote Desktop Client -Requires: %{name}%{?_isa} = %{version}-%{release} -Obsoletes: %{name}-plugins-gnome < %{version}-%{release} -Provides: %{name}-plugins-gnome%{?_isa} = %{version}-%{release} - -%description plugins-secret +%description plugins-secret Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travelers, who need to work with lots of remote computers in front of either large monitors or tiny net-books. @@ -117,12 +120,11 @@ computers in front of either large monitors or tiny net-books. This package contains the plugin with keyring support for the Remmina remote desktop client. +%package plugins-rdp +Summary: RDP plugin for Remmina Remote Desktop Client +Requires: %{name}%{?_isa} = %{version}-%{release} -%package plugins-rdp -Summary: RDP plugin for Remmina Remote Desktop Client -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description plugins-rdp +%description plugins-rdp Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travelers, who need to work with lots of remote computers in front of either large monitors or tiny net-books. @@ -130,12 +132,11 @@ computers in front of either large monitors or tiny net-books. This package contains the Remote Desktop Protocol (RDP) plugin for the Remmina remote desktop client. +%package plugins-vnc +Summary: VNC plugin for Remmina Remote Desktop Client +Requires: %{name}%{?_isa} = %{version}-%{release} -%package plugins-vnc -Summary: VNC plugin for Remmina Remote Desktop Client -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description plugins-vnc +%description plugins-vnc Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travelers, who need to work with lots of remote computers in front of either large monitors or tiny net-books. @@ -143,25 +144,25 @@ computers in front of either large monitors or tiny net-books. This package contains the VNC plugin for the Remmina remote desktop client. +%if 0%{?fedora} || 0%{?rhel} <= 8 +%package plugins-spice +Summary: SPICE plugin for Remmina Remote Desktop Client +Requires: %{name}%{?_isa} = %{version}-%{release} -%package plugins-spice -Summary: SPICE plugin for Remmina Remote Desktop Client -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description plugins-spice +%description plugins-spice Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travelers, who need to work with lots of remote computers in front of either large monitors or tiny net-books. This package contains the SPICE plugin for the Remmina remote desktop client. +%endif +%package plugins-www +Summary: WWW plugin for Remmina Remote Desktop Client +Requires: %{name}%{?_isa} = %{version}-%{release} -%package plugins-www -Summary: WWW plugin for Remmina Remote Desktop Client -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description plugins-www +%description plugins-www Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travelers, who need to work with lots of remote computers in front of either large monitors or tiny net-books. @@ -169,12 +170,11 @@ computers in front of either large monitors or tiny net-books. This package contains the WWW plugin (web browser with authentication) for the Remmina remote desktop client. +%package plugins-kwallet +Summary: KDE Wallet plugin for Remmina Remote Desktop Client +Requires: %{name}%{?_isa} = %{version}-%{release} -%package plugins-kwallet -Summary: KDE Wallet plugin for Remmina Remote Desktop Client -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description plugins-kwallet +%description plugins-kwallet Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travelers, who need to work with lots of remote computers in front of either large monitors or tiny net-books. @@ -183,26 +183,37 @@ This package contains the KDE Wallet plugin for the Remmina remote desktop client. It will be activated automatically if KDE Wallet is installed and running. +%if 0%{?fedora} || 0%{?rhel} <= 8 +%package plugins-x2go +Summary: x2go plugin for Remmina Remote Desktop Client +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: pyhoca-cli -%package plugins-x2go -Summary: x2go plugin for Remmina Remote Desktop Client -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: pyhoca-cli - -%description plugins-x2go +%description plugins-x2go Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travelers, who need to work with lots of remote computers in front of either large monitors or tiny net-books. This package contains the x2go plugin for the Remmina remote desktop client. +%endif + +%package plugins-python +Summary: Pyhton plugin for Remmina Remote Desktop Client +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description plugins-python +Remmina is a remote desktop client written in GTK+, aiming to be useful for +system administrators and travelers, who need to work with lots of remote +computers in front of either large monitors or tiny net-books. +This package contains the python plugin for the Remmina remote desktop client. -%package gnome-session -Summary: Gnome Shell session for Remmina kiosk mode -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: gnome-session +%package gnome-session +Summary: Gnome Shell session for Remmina kiosk mode +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: gnome-session -%description gnome-session +%description gnome-session Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travelers, who need to work with lots of remote computers in front of either large monitors or tiny net-books. @@ -211,13 +222,11 @@ This package contains Remmina kiosk mode, including a Gnome Shell session that shows up under the display manager session menu. %prep -%autosetup -p1 -n Remmina-v%{version}-%{commit0} +%autosetup -p1 -n Remmina-v%{version}-%{release_commit_hash} %build -mkdir -p build - %if 0%{?fedora} -# Workaround for Pango on Fedora 31+ +# Workaround for Pango on Fedora 31+. export CFLAGS="%{optflags} -I%{_includedir}/harfbuzz" %endif @@ -228,8 +237,16 @@ export CFLAGS="%{optflags} -std=gnu99" %cmake3 \ -DCMAKE_INSTALL_LIBDIR=%{_lib} \ -DCMAKE_INSTALL_PREFIX=%{_prefix} \ - -DWITH_APPINDICATOR=ON \ +%if 0%{?fedora} || 0%{?rhel} <= 8 + -DHAVE_LIBAPPINDICATOR=ON \ +%else + -DHAVE_LIBAPPINDICATOR=OFF \ +%endif +%if 0%{?fedora} || 0%{?rhel} <= 8 -DWITH_AVAHI=ON \ +%else + -DWITH_AVAHI=OFF \ +%endif -DWITH_FREERDP=ON \ -DWITH_GCRYPT=ON \ -DWITH_GETTEXT=ON \ @@ -237,10 +254,15 @@ export CFLAGS="%{optflags} -std=gnu99" -DWITH_KIOSK_SESSION=ON \ -DWITH_LIBSSH=ON \ -DWITH_NEWS=OFF \ + -DWITH_PYTHONLIBS=ON \ -DWITH_SPICE=ON \ -DWITH_TELEPATHY=OFF \ -DWITH_VTE=ON \ +%if 0%{?fedora} || 0%{?rhel} <= 8 -DWITH_X2GO=ON +%else + -DWITH_X2GO=OFF +%endif %cmake3_build @@ -258,6 +280,21 @@ cp -p %{SOURCE1} %{buildroot}/%{_includedir}/%{name}/ desktop-file-validate %{buildroot}/%{_datadir}/applications/*.desktop appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/*.appdata.xml +# Manually trigger icon cache generation on el7 only. +%if 0%{?rhel} == 7 +%post +/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : + +%postun +if [ $1 -eq 0 ] ; then + /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null + /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +fi + +%posttrans +/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +%endif + %files -f %{name}.lang %license LICENSE %doc AUTHORS ChangeLog README.md @@ -298,10 +335,12 @@ appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/*.appdat %{_datadir}/icons/hicolor/*/emblems/org.remmina.Remmina-vnc-ssh-symbolic.svg %{_datadir}/icons/hicolor/*/emblems/org.remmina.Remmina-vnc-symbolic.svg +%if 0%{?fedora} || 0%{?rhel} <= 8 %files plugins-spice %{_libdir}/remmina/plugins/remmina-plugin-spice.so %{_datadir}/icons/hicolor/*/emblems/org.remmina.Remmina-spice-ssh-symbolic.svg %{_datadir}/icons/hicolor/*/emblems/org.remmina.Remmina-spice-symbolic.svg +%endif %files plugins-www %{_libdir}/remmina/plugins/remmina-plugin-www.so @@ -309,10 +348,15 @@ appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/*.appdat %files plugins-kwallet %{_libdir}/remmina/plugins/remmina-plugin-kwallet.so +%files plugins-python +%{_libdir}/remmina/plugins/remmina-plugin-python_wrapper.so + +%if 0%{?fedora} || 0%{?rhel} <= 8 %files plugins-x2go %{_libdir}/remmina/plugins/remmina-plugin-x2go.so %{_datadir}/icons/hicolor/*/emblems/org.remmina.Remmina-x2go-ssh-symbolic.svg %{_datadir}/icons/hicolor/*/emblems/org.remmina.Remmina-x2go-symbolic.svg +%endif %files gnome-session %{_bindir}/gnome-session-remmina @@ -323,6 +367,49 @@ appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/*.appdat %{_mandir}/man1/remmina-gnome.1.* %changelog +* Wed May 18 2022 Phil Wyett - 1.4.26-1 +- New upstream version 1.4.26. + - New python plugin enabled. +- Drop patches as no longer needed. +- EL9 + - Disable avahi-ui and avahi-ui-gtk support. + - Disable libappindicator support. + - Disable spice plugin. + - Disable x2go plugin. + +* Mon Mar 28 2022 Phil Wyett - 1.4.25-2 +- Add patch: 0001_vnc_close_all_close_git_55e2324a.patch +- Add patch: 0002_rdp_possible_segv_git_3620efda.patch + +* Fri Mar 11 2022 Phil Wyett - 1.4.25-1 +- New upstream version 1.4.25. + +* Wed Mar 09 2022 Phil Wyett - 1.4.24-4 +- Add patch: 0003_honour_soft_links_git_ee00da15.patch +- Add patch: 0004_freerdp_offscreen_support_level_type_git_f58d22d6.patch + +* Sun Feb 27 2022 Phil Wyett - 1.4.24-3 +- Add patch: 0001_fix_rare_crash_git_2609548e_and_9ed4c438.patch. +- Add patch: 0002_drop_gnome_mediakeys_plugin_git_c901beef.patch. +- Remove unneeded creation of 'build' folder. + +* Sat Feb 12 2022 Phil Wyett - 1.4.24-2 +- Remove XDMCP reference from remmina package description. +- Remove pyhoca-cli BuildRrequires. Only Requires on x2go now required. +- Use upstream projects HTTPS URL. + +* Thu Feb 10 2022 Phil Wyett - 1.4.24-1 +- New upstream version 1.4.24. + +* Sun Jan 23 2022 Phil Wyett - 1.4.23-4 +- Add missing xdg-utils BuildRequires for generation of icon and theme caches. +- Modify conditional to exclude el7 only from aarch64 builds. Will + now enable building for el8 and above. +- Add scriptlets for updating of icon cache on el7 as not automatic. + +* Fri Jan 21 2022 Fedora Release Engineering - 1.4.23-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Wed Jan 19 2022 Phil Wyett - 1.4.23-2 - Remove unneeded BuildRequires for gtk-vnc-2.0. libvncserver is the preferred for VNC and disables the gvnc plugin if found. diff --git a/sources b/sources index d9b12b5..4fbd694 100644 --- a/sources +++ b/sources @@ -1 +1,5 @@ +<<<<<<< HEAD SHA512 (remmina-1.4.23.tar.gz) = 2fc175d4e81483dcd00bad4a1e62077952d89961f0bf1825c30459fa57b198b646658b456525a278b18550e458c05c450bab991b3c5cba00675dcedb481965a2 +======= +SHA512 (remmina-1.4.26.tar.gz) = 4e1e2f4b4bbd14c037e3f93f1813156cdf8c425e553d2a34e44e90c18ba4e88e37a5e0942728926fcd50949972a39219e2d7449139edc46c1adfb59d20c8dd8f +>>>>>>> rawhide