Skip to content

v0.15.12

Latest

Choose a tag to compare

@github-actions github-actions released this 09 Jun 13:17

What's Changed

Fixed

macOS

  • SSH password authentication always failed with "Permission denied" (#175) — on macOS the terminal uses a hand-rolled native PTY (VTE's spawn_async does not connect the PTY to the child on the Homebrew build). The spawned child was given the PTY slave as stdin/stdout/stderr but never made it the controlling terminal. Since ssh reads the password from /dev/tty (not stdin) and RustConn disables askpass on macOS (SSH_ASKPASS_REQUIRE=never, #161), ssh could not read the password, tried an empty one three times, and failed with Permission denied (publickey,password). The same affected ssh typed manually in a Local Shell tab. The child is now placed in a new session via setsid(2) and claims the slave PTY as its controlling terminal via TIOCSCTTY, so interactive password prompts work. setsid(2) also supplies the process-group leadership previously set by process_group(0), so job control (Ctrl-C) is preserved.

Changed

  • New rustconn-pty-sys crate — the controlling-terminal setup needs pre_exec (an unsafe API), which conflicts with the workspace-wide unsafe_code = "forbid". Per the project's M-UNSAFE guideline, the FFI is isolated in a small dedicated crate that exposes a single safe set_controlling_terminal() function with a documented safety contract. The main crates keep unsafe_code = "forbid" untouched.

Dependencies

  • Updated uuid 1.23.2 → 1.23.3
  • Updated wasm-bindgen 0.2.122 → 0.2.123 and the related js-sys 0.3.99 → 0.3.100, web-sys 0.3.99 → 0.3.100, wasm-bindgen-futures 0.4.72 → 0.4.73 (transitive)

Installation

Flatpak (Recommended)

flatpak install flathub io.github.totoshko88.RustConn

Snap

sudo snap install rustconn

Debian/Ubuntu (.deb from this release)

sudo dpkg -i rustconn_0.15.12_amd64.deb
sudo apt-get install -f  # Install dependencies if needed

Fedora (.rpm from this release)

sudo dnf install rustconn-0.15.12-1.fc44.x86_64.rpm

AppImage

chmod +x RustConn-0.15.12-x86_64.AppImage
./RustConn-0.15.12-x86_64.AppImage

macOS (Homebrew)

brew tap totoshko88/rustconn
brew install rustconn
open $(brew --prefix)/opt/rustconn/RustConn.app

All dependencies (GTK4, libadwaita, VTE, Adwaita icons) are installed automatically.
Requires macOS 13 (Ventura) or later.

OBS Repositories

Packages available at: https://build.opensuse.org/package/show/home:totoshko88:rustconn/rustconn

# Debian 13 (Trixie)
echo 'deb http://download.opensuse.org/repositories/home:/totoshko88:/rustconn/Debian_13/ /' \
  | sudo tee /etc/apt/sources.list.d/rustconn.list
curl -fsSL https://download.opensuse.org/repositories/home:/totoshko88:/rustconn/Debian_13/Release.key \
  | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/rustconn.gpg > /dev/null
sudo apt update && sudo apt install rustconn

# Ubuntu 24.04 LTS (Noble)
echo 'deb http://download.opensuse.org/repositories/home:/totoshko88:/rustconn/xUbuntu_24.04/ /' \
  | sudo tee /etc/apt/sources.list.d/rustconn.list
curl -fsSL https://download.opensuse.org/repositories/home:/totoshko88:/rustconn/xUbuntu_24.04/Release.key \
  | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/rustconn.gpg > /dev/null
sudo apt update && sudo apt install rustconn

# Ubuntu 26.04 LTS (Resolute)
echo 'deb http://download.opensuse.org/repositories/home:/totoshko88:/rustconn/xUbuntu_26.04/ /' \
  | sudo tee /etc/apt/sources.list.d/rustconn.list
curl -fsSL https://download.opensuse.org/repositories/home:/totoshko88:/rustconn/xUbuntu_26.04/Release.key \
  | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/rustconn.gpg > /dev/null
sudo apt update && sudo apt install rustconn

# Fedora 44
sudo dnf config-manager addrepo --from-repofile=https://download.opensuse.org/repositories/home:/totoshko88:/rustconn/Fedora_44/home:totoshko88:rustconn.repo
sudo dnf install rustconn

# Fedora 43
sudo dnf config-manager addrepo --from-repofile=https://download.opensuse.org/repositories/home:/totoshko88:/rustconn/Fedora_43/home:totoshko88:rustconn.repo
sudo dnf install rustconn

# openSUSE Tumbleweed
sudo zypper ar https://download.opensuse.org/repositories/home:/totoshko88:/rustconn/openSUSE_Tumbleweed/ rustconn
sudo zypper ref && sudo zypper in rustconn

# openSUSE Leap 16.0
sudo zypper ar https://download.opensuse.org/repositories/home:/totoshko88:/rustconn/openSUSE_Leap_16.0/ rustconn
sudo zypper ref && sudo zypper in rustconn

Arch Linux (AUR)

yay -S rustconn

FreeBSD (Ports)

pkg install rustconn

Full installation guide: https://github.com/totoshko88/RustConn/blob/main/docs/INSTALL.md