Skip to content

Releases: jeeftor/rdp

v0.1.0-rc.23

v0.1.0-rc.23 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 12 Oct 18:22

The connection manager now accepts FreeRDP SDL's explicit authentication-success result even when normal cleanup returns process status 1. The actual exit code remains in diagnostics and the GUI shows a cleanup warning. Contradictory authentication/certificate errors, timeouts and signal termination remain failures.

Use Disconnect in the connection row or Test dialog to close the desktop clients launched by this GUI for that connection. It does not sign out the remote Windows session. Other connections and externally launched clients remain unaffected.

This release also includes the guided server → trust/credentials → sign-in → video workflow and confirmed connection deletion from rc.22. Passwords remain visible in the editor and diagnostic commands when saved locally.

CI checks exercise the native and packaged GUI under X11 and Wayland, including authentication-success cleanup, credential rejection, lockout, deletion and disconnection. Frame probes and captured image content do not prove a usable remote desktop; confirm the picture on your target machine.

For RHEL 10 x86_64, install/update using the single combined RPM:

sudo rpm -Uvh --replacepkgs ./rdp-0.1.0-rc.23.x86_64.rpm

The release contains one RPM, its corresponding source archive, and SHA256SUMS. The source archive is not required for installation.

v0.1.0-rc.22

v0.1.0-rc.22 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 12 Oct 17:17

Install the single combined rdp RPM on RHEL 10 x86_64. It includes the GUI, FreeRDP, GTK3 and WebKitGTK runtime. The source archive includes matching client, GUI and bundled dependency sources. Verify SHA256SUMS before installation. Client and desktop builds and X11/Wayland tests pass before publication. Host graphics drivers and keyboard data remain required. Actual RHEL installation, RDP connections and physical multi-monitor behavior require target validation.

v0.1.0-rc.21

v0.1.0-rc.21 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 12 Oct 16:00

The connection manager now uses Vue and PrimeVue: a compact table with clear Connect, Edit and Test buttons, plus dialogs for editing and diagnostics. Passwords remain visible when saved, and commands and diagnostic exports include them as requested.

Test all video modes checks NLA sign-in once, then opens the available X11/Wayland OpenGL, OpenGL ES and X11 software desktop modes sequentially. It reports progress and captures the actual X11 FreeRDP client window when available. Results distinguish image content, a black/uniform image and unavailable capture; graphics initialization and nonblack images still require visual confirmation. Native Wayland capture remains unavailable. Confirmed modes are remembered with OpenGL preferred over OpenGL ES, then software.

Diagnostic exports include batch identifiers, actual commands, logs and available PNG previews, so a fresh test can be evaluated independently of older attempts. Sign-in failures stop the batch before additional login attempts.

Install or update the single combined RPM on RHEL 10 x86_64 with sudo rpm -Uvh --replacepkgs rdp-0.1.0-rc.21.x86_64.rpm. It includes the GUI, FreeRDP, GTK3 and WebKitGTK runtime; Node is only a build dependency. Verify SHA256SUMS first. The matching source archive contains application and bundled dependency sources and frontend notices.

Local checks and Linux CI verify the code, X11 client-window capture, native GUI flows under X11/Wayland and package contents. Actual RHEL installation, remote desktop usability and physical multi-monitor behavior still require target validation. Host graphics drivers and keyboard data remain required.

CI now builds the frontend once per check/build run, refreshes compatible Rust build caches per commit and compresses tar archives with parallel gzip. All existing native and package checks remain in place.

v0.1.0-rc.19

v0.1.0-rc.19 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 11 Oct 18:07

The GUI now reports per-trial renderer, authentication and certificate failures, desktop initialization, and actual process exit codes. A successful process or framebuffer initialization still requires your visual confirmation before marking a video mode as working.

Unavailable X11 or Wayland options are disabled with explanations. Remember best chooses among currently available confirmed modes while retaining previously confirmed modes in history. The selected mode is checked by the bundled SDL frame probe before launch; the GUI shows the reported renderer/device and identifies known CPU rendering such as llvmpipe. The native probe also records OpenGL vendor and version.

Compare CLI authentication runs the same NLA test twice with identical saved credentials and certificate settings: normal GUI stdin arguments and direct CLI arguments. Both exact commands, outputs and process exit codes are retained. Success messages paired with unsuccessful process exits are shown as a discrepancy rather than a generic failure or a silently accepted success. Run the comparison on your target system to diagnose GUI/CLI differences.

Export diagnostics writes a private JSON file to ${XDG_STATE_HOME:-~/.local/state}/rdpctl/diagnostics and displays its path. It includes profile settings, relevant display/SDL/OpenSSL environment, full commands including passwords, GPU probe details, output and exit status. History retains the latest 32 attempts in the current GUI process, with the last 1 MiB per desktop attempt and the last 64 KiB per authentication attempt. Export before closing the GUI.

Existing JSON profiles, saved graphics preferences, monitor detection and visible plaintext passwords are retained. One combined RHEL 10 x86_64 RPM is published alongside matching sources and SHA256SUMS.

v0.1.0-rc.9

v0.1.0-rc.9 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 09 Oct 17:40

Adds full connection editing and a GUI command/output log. Connect and Test show the exact shell-quoted FreeRDP command, including passwords, with a copy button. Running sessions stream FreeRDP stdout and stderr into the GUI and terminal.

Connections can edit their name, host, username, monitor IDs, fullscreen/multi-monitor settings, passwords and certificate policies while retaining the existing profile ID and saved password. Profiles remain JSON under your XDG configuration directory; this release does not migrate or export .rdp files.

X11 software rendering is a per-connection option for systems where GPU renderer creation fails. It uses SDL_VIDEODRIVER=x11 SDL_RENDER_DRIVER=software SDL_FRAMEBUFFER_ACCELERATION=0 and requires a working DISPLAY from Xorg or XWayland. The native display backend remains the default. Authentication tests do not test a full desktop renderer. The GUI identifies the framebuffer error and points to this option or host graphics-driver checks.

Packaging now builds only one new RPM: rdp-0.1.0-rc.9.x86_64.rpm, containing the GUI, FreeRDP, GTK3 and WebKitGTK runtime. Upgrade tests use previously published RPMs instead of building extra installers. The only accompanying release assets are consolidated matching sources and SHA256SUMS.

Install or update on RHEL 10 x86_64:

sha256sum --ignore-missing --check SHA256SUMS
sudo dnf --disablerepo='*' install ./rdp-0.1.0-rc.9.x86_64.rpm
rdpctl-gui

Host glibc, graphics drivers and keyboard data remain required. Actual target RHEL installation, Windows connectivity and physical multi-monitor behavior require target validation.

v0.1.0-rc.7

v0.1.0-rc.7 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 09 Oct 16:44

Adds saved plaintext passwords, a Test connection action for NLA authentication, and per-connection certificate verification, trust on first use, SHA-256 fingerprint pinning, or ignore policies. Certificate failures show diagnostics and offer an explicit per-host certificate backup. Launches and tests print full copyable FreeRDP commands, including passwords, to terminal output.

The client now bundles its matching OpenSSL legacy provider and checks provider loading and MD4 when packaging. Optional GTK event-sound and PackageKit modules remain desktop integrations; host graphics drivers are still required.

For RHEL 10 x86_64, download rdp-0.1.0-rc.7.x86_64.rpm and SHA256SUMS, then run:

sha256sum --ignore-missing --check SHA256SUMS
sudo dnf --disablerepo='*' install ./rdp-0.1.0-rc.7.x86_64.rpm
rdpctl-gui 2>&1 | tee rdpctl.log

The combined rdp RPM includes the GUI, GTK/WebKit runtime, and FreeRDP. Existing profiles stay in your home directory. Plaintext saved passwords are private local files; terminal logs intentionally include passwords. This release publishes one combined RPM installer, one consolidated matching-source archive, and SHA256SUMS. Other package formats remain available through local builds and CI artifacts.

CI checks cover Linux builds, provider loading, X11/Wayland GUI flows, saved passwords, connection tests, certificate backups, and package upgrades. Real Windows authentication, RHEL target installation, and physical monitor behavior still require target testing.

v0.1.0-rc.6

v0.1.0-rc.6 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 09 Oct 15:15

The combined air-gap RPM is now named rdp: rdp-0.1.0-rc.6.x86_64.rpm. It includes FreeRDP, the Rust GUI, and GTK/WebKit. Upgrade metadata replaces the previous rdpctl-portable RPM and the older separate freerdp-portable and rdpctl-gui packages.

Verify GUI-SHA256SUMS, then install or upgrade offline:

sudo dnf --disablerepo='*' install ./rdp-0.1.0-rc.6.x86_64.rpm

Open rdpctl from the application menu, or run rdpctl-gui. Installed paths, launch commands, profiles, and the DEB/AppImage/tarball names are unchanged.

The combined DEB remains rdpctl-portable_0.1.0-rc.6_amd64.deb. Portable tarball, AppImage, legacy separate packages, matching sources, dependency licenses, and SHA-256 checksums are included.

The runtime requires host glibc 2.39 or later, graphics/EGL drivers, keyboard data, and kernel support and permission for WebKit sandbox namespaces. Actual RHEL 10 installation, real RDP connections, and physical multi-monitor behavior still require target validation.

v0.1.0-rc.17

v0.1.0-rc.17 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 09 Oct 21:50

The GUI can test and remember real desktop graphics configurations. Use Test video options, Try desktop, then Works — remember best after confirming a usable desktop. Trials use NLA, your saved credentials and certificate policy, and a simple 1280×720 window without saved monitor IDs or multi-monitor/fullscreen settings.

Confirmed choices are retained in profile JSON. The preference order is X11 OpenGL, Wayland OpenGL, X11 OpenGL ES, Wayland OpenGL ES, then X11 software. Confirming a lower-priority option later does not downgrade a previously confirmed OpenGL choice. This is a preference order, not a hardware benchmark; OpenGL can use CPU drivers.

Graphics mode lets you select a saved renderer manually or return to automatic mode. Connect, monitor detection and the terminal launcher honor the saved choice. Confirming a choice clears monitor IDs so you can detect them again for that backend. Existing software-override profiles and plaintext passwords remain supported. Full CLI commands include renderer environment settings, removed software overrides, and passwords.

One combined RHEL 10 x86_64 RPM is published with matching sources and SHA256SUMS. Use make download on a connected machine, then make install from the USB on RHEL. Actual remote desktop usability is confirmed by the operator, not inferred from authentication or a process exit code.

v0.1.0-rc.14

v0.1.0-rc.14 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 09 Oct 19:55

Connection actions, including Edit connection and log disclosures, now have bordered button styling, hover feedback and keyboard focus indicators.

Connection cards show Automatic graphics (Wayland / X11) by default. The optional Force X11 software rendering checkbox explicitly overrides automatic selection. Wayland/X11 rendering detection from rc.13 remains enabled when that checkbox is unchecked.

New and saved passwords are visible as plaintext in the GUI. Copyable commands retain the full password, and authentication diagnostic output is no longer redacted. Existing saved JSON profiles and private password files are retained.

One combined RHEL 10 x86_64 RPM is published, with matching sources and SHA256SUMS. The USB Makefile installs cached packages offline with make install; use make download on a connected machine first.

Actual RHEL desktop connectivity remains a target validation step. These interface changes do not diagnose a previous failed GUI authentication attempt without its test log.

v0.1.0-rc.13

v0.1.0-rc.13 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 09 Oct 19:03

Automatically selects a working desktop rendering path using the bundled SDL3 library. Before opening a desktop or detecting monitors, the launcher tests window creation, target textures, drawing and frame presentation. It tries Wayland OpenGL/OpenGL ES, then X11 when available, with a three-second timeout for each candidate.

The selected backend and renderer are included in the GUI's copyable command. Probe logs identify the OpenGL device when available. Explicit SDL backend overrides remain respected. Software rendering remains an explicit option; no automatic SDL software fallback is added. Mesa may still implement OpenGL through CPU drivers when hardware is unavailable.

Authentication-only tests and version/help commands bypass graphics detection, including authentication arguments delivered over stdin. Existing JSON profiles and passwords are retained. If the selected backend changes, refresh saved monitor IDs using Detect displays for this connection, since Wayland and X11 IDs can differ.

One combined RPM is built and published, accompanied by matching sources and SHA256SUMS.

sha256sum --ignore-missing --check SHA256SUMS
sudo dnf --disablerepo='*' install ./rdp-0.1.0-rc.13.x86_64.rpm
rdpctl-gui

Linux CI checks automatic fallback from an unusable Wayland display to X11/OpenGL. Real RHEL desktop connectivity and physical monitor behavior still require target validation.