@ -1,30 +1,24 @@
%global release_commit_hash fa11b6d1c1f20922b594cc2a8c204f9ea6592836
%global release_commit_hash fa11b6d1c1f20922b594cc2a8c204f9ea6592836
# Use old cmake macro behaviour.
%define __cmake_in_source_build 1
Name: remmina
Name: remmina
Version: 1.4.26
Version: 1.4.26
Release: 2%{?dist}
Release: 3 %{?dist}
Summary: Remote Desktop Client
Summary: Remote Desktop Client
License: GPLv2+ and MIT
License: GPLv2+ and MIT
URL: https://remmina.org
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
# Exclude el7 from building on aarch64.
%if 0%{?rhel} == 7
ExcludeArch: aarch64
%endif
# Cmake helper file to easy build plugins outside remmina source tree
# Cmake helper file to easy build plugins outside remmina source tree
# See http://www.muflone.com/remmina-plugin-rdesktop/english/install.html which
# See http://www.muflone.com/remmina-plugin-rdesktop/english/install.html which
# use http://www.muflone.com/remmina-plugin-builder/ with remmina bundled source.
# use http://www.muflone.com/remmina-plugin-builder/ with remmina bundled source.
# So we can't use it directly only as instructions.
# 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
BuildRequires: cmake
%else
BuildRequires: cmake3
%endif
BuildRequires: cups-devel
BuildRequires: cups-devel
BuildRequires: desktop-file-utils
BuildRequires: desktop-file-utils
BuildRequires: gcc-c++
BuildRequires: gcc-c++
@ -37,10 +31,10 @@ BuildRequires: libgcrypt-devel
BuildRequires: libsodium-devel
BuildRequires: libsodium-devel
BuildRequires: python3-devel
BuildRequires: python3-devel
BuildRequires: xdg-utils
BuildRequires: xdg-utils
%if 0%{?fedora} || 0%{?rhel} < = 8
%if 0%{?fedora} || 0%{?rhel} = = 8
BuildRequires: pkgconfig(appindicator3-0.1)
BuildRequires: pkgconfig(appindicator3-0.1)
%endif
%endif
%if 0%{?fedora} || 0%{?rhel} < = 8
%if 0%{?fedora} || 0%{?rhel} = = 8
BuildRequires: pkgconfig(avahi-ui)
BuildRequires: pkgconfig(avahi-ui)
BuildRequires: pkgconfig(avahi-ui-gtk3)
BuildRequires: pkgconfig(avahi-ui-gtk3)
%endif
%endif
@ -49,10 +43,10 @@ BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(json-glib-1.0)
BuildRequires: pkgconfig(json-glib-1.0)
BuildRequires: pkgconfig(libsecret-1)
BuildRequires: pkgconfig(libsecret-1)
BuildRequires: pkgconfig(libsoup-2.4)
BuildRequires: pkgconfig(libsoup-2.4)
BuildRequires: pkgconfig(libssh)
BuildRequires: pkgconfig(libssh) >= 0.8.0
BuildRequires: pkgconfig(libvncserver)
BuildRequires: pkgconfig(libvncserver)
BuildRequires: pkgconfig(libpcre2-8)
BuildRequires: pkgconfig(libpcre2-8)
%if 0%{?fedora} || 0%{?rhel} < = 8
%if 0%{?fedora} || 0%{?rhel} = = 8
BuildRequires: pkgconfig(spice-client-gtk-3.0)
BuildRequires: pkgconfig(spice-client-gtk-3.0)
%endif
%endif
BuildRequires: pkgconfig(vte-2.91)
BuildRequires: pkgconfig(vte-2.91)
@ -65,17 +59,10 @@ Obsoletes: %{name}-plugins-nx < %{version}-%{release}
Obsoletes: %{name}-plugins-st < %{version}-%{release}
Obsoletes: %{name}-plugins-st < %{version}-%{release}
Obsoletes: %{name}-plugins-xdmcp < %{version}-%{release}
Obsoletes: %{name}-plugins-xdmcp < %{version}-%{release}
%if 0%{?fedora} || 0%{?rhel} >= 8
Recommends: %{name}-plugins-exec
Recommends: %{name}-plugins-exec
Recommends: %{name}-plugins-rdp
Recommends: %{name}-plugins-rdp
Recommends: %{name}-plugins-secret
Recommends: %{name}-plugins-secret
Recommends: %{name}-plugins-vnc
Recommends: %{name}-plugins-vnc
%else
Requires: %{name}-plugins-exec
Requires: %{name}-plugins-rdp
Requires: %{name}-plugins-secret
Requires: %{name}-plugins-vnc
%endif
%description
%description
Remmina is a remote desktop client written in GTK+, aiming to be useful for
Remmina is a remote desktop client written in GTK+, aiming to be useful for
@ -146,7 +133,7 @@ computers in front of either large monitors or tiny net-books.
This package contains the VNC plugin for the Remmina remote desktop
This package contains the VNC plugin for the Remmina remote desktop
client.
client.
%if 0%{?fedora} || 0%{?rhel} < = 8
%if 0%{?fedora} || 0%{?rhel} = = 8
%package plugins-spice
%package plugins-spice
Summary: SPICE plugin for Remmina Remote Desktop Client
Summary: SPICE plugin for Remmina Remote Desktop Client
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: %{name}%{?_isa} = %{version}-%{release}
@ -185,7 +172,7 @@ This package contains the KDE Wallet plugin for the Remmina remote desktop
client. It will be activated automatically if KDE Wallet is installed and
client. It will be activated automatically if KDE Wallet is installed and
running.
running.
%if 0%{?fedora} || 0%{?rhel} < = 8
%if 0%{?fedora} || 0%{?rhel} = = 8
%package plugins-x2go
%package plugins-x2go
Summary: x2go plugin for Remmina Remote Desktop Client
Summary: x2go plugin for Remmina Remote Desktop Client
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: %{name}%{?_isa} = %{version}-%{release}
@ -232,19 +219,15 @@ that shows up under the display manager session menu.
export CFLAGS="%{optflags} -I%{_includedir}/harfbuzz"
export CFLAGS="%{optflags} -I%{_includedir}/harfbuzz"
%endif
%endif
%if 0%{?rhel} == 7
%cmake . \
export CFLAGS="%{optflags} -std=gnu99 -D_GNU_SOURCE"
%endif
%cmake3 \
-DCMAKE_INSTALL_LIBDIR=%{_lib} \
-DCMAKE_INSTALL_LIBDIR=%{_lib} \
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
%if 0%{?fedora} || 0%{?rhel} < = 8
%if 0%{?fedora} || 0%{?rhel} == 8
-DHAVE_LIBAPPINDICATOR=ON \
-DHAVE_LIBAPPINDICATOR=ON \
%else
%else
-DHAVE_LIBAPPINDICATOR=OFF \
-DHAVE_LIBAPPINDICATOR=OFF \
%endif
%endif
%if 0%{?fedora} || 0%{?rhel} < = 8
%if 0%{?fedora} || 0%{?rhel} = = 8
-DWITH_AVAHI=ON \
-DWITH_AVAHI=ON \
%else
%else
-DWITH_AVAHI=OFF \
-DWITH_AVAHI=OFF \
@ -257,23 +240,22 @@ export CFLAGS="%{optflags} -std=gnu99 -D_GNU_SOURCE"
-DWITH_LIBSSH=ON \
-DWITH_LIBSSH=ON \
-DWITH_NEWS=OFF \
-DWITH_NEWS=OFF \
-DWITH_PYTHONLIBS=ON \
-DWITH_PYTHONLIBS=ON \
%if 0%{?fedora} || 0%{?rhel} < = 8
%if 0%{?fedora} || 0%{?rhel} = = 8
-DWITH_SPICE=ON \
-DWITH_SPICE=ON \
%else
%else
-DWITH_SPICE=OFF \
-DWITH_SPICE=OFF \
%endif
%endif
-DWITH_TELEPATHY=OFF \
-DWITH_VTE=ON \
-DWITH_VTE=ON \
%if 0%{?fedora} || 0%{?rhel} < = 8
%if 0%{?fedora} || 0%{?rhel} = = 8
-DWITH_X2GO=ON
-DWITH_X2GO=ON
%else
%else
-DWITH_X2GO=OFF
-DWITH_X2GO=OFF
%endif
%endif
%cmake3 _build
%cmake_build
%install
%install
%cmake3 _install
%cmake_install
mkdir -p %{buildroot}/%{_libdir}/cmake/%{name}/
mkdir -p %{buildroot}/%{_libdir}/cmake/%{name}/
cp -pr cmake/*.cmake %{buildroot}/%{_libdir}/cmake/%{name}/
cp -pr cmake/*.cmake %{buildroot}/%{_libdir}/cmake/%{name}/
@ -286,21 +268,6 @@ cp -p %{SOURCE1} %{buildroot}/%{_includedir}/%{name}/
desktop-file-validate %{buildroot}/%{_datadir}/applications/*.desktop
desktop-file-validate %{buildroot}/%{_datadir}/applications/*.desktop
appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/*.appdata.xml
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
%files -f %{name}.lang
%license LICENSE
%license LICENSE
%doc AUTHORS ChangeLog README.md
%doc AUTHORS ChangeLog README.md
@ -341,7 +308,7 @@ fi
%{_datadir}/icons/hicolor/*/emblems/org.remmina.Remmina-vnc-ssh-symbolic.svg
%{_datadir}/icons/hicolor/*/emblems/org.remmina.Remmina-vnc-ssh-symbolic.svg
%{_datadir}/icons/hicolor/*/emblems/org.remmina.Remmina-vnc-symbolic.svg
%{_datadir}/icons/hicolor/*/emblems/org.remmina.Remmina-vnc-symbolic.svg
%if 0%{?fedora} || 0%{?rhel} < = 8
%if 0%{?fedora} || 0%{?rhel} = = 8
%files plugins-spice
%files plugins-spice
%{_libdir}/remmina/plugins/remmina-plugin-spice.so
%{_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-ssh-symbolic.svg
@ -357,7 +324,7 @@ fi
%files plugins-python
%files plugins-python
%{_libdir}/remmina/plugins/remmina-plugin-python_wrapper.so
%{_libdir}/remmina/plugins/remmina-plugin-python_wrapper.so
%if 0%{?fedora} || 0%{?rhel} < = 8
%if 0%{?fedora} || 0%{?rhel} = = 8
%files plugins-x2go
%files plugins-x2go
%{_libdir}/remmina/plugins/remmina-plugin-x2go.so
%{_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-ssh-symbolic.svg
@ -373,6 +340,12 @@ fi
%{_mandir}/man1/remmina-gnome.1.*
%{_mandir}/man1/remmina-gnome.1.*
%changelog
%changelog
* Sun May 22 2022 Phil Wyett <philip.wyett@kathenas.org> - 1.4.26-3
- Add libssh BuildRequires minimum required version of 0.8.0.
- Remove EL7 build support due to new libssh minimum required version.
- Remove telepathy plugin activation switch as no longer required.
- Eliminate cmake build folder warning.
* Thu May 19 2022 Phil Wyett <philip.wyett@kathenas.org> - 1.4.26-2
* Thu May 19 2022 Phil Wyett <philip.wyett@kathenas.org> - 1.4.26-2
- Add some missing BuildRequires for calrity.
- Add some missing BuildRequires for calrity.
- Correctly disable spice plugin on EL9.
- Correctly disable spice plugin on EL9.