└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # RemoteApps-Linux Tutorial 2 | ###### My apologies for the crudeness of this tutorial, I intend to make it more precise in the future. I do not guarantee this will work for your system, tinker and adjust accordingly. I cannot provide support for this. 3 | ## Assumptions 4 | ###### This tutorial makes the following assumptions: 5 | * you are comfortable with the command line and you know your way around your distribution of choice. 6 | * that you either have access to a remote app server and `.rdp` files 7 | * or you have the ability to set up a remote app server (setting up an RDP server is outside of the scope of this tutorial) 8 | * if you are accessing a remote app provided by your company, this tutorial assumes that you have the permissions to use the app and have a working VPN connection (if required) 9 | 10 | ## Prerequisites 11 | * Icons - I recommend the [Papirus](https://www.gnome-look.org/s/Gnome/p/1166289) icon pack since it has over 5,000 icons. Chances are you will find one for your app. If not, the internet is your friend. 12 | * An `.RDP` file for the RemoteApp. 13 | * [FreeRDP](https://www.freerdp.com/) installed for your system. 14 | * [xdpyinfo](https://docs.oracle.com/cd/E36784_01/html/E36870/xdpyinfo-1.html) this may or may not come with your systems as part of X11, if it is not installed, please install it from your package manager. this is used to check for HiDPI displays and adjust resolution accordingly. 15 | 16 | ## Steps 17 | * Download the `.RDP` file for your app. 18 | * Create a folder where you would like to store the config for these apps e.g. `/home/username/.config/Remote` 19 | * Create folders with the name `RDP `and `Scripts` in that directory. Optionally you can create an `Icons` folder there as well, or use `/home/user/.local/share/icons` as your icons directory, up to you. 20 | * Copy `.RDP` files into `/home/username/.config/Remote/RDP` 21 | * For each app - create a shell script with the following code: (modify names and paths for each app) 22 | ```{Bash}{#!/bin/bash 23 | xdpyinfo | grep resolution| 24 | if grep -q '97' 25 | then xfreerdp '/home/username/.config/Remote/RDP/YourRDPfile.rdp' /p:'P@$$w0Rd' 26 | else xfreerdp '/home/username/.config/Remote/RDP/YourRDPfile.rdp' /scale:180 /p:'P@$$w0Rd' 27 | fi} 28 | ``` 29 | _Alternatively, you may use a password file for more security, but that is beyond the scope of this, for now._ 30 | 31 | * as root create a file in `/usr/share/applications` with `.desktop` extension. this will be your application shortcut in GNOME (theoretically, this should work for most other DE’s, but I haven’t tested it) 32 | 33 | * the contents of that file should be in the following format: 34 | ```[Desktop Entry] 35 | Type=Application 36 | Name=APPLICATION NAME 37 | Terminal=false 38 | Type=Application 39 | StartupNotify=true 40 | Exec=/home/username/.config/Remote/Scripts/YourShellScript.sh 41 | Icon=/home/username/.config/Remote/Icons/YourIcon.png 42 | ``` 43 | 44 | * finally, run `xfreerdp /path/to/your/RDPfile.RDP` and follow the prompts. this is important because you need to accept the certificate of the RDP server, otherwise your shortcuts won't work. 45 | 46 | * once you restart, your app should in the GNOME app menu. 47 | --------------------------------------------------------------------------------