Remmina - The GTK+ Remote Desktop Client  v1.4.1
Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.
~-26 Quick and dirty guide for compiling remmina on Fedora 20 - 26

These are the instructions for people who want to test the latest version of Remmina on Fedora 20 - 26

You will obtain Remmina and FreeRDP compiled under the /opt/remmina_devel/ subdir, so they will not mess up your system too much. This is ideal for testing remmina.

You will also find the uninstall instructions at the bottom of this page.

ChangeLog

  • Initial write: Aug 23 2014.
  • Updated: Aug 30 2014 (compile with libappindicator)
  • Updated: Sep 2 2014 (notes for Gnome Shell Users)
  • Update: Oct 3 2014 (change from branch "gtk3" to "next")
  • Update Oct 15 2014: added -DWITH_CUPS=on -DWITH_WAYLAND=off to freerdp parameters
  • Update June 17th 2017: added rpmfusion prereq for modern Fedora's ( tested on 26b1 )

use at your own risk

1. Update your system and install all packages required to build freerdp and remmina:

sudo yum -y update

and reboot if needed. Then install packages for freerdp, rpmfusion free is needed for ffmpeg-devel

sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
sudo yum install gcc gcc-c++ cmake openssl-devel libX11-devel libXext-devel \
libXinerama-devel libXcursor-devel \
libXdamage-devel libXv-devel libxkbfile-devel alsa-lib-devel cups-devel ffmpeg-devel glib2-devel \
pulseaudio-libs-devel git libssh-devel libXi-devel libXtst-devel xmlto gstreamer1-devel \
libXrandr-devel gstreamer1-plugins-base-devel

and then install packages for remmina

sudo yum -y install gtk3-devel libgcrypt-devel libssh-devel libxkbfile-devel openjpeg2-devel \
gnutls-devel libgnome-keyring-devel avahi-ui-devel avahi-ui-gtk3 \
libvncserver-devel vte3-devel libappindicator-devel libappindicator-gtk3 libappindicator-gtk3-devel \
telepathy-glib-devel libSM-devel webkitgtk4-devel json-glib-devel libsoup-devel

2. Remove freerdp-x11 package and all packages containing the string remmina in the package name.

sudo rpm -e remmina remmina-devel remmina-plugins-gnome remmina-plugins-nx remmina-plugins-rdp remmina-plugins-telepathy remmina-plugins-vnc remmina-plugins-xdmcp

3. Create a new directory for development in your home directory, and cd into it

mkdir ~/remmina_devel
cd ~/remmina_devel

4. Download the latest source code of FreeRDP from its master branch

git clone https://github.com/FreeRDP/FreeRDP.git
cd FreeRDP
mkdir build
cd build

5. Configure FreeRDP for compilation (don't forget to include -DWITH_PULSE=ON)

cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_PULSE=ON -DWITH_CUPS=on -DWITH_WAYLAND=off -DCMAKE_INSTALL_PREFIX:PATH=/usr ..

6. Compile FreeRDP and install

make && sudo make install

7. Make your system dynamic loader aware of the new libraries you installed. For Fedora x64:

sudo ldconfig

8. Test the new freerdp by connecting to a RDP host

xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username

10. Now clone remmina repository to your devel dir:

cd ~/remmina_devel
git clone https://gitlab.com/Remmina/Remmina.git

11. Configure Remmina for compilation

cd Remmina
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_PREFIX_PATH=/usr --build=build ..

12. Compile remmina and install it

make && sudo make install

13. Run remmina

remmina

NOTES for execution:

  • Gnome Shell will never show you the system tray icon and menu. Press Super+M to see the remmina icon on the message bar. Or install this extension to have full access to a remmina appindicator icon: Appindicator Support Gnome Shell Extension
  • XFCE and other desktop without appindicator support, will never show you the system tray icon if you are executing remmina from its compilation direcotry (~/remmina_devel/Remmina) because it contains a directory named remmina. See Bug #1363277 on launchpad