Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/Remmina/remmina-wiki.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTukusej’s Sirs <tukusejssirs@protonmail.com>2020-01-21 02:45:19 +0300
committerTukusej’s Sirs <tukusejssirs@protonmail.com>2020-01-21 02:45:19 +0300
commit7798c1a832393b3d756c6b718f22d8bf62abb890 (patch)
tree11c77d52fca8cee34689ecc407d7ac1e9b9004c9
parent45f006ff00e6bf218ac9d1820d9d52214a57b740 (diff)
Add Compilation.md; Update Compilation-guide-for-CentOS.md for CentOS 8
-rw-r--r--Compilation/Compilation-guide-for-CentOS-7.md101
-rw-r--r--Compilation/Compilation-guide-for-CentOS.md152
-rw-r--r--Compilation/Compilation.md11
-rw-r--r--_sidebar.md4
4 files changed, 165 insertions, 103 deletions
diff --git a/Compilation/Compilation-guide-for-CentOS-7.md b/Compilation/Compilation-guide-for-CentOS-7.md
deleted file mode 100644
index a33164d..0000000
--- a/Compilation/Compilation-guide-for-CentOS-7.md
+++ /dev/null
@@ -1,101 +0,0 @@
-# Compilation guide for CentOS 7
-
-These are the instructions for people who want to test the latest version of Remmina (`master` branch) on CentOS 7.
-
-This guide was tested on CentOS 7 GNOME Desktop without any other package/group.
-
-If you want to uninstall the program, follow the instructions in the step 0.
-
-**0.** It is important that no other `remmina` or `freerdp` version is installed, therefore we need to remove it.
-```bash
-# To check if a program is installed, we can use `whereis [program(s)]`
-whereis freerdp remmina
-
-# When `freerdp` is installed from the CentOS repo, use this command to remove it
-sudo yum -y remove freerdp*
-
-# When `freerdp` is installed from source code, enter the `freerdp` source code folder and run the following command
-cd ${HOME}/git/freerdp
-sudo rm $(cat install_manifest.txt)
-
-# When `remmina` is installed from the CentOS repo, use this command to remove it
-sudo yum -y remove remmina*
-
-# When `remmina` is installed from source code, enter the `build` folder in `remmina` source code folder and run the following command
-cd ${HOME}/git/remmina/build
-sudo make uninstall
-
-# Finally, we need to delete the empty folders of `remmina` and `freerdp`
-# This needs to be run for uninstallation of either programs
-sudo rmdir $(find $(whereis freerdp remmina | grep -Po "^[^:]*: \K.*$") -type d | tac)
-```
-
-**1.** Add necessary repos. Note that on CentOS 7 GNOME Desktop only `epel` and `rpmfusion-free-updates` are not installed by default. I presume that `base`, `extras` and `updates` repos are installed on all version of CentOS 7.
-```bash
-# epel: required for `openjpeg2-devel`, `openssl-devel`
-sudo yum -y install epel-release
-# rpmfusion-free-updates: required for `ffmpeg-devel`
-sudo yum -y install https://download1.rpmfusion.org/free/el/rpmfusion-free-release-$(rpm -E %centos).noarch.rpm
-```
-
-**3.** Update your system and `yum` cache. This might require a reboot.
-```bash
-sudo yum -y update
-```
-
-**4.** Install dependencies of `freerdp` and `remmina`.
-```bash
-sudo yum -y install alsa-lib-devel avahi-ui-devel avahi-ui-gtk3 cmake cmake3 cups-devel \
-ffmpeg-devel gcc gcc-c++ git glib2-devel gnutls-devel gstreamer1-devel \
-gstreamer1-plugins-base-devel gtk3-devel json-glib-devel libappindicator-devel \
-libappindicator-gtk3 libappindicator-gtk3-devel libgcrypt-devel libgnome-keyring-devel \
-libSM-devel libsodium libsodium-devel libsoup-devel libssh-devel libvncserver-devel libX11-devel \
-libXcursor-devel libXdamage-devel libXext-devel libXi-devel libXinerama-devel libxkbfile-devel \
-libXrandr-devel libXtst-devel libXv-devel openjpeg2-devel openssl-devel pulseaudio-libs-devel \
-telepathy-glib-devel vte3-devel webkitgtk4-devel xmlto
-```
-
-**5.** Clone FreeRDP and Remmina repos. You may want to modify the `${HOME}/git/{freerdp,remmina}` paths and the folder names.
-```bash
-mkdir -p ${HOME}/git/{freerdp,remmina}
-cd ${HOME}/git
-git clone https://github.com/FreeRDP/FreeRDP.git freerdp
-git clone https://gitlab.com/Remmina/Remmina.git remmina
-```
-
-**6.** Build FreeRDP.
-```
-cd freerdp
-mkdir build
-cd build
-# In the following line, the `DWITH_PULSE=ON` need to be included
-cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_PULSE=ON -DWITH_CUPS=on -DWITH_WAYLAND=off -DCMAKE_INSTALL_PREFIX:PATH=/usr ..
-make && sudo make install
-```
-
-**7.** Make your system dynamic loader aware of the new libraries you installed
-```bash
-sudo ldconfig
-```
-
-**8.** Build Remmina.
-```bash
-mkdir ../../remmina/build
-cd ../../remmina/build
-# cd ../../remmina
-# git checkout v1.3.4
-# mkdir build
-# cd build
-cmake3 -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_PREFIX_PATH=/usr --build=build ..
-make && sudo make install
-```
-
-**9.** Now you should be able to run Remmina with the following command or using the GUI.
-```bash
-remmina &> /dev/null &
-```
-
-NOTES for execution:
-
-* Current GNOME Shell versions does not include system tray, therefore vanilla GNOME will not show the Remmina system tray icon and menu. Press <kbd>Super</kbd>+<kbd>M</kbd> to see the Remmina icon on the message bar. If you want to fix this, you could install either [AppIndicator Support](https://extensions.gnome.org/extension/615/appindicator-support/) or [TopIcons Plus](https://extensions.gnome.org/extension/1031/topicons/).
-* [This might be outdated] XFCE and other desktop environments without app indicator support, will not show you the system tray icon if you are executing Remmina from its compilation folder (e.g. `~/git/remmina`) because it contains a folder named `remmina`. See [Bug #1363277 on Launchpad](https://bugs.launchpad.net/libappindicator/+bug/1363277) \ No newline at end of file
diff --git a/Compilation/Compilation-guide-for-CentOS.md b/Compilation/Compilation-guide-for-CentOS.md
new file mode 100644
index 0000000..4ea7f36
--- /dev/null
+++ b/Compilation/Compilation-guide-for-CentOS.md
@@ -0,0 +1,152 @@
+These are the instructions for people who want to test the latest version of Remmina (`master` branch) on CentOS 7.
+
+This guide was tested on vanilla CentOS 7 GNOME Desktop (specifically: [CentOS-7-x86_64-DVD-1908.iso](http://tux.rainside.sk/centos/7.7.1908/isos/x86_64/)) and CentOS 8 GNOME Desktop (specifically: [CentOS-8.1.1911-x86_64-dvd1.iso](http://tux.rainside.sk/centos/8.1.1911/isos/x86_64/)). The installation was done as `remmina` user. However, it should work on all CentOS 7+ versions. If you find anything not working, raise an [issue](https://gitlab.com/Remmina/Remmina/issues/new).
+
+Note that although on CentOS 8, there is `dnf` package manager, but `yum` is a symlink to it, so we decided to keep `yum` in this guide to make it usable on both CentOS versions without any modifications.
+
+If you want to uninstall the program, follow the instructions in the step 0.
+
+**0.** It is important that no other `remmina` or `freerdp` version is installed, therefore we need to remove it.
+```bash
+# To check if a program is installed, we can use `whereis [program(s)]`
+whereis freerdp remmina
+
+# When `freerdp` is installed from the CentOS repo, use this command to remove it
+sudo yum -y remove freerdp*
+
+# When `freerdp` is installed from source code, enter the `freerdp` source code folder and run the following command
+cd ${HOME}/git/freerdp
+sudo rm $(cat install_manifest.txt)
+
+# When `remmina` is installed from the CentOS repo, use this command to remove it
+sudo yum -y remove remmina*
+
+# When `remmina` is installed from source code, enter the `build` folder in `remmina` source code folder and run the following command
+cd ${HOME}/git/remmina/build
+sudo make uninstall
+
+# Finally, we need to delete the empty folders of `remmina` and `freerdp`
+# This needs to be run for uninstallation of either programs
+sudo rmdir $(find $(whereis freerdp remmina | grep -Po "^[^:]*: \K.*$") -type d | tac)
+```
+
+**1.** Add necessary repos. Note that on CentOS 7 GNOME Desktop only `epel` and `rpmfusion-free-updates` are not installed by default. I presume that `base`, `extras` and `updates` repos are installed on all version of CentOS 7.
+```bash
+# epel: required for `openjpeg2-devel`, `openssl-devel`
+# rpmfusion-free-updates: required for `ffmpeg-devel`
+# PowerTools repo is needed on CentOS 8+
+# getpagespeed repo is needed on CentOS 8+: required for `libgnome-keyring-devel`, `libappindicator-devel`
+# okay repo is needed on CentOS 8+; required for `avahi-ui-devel`
+sudo yum -y install epel-release https://download1.rpmfusion.org/free/el/rpmfusion-free-release-$(rpm -E %centos).noarch.rpm
+if [ $(rpm -E %centos) = 8 ]; then
+ sudo dnf config-manager --set-enabled PowerTools
+ sudo dnf -y install https://extras.getpagespeed.com/release-el$(rpm -E %centos)-latest.rpm
+ sudo rpm -ivh http://repo.okay.com.mx/centos/8/x86_64/release/okay-release-1-3.el8.noarch.rpm
+fi
+```
+
+**3.** Update `yum` cache and packages. This step might require a reboot.
+```bash
+sudo yum -y upgrade
+```
+
+**4.** Install dependencies of `freerdp` and `remmina`. Note that the installation dependencies for FreeRDP and Remmina was merged. If you want to know exactly which program requires which package, see [Dependencies](#dependencies) section at the end of this document.
+```bash
+# Test if `vte3-devel` can be installed
+# Note: `vte3*` was decrecated by Red Hat (src: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/7.6_release_notes/chap-red_hat_enterprise_linux-7.6_release_notes-deprecated_packages)
+test_vte=$(yum info vte3-devel &>/dev/null; echo $?)
+
+if [ $test_vte = 0 ]; then
+ # On CentOS 7-
+ vte='vte3 vte3-devel'
+else
+ # On CentOS 8+
+ vte='vte291 vte291-devel'
+fi
+
+sudo yum -y install $vte alsa-lib-devel atk-devel avahi-ui-devel avahi-ui-gtk3 cairo-devel \
+ cmake3 cups-devel docbook-style-xsl ffmpeg-devel gcc gcc-c++ glib2-devel gnutls-devel \
+ gstreamer1-devel gstreamer1-plugins-base-devel gtk3-devel harfbuzz-devel json-glib-devel \
+ libappindicator-devel libappindicator-gtk3 libappindicator-gtk3-devel libgcrypt-devel \
+ libgnome-keyring-devel libsecret-devel libSM-devel libsodium libsodium-devel libsoup-devel \
+ libssh-devel libusb-devel libvncserver-devel libX11-devel libXcursor-devel libXdamage-devel \
+ libXext-devel libXi-devel libXinerama-devel libxkbfile-devel libXrandr-devel libxslt \
+ libxslt-devel libXtst-devel libXv-devel make ninja-build openjpeg2-devel openssl-devel \
+ pango-devel pulseaudio-libs-devel webkitgtk4-devel xmlto xorg-x11-server-utils
+```
+
+**5.** Clone FreeRDP and Remmina repos. You may want to modify the `${HOME}/git/{freerdp,remmina}` paths and the folder names.
+```bash
+mkdir -p ${HOME}/git/{freerdp,remmina}
+git clone https://github.com/FreeRDP/FreeRDP.git ${HOME}/git/freerdp
+git clone https://gitlab.com/Remmina/Remmina.git ${HOME}/git/remmina
+```
+
+**6.** Build FreeRDP.
+```bash
+mkdir ${HOME}/git/freerdp/build
+cd ${HOME}/git/freerdp/build
+# In the following line, the `DWITH_PULSE=ON` option needs to be included
+# Note: `-DCMAKE_INSTALL_LIBDIR=/usr/lib64` is required when `-DCMAKE_INSTALL_PREFIX:PATH` is not `/usr`; otherwise Remmina will not find the `libfreerdp*` libraries
+cmake3 -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_PULSE=ON -DWITH_CUPS=on -DWITH_WAYLAND=off -DCMAKE_INSTALL_LIBDIR=/usr/lib64 -DCMAKE_INSTALL_PREFIX:PATH=/opt ..
+make && sudo make install
+
+# If you install FreeRDP and Remmina to `/opt`, you need to add `/opt/bin` to PATH
+export PATH="$PATH:/opt/bin"
+echo 'export PATH="$PATH:/opt/bin"' >> ${HOME}/.bashrc
+
+# You can test FreeRDP by connecting to an RDP host
+xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username
+```
+
+**7.** Make your system dynamic loader aware of the new libraries you installed
+```bash
+sudo ldconfig
+```
+
+**8.** Build Remmina.
+```bash
+mkdir ../../remmina/build
+cd ../../remmina/build
+# Note: `-DCMAKE_INSTALL_LIBDIR=/usr/lib64` is not required to successfully run Remmina, but `/usr/lib64` is the proper location for the libraries; again, it is not required at all when Remmina is installed to `/usr`
+cmake3 -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt -DCMAKE_INSTALL_LIBDIR=/usr/lib64 -DCMAKE_PREFIX_PATH=/usr --build=build ..
+make && sudo make install
+```
+
+**9.** Now you should be able to run Remmina with the following command or using the GUI.
+```bash
+remmina &> /dev/null &
+```
+
+NOTES for execution:
+
+* Current GNOME Shell versions does not include system tray, therefore vanilla GNOME will not show the Remmina system tray icon and menu. Press <kbd>Super</kbd>+<kbd>M</kbd> to see the Remmina icon on the message bar. If you want to fix this, you could install either [AppIndicator Support](https://extensions.gnome.org/extension/615/appindicator-support/) or [TopIcons Plus](https://extensions.gnome.org/extension/1031/topicons/).
+* [This might be outdated] XFCE and other desktop environments without app indicator support, will not show you the system tray icon if you are executing Remmina from its compilation folder (e.g. `~/git/remmina`) because it contains a folder named `remmina`. See [Bug #1363277 on Launchpad](https://bugs.launchpad.net/libappindicator/+bug/1363277)
+
+### Dependencies
+
+1. If you are cloning the repositories, you need `git`.
+
+2. FreeRDP dependencies:
+
+```bash
+# Official guide (src: https://github.com/FreeRDP/FreeRDP/wiki/Compilation [rhel based])
+gcc cmake ninja-build openssl-devel libX11-devel libXext-devel libXinerama-devel libXcursor-devel libXi-devel libXdamage-devel libXv-devel libxkbfile-devel alsa-lib-devel cups-devel ffmpeg-devel glib2-devel libusb-devel
+# We had to install these at least on CentOS 8, but they are probably required on CentOS 7 too; otherwise the build failed
+make gcc-c++ pulseaudio-libs-devel libXrandr-devel
+# Recommended: these are required to build man pages
+libxslt libxslt-devel docbook-style-xsl
+# Recommended: for multimedia redirection, audio and video playback
+gstreamer1-devel gstreamer1-plugins-base-devel
+# Recommended: for some X11 addon
+xorg-x11-server-utils
+# Recommended: at build-time, FreeRDP states that this is 'required by virtual:world'
+cairo-devel
+```
+
+3. Remmina dependencies (besides FreeRDP and its dependencies):
+
+```bash
+# `vte3 vte3-devel` should be installed when available; else install `vte291 vte291-devel`
+cmake3 gtk3-devel libgcrypt-devel libssh-devel openjpeg2-devel gnutls-devel libgnome-keyring-devel avahi-ui-devel avahi-ui-gtk3 libvncserver-devel vte* vte*-devel libappindicator-devel libappindicator-gtk3 libappindicator-gtk3-devel libSM-devel webkitgtk4-devel json-glib-devel libsoup-devel libsodium libsodium-devel libXtst-devel xmlto harfbuzz-devel pango-devel atk-devel libsecret-devel
+``` \ No newline at end of file
diff --git a/Compilation/Compilation.md b/Compilation/Compilation.md
new file mode 100644
index 0000000..8b65ea9
--- /dev/null
+++ b/Compilation/Compilation.md
@@ -0,0 +1,11 @@
+We have tested the compilation of Remmina on several operating systems. Unfortunately, some of these guides are outdated. If you find some issues (or even better: their solutions), raise an [issue](https://gitlab.com/Remmina/Remmina/issues/new) please. :smiley:
+
+- [Compilation guide for CentOS](/Compilation/Compilation-guide-for-CentOS)
+- [Compile on Arch Linux](/Compilation/Compile-on-Arch-Linux)
+- [Compile on Debian 10 Buster](/Compilation/Compile-on-Debian-10-Buster)
+- [Compile on Debian 9 Stretch](/Compilation/Compile-on-Debian-9-Stretch)
+- [Compile on Fedora 20 ~ 26](/Compilation/Compile-on-Fedora-20-~-26)
+- [Compile on FreeBSD](/Compilation/Compile-on-FreeBSD)
+- [Compile on Ubuntu 14.04](/Compilation/Compile-on-Ubuntu-14.04)
+- [Compile on Ubuntu 16.04](/Compilation/Compile-on-Ubuntu-16.04)
+- [Compile on Ubuntu 18.04](/Compilation/Compile-on-Ubuntu-18.04) \ No newline at end of file
diff --git a/_sidebar.md b/_sidebar.md
index 59a7ae1..3100c60 100644
--- a/_sidebar.md
+++ b/_sidebar.md
@@ -5,7 +5,7 @@
- [Remmina usage FAQ](/Usage/Remmina-Usage-FAQ)
- [Remmina user’s guide](/Usage/Remmina-User's-guide)
- [Compilation](/Compilation)
- - [Compilation guide for CentOS 7](/Compilation/Compilation-guide-for-CentOS-7)
+ - [Compilation guide for CentOS](/Compilation/Compilation-guide-for-CentOS)
- [Compile on Arch Linux](/Compilation/Compile-on-Arch-Linux)
- [Compile on Debian 10 Buster](/Compilation/Compile-on-Debian-10-Buster)
- [Compile on Debian 9 Stretch](/Compilation/Compile-on-Debian-9-Stretch)
@@ -30,4 +30,4 @@
- [Remmina RDP and HiDPI scaling](/Problems-and-tweaks/Remmina-RDP-and-HiDPI-scaling)
- [Remmina VNC to Raspbian Stretch](/Problems-and-tweaks/Remmina-VNC-to-Raspbian-Stretch)
- [Systray menu](/Problems-and-tweaks/Systray-menu)
- - [vnc key mapping configuration](/Problems-and-tweaks/vnc-key-mapping-configuration)
+ - [vnc key mapping configuration](/Problems-and-tweaks/vnc-key-mapping-configuration) \ No newline at end of file