# Install freerdp with Homebrew, apk, chocolatey, dnf, MacPorts, Nix, pacman, zypper

X11 implementation of the Remote Desktop Protocol (RDP). Version 3.28.0 via Homebrew; verified 2026-07-06.

## Install

```sh
sudo av install brew:freerdp
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install freerdp
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install FreeRDP
```

  Evidence: MacPorts ports tree: net/FreeRDP/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- apk (92%):

```sh
sudo apk add freerdp
```

  Evidence: Alpine Linux edge package indexes: freerdp from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz

- dnf (92%):

```sh
sudo dnf install freerdp
```

  Evidence: Fedora Rawhide package metadata: freerdp from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#freerdp
```

  Evidence: nixpkgs package indexes: pkgs/by-name/fr/freerdp/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- pacman (92%):

```sh
sudo pacman -S freerdp
```

  Evidence: Arch Linux sync databases: freerdp from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install freerdp
```

  Evidence: openSUSE Tumbleweed package metadata: freerdp from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

### Windows

- Chocolatey (92%):

```sh
choco install freerdp
```

  Evidence: Chocolatey community package catalog: freerdp from http://community.chocolatey.org/api/v2/Packages?$filter=IsLatestVersion&$select=Id&$top=1000&$skiptoken='11','flow-launcher'

## Package facts

- **Package key:** brew:freerdp
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/freerdp>
- **Version:** 3.28.0
- **Source summary:** X11 implementation of the Remote Desktop Protocol (RDP)
- **Homepage:** <https://www.freerdp.com/>
- **Repository:** <https://github.com/FreeRDP/FreeRDP>
- **Upstream docs:** <https://github.com/FreeRDP/FreeRDP#readme>
- **License:** Apache-2.0
- **Source archive:** <https://github.com/FreeRDP/FreeRDP/archive/refs/tags/3.28.0.tar.gz>
- **Last updated:** 2026-07-06T10:06:57Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- freerdp-proxy (cli)
- freerdp-shadow-cli (cli)
- sdl-freerdp (cli)
- sfreerdp (cli)
- sfreerdp-server (cli)
- winpr-hash (cli)
- winpr-makecert (cli)
- xfreerdp (cli)
- freerdp-proxy (alias)
- freerdp-shadow-cli (alias)
- sdl-freerdp (alias)
- sfreerdp (alias)
- sfreerdp-server (alias)
- winpr-hash (alias)
- winpr-makecert (alias)
- xfreerdp (alias)

## Dependencies

- cjson
- ffmpeg
- jansson
- jpeg-turbo
- libcbor
- libfido2
- libusb
- libx11
- libxcursor
- libxext
- libxfixes
- libxi
- libxinerama
- libxrandr
- libxrender
- libxv
- openssl@3
- pkcs11-helper
- sdl3
- sdl3_ttf
- uriparser

## Build dependencies

- cmake
- pkgconf

## Uses from macOS

- cups

## Install behavior

- Post-install hook: not defined
- Caveats: xfreerdp is an X11 application that requires an XServer be installed and running. Lack of a running XServer will cause a "$DISPLAY" error. XQuartz provides an XServer for macOS. The XQuartz can be installed as a package from www.xquartz.org or as a Homebrew cask: brew install --cask xquartz
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 3.28.0
- Package-manager updated: 2026-07-06
- Local data: ok
- Upstream repository: https://github.com/FreeRDP/FreeRDP
- Upstream latest detected: 3.28.0 (current)
## Project history and usage

FreeRDP is a free implementation of Microsoft's Remote Desktop Protocol, distributed as both libraries and client/server command-line programs. In package terms it is the portable RDP stack many Unix-like desktops, remote-access tools, and automation workflows build around when the native Microsoft client is unavailable or unsuitable.

### Project history

The official project history describes FreeRDP as starting as a fork and later becoming a multi-platform implementation with Linux, Windows, macOS, iOS, and Android clients. The modern project also includes WinPR, the Windows Portable Runtime, which provides Windows API compatibility pieces used by FreeRDP on non-Windows systems.

The project announced FreeRDP 1.0 in January 2012 and has continued as an actively maintained RDP implementation. Current release notes show the 3.x line adding client, proxy, gateway, Android, codec, and security work while tracking Microsoft protocol extensions.

### Adoption history

FreeRDP's adoption is tied to the need for interoperable RDP outside Microsoft's own clients. The project's own history calls it the standard client implementation where no native Microsoft client is available, and official site posts describe downstream use in related remote-desktop projects such as Remmina and Myrtille.

Because FreeRDP exposes libfreerdp as well as end-user clients such as xfreerdp and sdl-freerdp, it became both an application package and an infrastructure library for remote desktop front ends, thin-client systems, and RDP gateways.

### How it is used

Typical package usage is direct interactive connection to Windows hosts with xfreerdp or SDL-based clients, plus library linking by graphical remote desktop applications. The official README points users to the wiki, API documentation, release downloads, Microsoft Open Specifications references, and compilation instructions.

Modern release notes emphasize security fixes, RDP gateway behavior, clipboard and device redirection, Android client work, codec support, proxy features, and compatibility with Azure and Entra related authentication extensions.

### Why package nerds care

FreeRDP matters to package maintainers because it is a protocol implementation, a CLI client set, and a C library stack in one package. It pulls together fast-moving security updates, optional multimedia backends, platform-specific clients, and the WinPR compatibility layer, so downstream packaging decisions affect both desktop users and dependent remote-access software.

It is also a useful case study in open implementations of proprietary network protocols: packagers care about which RDP extensions are enabled, how TLS and smart-card support are built, and which client binaries are shipped.

### Timeline

- 2012: FreeRDP 1.0 released by the project.
- 2019: Official project history describes FreeRDP as a multi-platform RDP implementation and identifies WinPR as part of the project.
- 2025: Official release posts continue the 3.x series with maintenance and protocol-facing improvements.
- 2026: 3.27.x release notes document active work on security, gateway behavior, Android support, clipboard handling, and Azure/Entra compatibility.

### Related projects

- WinPR is part of the FreeRDP project and supplies portable Windows API compatibility for non-Windows platforms.
- Remmina is an official-site-highlighted multiprotocol remote desktop client that supports RDP via libfreerdp.
- Myrtille is an HTML remote desktop project whose official FreeRDP guest post describes resynchronizing its FreeRDP fork with the main repository.

### Sources

- <https://github.com/FreeRDP/FreeRDP>
- <https://raw.githubusercontent.com/FreeRDP/FreeRDP/master/ChangeLog>
- <https://www.freerdp.com/>
- <https://www.freerdp.com/2012/01/16/freerdp-1-0-released>
- <https://www.freerdp.com/2019/01/16/hi-freerdp-history>
- <https://www.freerdp.com/2019/01/23/hi-remmina>
- <https://www.freerdp.com/2020/11/09/hi-myrtille>


## Security Notes

broad file, network, media, or database tool signal.

- **Geiger risk:** blue / medium
- broad file, network, media, or database tool signal


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: ${SYSCONF_DIR}/xfreerdp.json, ${SYSCONF_DIR}/certificates.json
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** freerdp
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Requirements:** xcode
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Nix - freerdp: normalized package name match | nixpkgs package indexes: pkgs/by-name/fr/freerdp/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- apk - freerdp - 3.26.0-r0: normalized package name match | Alpine Linux edge package indexes: freerdp from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | FreeRDP client | https://www.freerdp.com/
- apk - freerdp-dev - 3.26.0-r0: normalized package name match | Alpine Linux edge package indexes: freerdp-dev from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | FreeRDP client (development files) | https://www.freerdp.com/
- apk - freerdp-doc - 3.26.0-r0: normalized package name match | Alpine Linux edge package indexes: freerdp-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | FreeRDP client (documentation) | https://www.freerdp.com/
- apk - freerdp-libs - 3.26.0-r0: normalized package name match | Alpine Linux edge package indexes: freerdp-libs from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | FreeRDP client (libraries) | https://www.freerdp.com/
- dnf - freerdp - 3.26.0-7.fc45: normalized package name match | Fedora Rawhide package metadata: freerdp from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Free implementation of the Remote Desktop Protocol (RDP) | http://www.freerdp.com/
- dnf - freerdp-devel - 3.26.0-7.fc45: normalized package name match | Fedora Rawhide package metadata: freerdp-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Development files for freerdp | http://www.freerdp.com/
- dnf - freerdp-libs - 3.26.0-7.fc45: normalized package name match | Fedora Rawhide package metadata: freerdp-libs from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Core libraries implementing the RDP protocol | http://www.freerdp.com/
- dnf - freerdp-server - 3.26.0-7.fc45: normalized package name match | Fedora Rawhide package metadata: freerdp-server from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Server support for freerdp | http://www.freerdp.com/
- dnf - libwinpr - 3.26.0-7.fc45: normalized package name match | Fedora Rawhide package metadata: libwinpr from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Windows Portable Runtime | http://www.freerdp.com/
- dnf - libwinpr-devel - 3.26.0-7.fc45: normalized package name match | Fedora Rawhide package metadata: libwinpr-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Windows Portable Runtime development files | http://www.freerdp.com/
- pacman - freerdp - 2:3.26.0-1: normalized package name match | Arch Linux sync databases: freerdp from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Free implementation of the Remote Desktop Protocol (RDP) | https://www.freerdp.com/
- zypper - freerdp - 3.26.0-3.1: normalized package name match | openSUSE Tumbleweed package metadata: freerdp from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Remote Desktop Viewer Client | https://www.freerdp.com/
- zypper - freerdp-devel - 3.26.0-3.1: normalized package name match | openSUSE Tumbleweed package metadata: freerdp-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Development Files for freerdp | https://www.freerdp.com/
- zypper - freerdp-proxy - 3.26.0-3.1: normalized package name match | openSUSE Tumbleweed package metadata: freerdp-proxy from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Remote Desktop Security and Monitoring Proxy Server | https://www.freerdp.com/
- zypper - freerdp-proxy-plugins - 3.26.0-3.1: normalized package name match | openSUSE Tumbleweed package metadata: freerdp-proxy-plugins from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Plugins for the Security and Monitoring Proxy Server | https://www.freerdp.com/


## Related links

- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [ffmpeg](https://www.automicvault.com/pkg/brew/ffmpeg/) - Runtime dependency declared by Homebrew.
- [jpeg-turbo](https://www.automicvault.com/pkg/brew/jpeg-turbo/) - Runtime dependency declared by Homebrew.
- [libfido2](https://www.automicvault.com/pkg/brew/libfido2/) - Runtime dependency declared by Homebrew.
- [cmake](https://www.automicvault.com/pkg/brew/cmake/) - Build dependency declared by Homebrew.
- [pkgconf](https://www.automicvault.com/pkg/brew/pkgconf/) - Build dependency declared by Homebrew.
- [x11vnc](https://www.automicvault.com/pkg/brew/x11vnc/) - Shares av.db curated category or tags: cli, networking, remote-desktop, x11.
- [adns](https://www.automicvault.com/pkg/brew/adns/) - Shares av.db curated category or tags: cli, library, networking.
- [asuka](https://www.automicvault.com/pkg/brew/asuka/) - Shares av.db curated category or tags: cli, client, networking.
- [bbftp-client](https://www.automicvault.com/pkg/brew/bbftp-client/) - Shares av.db curated category or tags: cli, client, networking.
- [bitchx](https://www.automicvault.com/pkg/brew/bitchx/) - Shares av.db curated category or tags: cli, client, networking.
- [c-ares](https://www.automicvault.com/pkg/brew/c-ares/) - Shares av.db curated category or tags: cli, library, networking.
- [curl](https://www.automicvault.com/pkg/brew/curl/) - Shares av.db curated category or tags: cli, library, networking.
- [czmq](https://www.automicvault.com/pkg/brew/czmq/) - Shares av.db curated category or tags: cli, library, networking.
- [tiger-vnc](https://www.automicvault.com/pkg/brew/tiger-vnc/) - Local metadata places this package in an adjacent workflow. Shared terms: cli, client, desktop, implementation, jpeg.
- [freeswitch](https://www.automicvault.com/pkg/brew/freeswitch/) - Local metadata places this package in an adjacent workflow. Shared terms: cli, client, jpeg, jpeg-turbo, networking.

## Combined YAML source

View the package source record on GitHub. [combined/freerdp.yml](https://github.com/automic-vault/db/blob/main/combined/freerdp.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
