Skip to content

Releases: jniltinho/rustXterm

v0.6.1

Choose a tag to compare

@github-actions github-actions released this 16 Oct 05:39

rustXterm 0.6.1

First release with macOS (Apple Silicon) artifacts, alongside Linux and Windows, plus the MobaXterm session import.

✨ New Features

  • macOS (Apple Silicon) preview. A native rustXterm.app for aarch64-apple-darwin (macOS 13 Ventura or newer), built by a new platform-macos adapter: ~/Library folders, light/dark following AppleInterfaceStyle, clipboard, notifications, native file dialogs, the macOS Keychain for the optional session-store key, the same-user agent control socket, and /dev/cu.* serial ports. No unsafe code. Ships as rustxterm-0.6.1-macos-arm64.dmg and .tar.gz.
  • Import MobaXterm sessions. On first run, if a MobaXterm.ini is found rustXterm offers to import its sessions (or pick the file yourself); the importer reads the .ini on any OS.

📚 Documentation

  • New RDP connection sequence diagram (trust before credentials; modern TLS/NLA vs legacy TLS or Standard RDP Security), referenced from the RDP guide.
  • READMEs document macOS support, install and the Gatekeeper first-launch step.

📦 Downloads

  • rustxterm-0.6.1-x86_64 portable binary (glibc >= 2.31), rustxterm-0.6.1-x86_64.AppImage, rustxterm-0.6.1-x86_64.tar.gz
  • rustxterm-0.6.1-macos-arm64.dmg and rustxterm-0.6.1-macos-arm64.tar.gz (Apple Silicon)
  • rustxterm-0.6.1-windows-x86_64.zip and rustxterm-0.6.1-x86_64.msi
  • provenance.json, SHA256SUMS

macOS is ad-hoc signed (no Apple Developer ID): on first launch right-click the app and choose Open, or allow it in System Settings → Privacy & Security → Open Anyway. Intel Macs (a universal build) are planned. Windows packages are unsigned (SmartScreen may prompt) and are a preview; verify downloads against SHA256SUMS. macOS and Windows are previews: their end-to-end receipts do not cover this build yet.

Full Changelog: v0.6.0...v0.6.1

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 16 Oct 01:41

rustXterm 0.6.0

This release makes RDP work against legacy Windows servers (tested live against Windows Server 2008 R2), while keeping modern TLS/NLA connections unchanged.

✨ New Features

  • Opt-in Standard RDP Security (RSA key exchange + RC4) for old servers whose Security Layer is "RDP": the server's RSA key is shown in a trust prompt before any credential is sent; None/FIPS are refused and a downgrade guard is enforced.
  • Legacy TLS 1.0/1.1 support (opt-in "Allow legacy TLS") and old-server handshake interop, so servers that reset modern RDP 8 features after login connect cleanly.

🔧 Improvements

  • First-connect resolution: the desktop opens at the size the server grants for the tab, even on servers without dynamic resize.
  • Clean logout: a server Deactivate-All at sign-out ends the session without an error.
  • Smoother input and redraw: pointer positions are coalesced to the latest per frame; batched Share Control PDUs are split and padded-width bitmaps are de-sheared (no more sheared text).
  • Stopped-desktop shortcuts: on a disconnected tab, R reconnects and Ctrl+D/Esc closes it.
  • Credentials: the user field accepts DOMAIN\user and .\user.

🔒 Security

  • Standard RDP Security hardened after code review: RSA-key trust prompt, None/FIPS refused, and a downgrade guard against a server offering weaker security than requested.

📦 Downloads

  • rustxterm-0.6.0-x86_64 portable binary (glibc >= 2.31)
  • rustxterm-0.6.0-x86_64.AppImage
  • rustxterm-0.6.0-x86_64.tar.gz (binary, .desktop, icon, licenses)
  • rustxterm-0.6.0-windows-x86_64.zip and rustxterm-0.6.0-x86_64.msi (preview, unsigned)
  • provenance.json, SHA256SUMS

The Windows zip, executables and MSI are unsigned: Windows SmartScreen may show an "unrecognized app" prompt. Verify the download against SHA256SUMS first. Windows packages are a preview: the Windows end-to-end receipt (docs/gates/windows.md) does not cover this commit.

Full Changelog: v0.5.0...v0.6.0

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 15 Oct 19:17

Release v0.5.0

✨ New Features

  • Terminal color schemes: 13 built-in schemes (rustXterm light/dark, Solarized Dark/Light, Dracula, Gruvbox Dark/Light, Nord, One Dark, Monokai, Tango Dark/Light, xterm), picked globally or per session, with a color swatch preview in the picker.
  • Custom color schemes: drop JSON files into schemes/ next to config.toml (~/.config/rustxterm/schemes/, %APPDATA%\rustxterm\schemes\); invalid, oversized (> 64 KiB) and duplicate-name files are skipped with a log warning.
  • Per-session "Follow UI theme" override, even when the global scheme is fixed.
  • Font zoom shortcuts Ctrl+= / Ctrl++ / Ctrl+- / Ctrl+0 next to Ctrl+wheel; the size is saved (globally, or to the session when it has its own font size), applies to every open tab using it and is restored on the next start.

🔧 Improvements

  • Zoom steps by exactly one point (6 to 48); Ctrl+_ and Ctrl+/ send 0x1f to the shell.
  • Session banner hint lists the keyboard zoom keys.

📚 Documentation

  • Root README kept short; color schemes, custom scheme format and zoom in docs/README.md.
  • New screenshots (Dracula terminal, scheme picker) and refreshed gallery.
  • OpenSpec: add-terminal-color-schemes change.

📦 Downloads

  • rustxterm-0.5.0-x86_64 portable binary (glibc >= 2.31)
  • rustxterm-0.5.0-x86_64.AppImage
  • rustxterm-0.5.0-x86_64.tar.gz (binary, .desktop, icon, licenses)
  • rustxterm-0.5.0-windows-x86_64.zip and rustxterm-0.5.0-x86_64.msi (Windows x86_64, preview, unsigned)
  • SHA256SUMS, provenance.json

Full Changelog: v0.4.0...v0.5.0

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 15 Oct 05:47

Release v0.4.0

✨ New Features

  • Local terminal: the "+" after the last tab (or Ctrl+Shift+T) opens a shell on your own computer, with a MobaXterm-like welcome box (version, user@host, shell, folder, tips).
    • Linux: your login shell ($SHELL, then the passwd shell, then /bin/sh) in $HOME.
    • Windows 10 1809 and later: PowerShell 7, else Windows PowerShell, else cmd, in %USERPROFILE%, through ConPTY, with no console window.
    • Closing the tab ends the shell and what it started (process groups on Linux, a kill-on-close job object on Windows, even if the app is killed). exit shows "Session stopped"; R starts a new shell.
    • Local terminals are never saved, exported, added to recents or logged. Agents (CLI/MCP) only see them in tabs list; every other request is denied and audited.
  • Terminal context menu: Ctrl+right click (or right click when "Paste with right click" is off) opens Copy, Paste, Select all, Find, Save terminal text, Clear scrollback, Reset terminal, Duplicate tab, Reconnect and Close tab.
  • Crash-safe graphics start: if a graphics driver crashes while the window starts, the next launch uses a safer backend (Windows: OpenGL → DirectX 12 → Vulkan → software; Linux: Vulkan → OpenGL → software) and says so. Choose one in Settings › Display › Graphics, or start once with --safe-gpu.

🔧 Improvements

  • Sharper terminal text: the terminal grid is aligned to whole physical pixels, so glyphs are evenly spaced and cell edges, underlines and the cursor are crisp.
  • Terminal replies (device attributes, cursor position) go only to the tab that asked, never to other MultiExec tabs.
  • The "Session stopped" notice always comes after the session's last output, even after a burst of output.
  • The status bar names local terminals ("Local terminal user@host").

🔒 Security

  • Agents cannot read, type into, close or broadcast into local terminals; local tabs in a MultiExec group are skipped and named in the audit record.
  • Local terminal entries in an imported TOML file are refused; the store never saves a local session.

📚 Documentation

  • README and docs: local terminal (shells, folder, containment limits), graphics backend fallback and --safe-gpu.
  • OpenSpec: add-local-shell change; add-windows-port updated for the ConPTY local terminal (receipt row W42).

📦 Downloads

  • rustxterm-0.4.0-x86_64 portable binary (glibc >= 2.31)
  • rustxterm-0.4.0-x86_64.AppImage
  • rustxterm-0.4.0-x86_64.tar.gz (binary, .desktop, icon, licenses)
  • rustxterm-0.4.0-windows-x86_64.zip and rustxterm-0.4.0-x86_64.msi (Windows x86_64, preview, unsigned)
  • SHA256SUMS, provenance.json

Full Changelog: v0.3.1...v0.4.0

v0.3.1

Choose a tag to compare

@github-actions github-actions released this 15 Oct 00:52

Release v0.3.1

✨ New Features

  • SSH sessions have a Terminal type (TERM) select in Terminal settings (xterm-256color, xterm, vt100, vt220, linux, screen-256color, ansi); Telnet uses the same select. Pick vt100 for Cisco gear.
  • "Save password" now works for servers that ask the password through keyboard-interactive (PAM, Cisco IOS/NX-OS): the saved password is reused on the next login and forgotten when rejected.

🔧 Improvements

  • SSH connects to legacy network gear: diffie-hellman-group14-sha1, diffie-hellman-group-exchange-sha1, diffie-hellman-group1-sha1, aes*-cbc and hmac-sha1 are accepted after the modern defaults, so modern servers still negotiate modern algorithms.
  • The SFTP channel is opened at login: the session banner shows "✗ SFTP browser (not offered by the server)" and "✗ Follow terminal folder (needs SFTP)" on servers without SFTP, and the sidebar no longer switches to a failing SFTP page.
  • Session banner indented by 4 columns; the "Session stopped" rule is drawn with red ASCII dashes.
  • New icon for the User sessions root folder.
  • Release: the Windows artifacts always ship; the end-to-end receipt only decides whether they are marked preview.

📚 Documentation

  • README rewritten for new users.

📦 Downloads

  • rustxterm-0.3.1-x86_64 portable binary (glibc >= 2.31)
  • rustxterm-0.3.1-x86_64.AppImage
  • rustxterm-0.3.1-x86_64.tar.gz (binary, .desktop, icon, licenses)
  • rustxterm-0.3.1-windows-x86_64.zip and rustxterm-0.3.1-x86_64.msi (Windows, preview)
  • SHA256SUMS, provenance.json

The Windows zip, executables and MSI are unsigned: Windows SmartScreen may show an "unrecognized app" prompt. Verify the download against SHA256SUMS first. Windows packages are a preview: the Windows end-to-end receipt (docs/gates/windows.md) does not cover this commit.

Full Changelog: v0.3.0...v0.3.1

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 14 Oct 21:20

Release v0.3.0

First public release of rustXterm, a native Rust terminal and remote session manager.

✨ New Features

  • Sessions: SSH (keys, agent, jump hosts, X11 forwarding, tunnels), SFTP, FTP/FTPS, RDP, VNC, Telnet and Serial, in tabs, with an encrypted session store (master password, optional system keyring) organized in folders
  • SFTP side panel that follows the terminal's folder, with Name, Size (KB), Last modified, Owner, Group and Access columns, drag-and-drop upload and a transfer list
  • Remote monitoring bar for SSH tabs: host, CPU with a live graph, RAM, upload/download, uptime and disk usage, collected over the SSH connection without installing anything on the server
  • Quick connect that also searches saved sessions
  • Session import from a MobaXterm.ini file (never passwords) with preview, and TOML export without credentials
  • Agent control: local CLI and MCP server with per-action approval
  • New original flat icon set with 16 folder colors; distribution icons use the official logos
  • Bundled terminal fonts selectable in Settings: Cascadia Mono (default), JetBrains Mono, Hack, DejaVu Sans Mono, Inconsolata, IBM Plex Mono (and Text), Source Code Pro, Fira Mono, Ubuntu Mono and Terminus
  • Light, dark and system themes for every screen

🔧 Improvements

  • Thin bar cursor by default (block and underline remain available)
  • Session folders reopen expanded or collapsed as you left them
  • Exit and closing the window ask before disconnecting live tabs
  • A window saved on a secondary monitor reopens there
  • Windows: renders through OpenGL when a hardware adapter exists (DX12 flickered on Intel graphics)
  • Telnet auto-login waits briefly before typing, so a password can no longer be lost or echoed
  • Import and export are also in the Settings menu; imported sessions no longer warn about an unavailable font
  • Remote monitoring bar is 26 px high with a red close button
  • Home page: Recent sessions in a three-column panel
  • Session banner drawn with an ASCII border
  • Desktop notifications for background transfers and dropped sessions (can be turned off), Open and Show in folder for downloads, per-tab transfer lists, dialogs start in Downloads or the last folder
  • Windows fixes: master password prompt in the CLI, overlapping MCP calls, clear message on elevation mismatch, serial://COM<n> quick connect

🔒 Security

  • rustls 0.23.46 (RUSTSEC-2026-0346, -0347, -0348, -0349)

📦 Downloads

Linux (x86_64, glibc ≥ 2.31):

  • rustxterm-0.3.0-x86_64 — portable binary
  • rustxterm-0.3.0-x86_64.AppImage
  • rustxterm-0.3.0-x86_64.tar.gz — binary, .desktop, icon, licenses
  • SHA256SUMS
  • provenance.json — build provenance

Windows (x86_64, preview):

  • rustxterm-0.3.0-windows-x86_64.zip — portable
  • rustxterm-0.3.0-x86_64.msi — installer

The Windows packages are unsigned (SmartScreen may show an "unrecognized app" prompt; verify against SHA256SUMS first) and not yet covered by the Windows end-to-end check.