What's Changed
Fixed
- Saving a credential to a YubiKey Challenge-Response KeePass database now works (follow-up to issue #350) — 0.22.10 threaded the YubiKey slot through the unlock/read path only, so opening a CR-secured KDBX worked but writing to one still failed: saving an entry reported "KeePassXC did not accept this password", and nested groups were never created.
The write path insecret/status.rshand-built itskeepassxc-cliargv with only--no-password/--key-fileand never-y <slot>, so everyadd,mkdir,rmand theshow/lsprobes tried to unlock the database without the second factor — theaddfailed authentication, and because the parent-groupmkdircalls (whose errors are swallowed by design) failed the same way, the nested groups silently never appeared. All eight write-path functions (save_password_to_kdbx,ensure_rustconn_group,ensure_parent_groups,delete_kdbx_entry,delete_entry_from_kdbx,rename_entry_in_kdbx,get_username_from_kdbx,get_url_from_kdbx) now thread the configured slot and compose the unlock flags through the samepush_unlock_argshelper the read path uses, so a write unlocks with exactly the factors a read does. A related read gap was found and fixed in the same pass:get_password_from_kdbx_exact— the reader used for a custom KeePass entry path (not the defaultRustConn/-prefixed lookup, which was already fixed in 0.22.10) — also omitted the slot, so reading a credential from a custom path on a CR-protected database failed too; it now threads the slot as well. Writes and CR reads that unlock via-yget the longer 30 s touch budget (matching the default read path) instead of the short write budget, and the "did not accept this password" error hint now includes-y <slot>in the reproduction command it prints. Slot composition on theaddargv is covered by new unit tests insecret/status.rs.
Dependencies
- FreeRDP (Flatpak) 3.32.0 → 3.32.1 — a security and regression release — 3.32.1 fixes six further security advisories and a regression from the 3.32.0 hardening that rejected fragmented static-channel PDUs, which broke copy and paste of larger clipboard content in the external FreeRDP client. Bumped in the local Flatpak and Flathub manifests together, with the upstream-published
sha256.
Installation
Flatpak (Recommended)
flatpak install flathub io.github.totoshko88.RustConnSnap
sudo snap install rustconnDebian/Ubuntu (.deb from this release)
sudo dpkg -i rustconn_0.22.11_amd64.deb
sudo apt-get install -f # Install dependencies if neededFedora (.rpm from this release)
sudo dnf install rustconn-0.22.11-1.fc44.x86_64.rpmAppImage
chmod +x RustConn-0.22.11-x86_64.AppImage
./RustConn-0.22.11-x86_64.AppImagemacOS (Homebrew)
brew tap totoshko88/rustconn
brew install rustconn
open $(brew --prefix)/opt/rustconn/RustConn.appAll 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 rustconnArch Linux (AUR)
yay -S rustconnFreeBSD (Ports)
pkg install rustconnFull installation guide: https://github.com/totoshko88/RustConn/blob/main/docs/INSTALL.md