A graphical frontend for FreeRDP on Linux. Build and launch xfreerdp connections through a point-and-click interface — no need to remember command-line flags.
- Save and load named connection profiles
- Configure resolution, color depth, and rendering options
- Network quality presets and auto-reconnect settings
- Device redirection: clipboard, audio, microphone, printer, USB, drives
- Remote App (
/app:) support - Certificate and security protocol options
- Advanced flags: custom FreeRDP arguments,
/admin, KeepAlive, etc. - Live command preview showing the exact
xfreerdpcommand that will be run - Dark / Light theme toggle (uses sv-ttk when available)
| Requirement | Notes |
|---|---|
| Linux (Debian/Ubuntu/Fedora/Arch or compatible) | Tested on Ubuntu 22.04+ |
| Python 3.10+ | python3 --version to check |
| python3-tk | Tkinter GUI toolkit |
| xfreerdp (FreeRDP 2.x or 3.x) | The underlying RDP client |
Debian / Ubuntu / Linux Mint
sudo apt update
sudo apt install python3 python3-tk freerdp2-x11For FreeRDP 3.x (where available):
sudo apt install freerdp3-x11
Fedora / RHEL / CentOS Stream
sudo dnf install python3 python3-tkinter freerdpArch Linux / Manjaro
sudo pacman -S python tk freerdpopenSUSE
sudo zypper install python3 python3-tk freerdpgit clone https://github.com/your-username/XFreeRDP.git
cd XFreeRDPReplace the URL with the actual repository URL if different.
python3 -m venv .venv
source .venv/bin/activateThe Sun Valley theme provides a polished Windows 11-style appearance. The app works without it, falling back to a built-in dark/light theme.
pip install sv-ttkchmod +x run.sh./run.shOr directly with Python:
python3 main.pyThis repository includes a build script that packages the app as a single .AppImage.
python3andpipappimagetool(from AppImageKit releases)
Install build-only Python dependency:
python3 -m pip install --user pyinstallerEnsure appimagetool is available:
appimagetool --versionchmod +x scripts/build_appimage.sh
./scripts/build_appimage.shOutput file:
build/appimage/XFreeRDP-GUI-<arch>.AppImageNotes:
- The AppImage bundles your GUI app runtime.
xfreerdpitself is still expected on the target Linux system (xfreerdpinPATH).
To make XFreeRDP GUI appear in your desktop application launcher, install the .desktop file:
# Edit the Exec and Icon paths to match your actual install location
sed -i "s|/home/taufiq/RiderProjects/XFreeRDP|$(pwd)|g" xfreerdp-gui.desktop
# Install for the current user
cp xfreerdp-gui.desktop ~/.local/share/applications/
# Refresh the desktop database (usually automatic, but run if the entry doesn't appear)
update-desktop-database ~/.local/share/applications/Profiles and settings are stored in ~/.config/xfreerdp-gui/:
| File | Contents |
|---|---|
profiles.json |
All saved connection profiles |
settings.json |
UI preferences (e.g. dark mode) |
These files are created automatically on first run.
| Shortcut | Action |
|---|---|
Ctrl+Enter |
Connect |
Ctrl+S |
Save current profile |
-
Remove the application files:
rm -rf /path/to/XFreeRDP
-
Remove the desktop entry (if installed):
rm ~/.local/share/applications/xfreerdp-gui.desktop -
Remove saved profiles and settings:
rm -rf ~/.config/xfreerdp-gui
python3-tk is not installed error
Install Tkinter for your distribution (see step 1 above) and re-run.
xfreerdp: command not found
Install FreeRDP (see step 1 above). Verify with xfreerdp --version.
Window icon is missing
The icon is generated from icon.svg at startup. Install one of the following converters and restart:
sudo apt install librsvg2-bin # provides rsvg-convert (recommended)
# or
sudo apt install imagemagick # provides convert
# or
sudo apt install inkscapeTheme looks plain / no Sun Valley theme Install sv-ttk inside your virtual environment:
source .venv/bin/activate
pip install sv-ttkThis project is provided as-is. See the repository for license details.
