Remmina - The GTK+ Remote Desktop Client  v1.4.33
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.
Compile-on-Arch-Linux.md
Go to the documentation of this file.
1 # Quick and dirty guide for compiling Remmina on Arch
2 
3 These are the instructions for people who want to test the latest version of Remmina on Arch Linux
4 
5 You will obtain Remmina compiled under the /opt/remmina_devel/ subdir, so it will not mess up your system too much. This is ideal for testing Remmina.
6 
7 You will also find the uninstall instructions at the bottom of this page.
8 
9 You must be **root** to follow this guide.
10 
11 **1.** Update your system
12 
13 ```
14 pacman -Syu
15 ```
16 
17 and reboot if needed.
18 
19 Install packages needed to compile FreeRDP and Remmina:
20 
21 ```shell
22 pacman -S base-devel git libssh libvncserver gnome-keyring kwallet libgnome-keyring libpulse \
23  vte3 cmake libappindicator-gtk3 docbook-utils docbook-xsl spice-gtk spice-protocol gtk-vnc
24 ```
25 
26 **2.** Remove installed versions of Remmina and FreeRDP
27 
28 ```
29 pacman -Rs remmina freerdp
30 ```
31 
32 **3.** Create a new directory for development in your home directory, and cd into it
33 
34 ```
35 mkdir ~/remmina_devel
36 cd ~/remmina_devel
37 ```
38 
39 **4.** Download the latest source code of FreeRDP from its master branch
40 
41 ```
42 git clone --branch 2.0.0 https://github.com/FreeRDP/FreeRDP.git
43 cd FreeRDP
44 ```
45 
46 **5.** Configure FreeRDP for compilation (don't forget to include -DWITH_PULSE=ON)
47 
48 ```
49 mkdir -p builddir
50 cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_CUPS=on -DWITH_WAYLAND=off -DWITH_PULSE=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp -B builddir
51 ```
52 
53 Please note that the above line will make FreeRDP install in /opt/remmina_devel/freerdp
54 
55 **6.** Compile FreeRDP and install
56 
57 ```
58 make -C builddir && sudo make -C builddir install
59 ```
60 
61 **7.** Make your system dynamic loader aware of the new libraries you installed. For Arch x64:
62 
63 ```
64 echo /opt/remmina_devel/freerdp/lib64 | sudo tee /etc/ld.so.conf.d/freerdp_devel.conf > /dev/null
65 sudo ldconfig
66 ```
67 
68 Please note: in your system the above lib directory could be different (`/opt/remmina_devel/freerdp/` in manjaro)
69 
70 **8.** Link executable in /usr/local/bin
71 
72 ```
73 ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/
74 ```
75 
76 **9.** Test the new FreeRDP by connecting to a RDP host
77 
78 ```
79 xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username
80 ```
81 
82 **10.** Now clone the Remmina repository, to your devel dir:
83 
84 ```
85 cd ~/remmina_devel
86 git clone https://gitlab.com/Remmina/Remmina.git
87 ```
88 
89 **11.** Configure Remmina for compilation
90 
91 ```
92 cd Remmina
93 mkdir -p builddir
94 cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp -DWITH_KF5WALLET=ON -DWITH_CUPS=ON -DWITH_FREERDP_MASTER=ON -DWITH_LIBSSH=ON -DWITH_NEWS=ON -DWITH_PYTHONLIBS=OFF -DWITH_GVNC=ON -B builddir
95 ```
96 
97 **12.** Compile Remmina and install it
98 
99 ```
100 make -C builddir && sudo make -C builddir install
101 ```
102 
103 **13.** Link the executable
104 
105 ```
106 ln -s /opt/remmina_devel/remmina/bin/remmina /usr/local/bin/
107 ```
108 
109 **14.** Run Remmina
110 
111 ```
112 remmina
113 ```
114 
115 NOTES for execution:
116 * Icons and .desktop files are not installed, so don't search for remmina in Gnome Shell. You can only launch it from a terminal or pressing ALT-F2 and typing `remmina`.
117 * Gnome Shell will never show you the system tray icon and menu. Press Super+M to see the Remmina icon on the message bar.
118 
119 ## Uninstall everything
120 
121 **1.** Remove the devel directory
122 
123 ```
124 rm -rf ~/remmina_devel/
125 ```
126 
127 **2.** Remove the binary directory and the symlink
128 
129 ```
130 rm -rf /opt/remmina_devel/ /usr/local/bin/remmina
131 ```