Skip to content

v0.19.18

Choose a tag to compare

@github-actions github-actions released this 09 Aug 10:43
· 2 commits to main since this release

What's Changed

Fixed

  • Renaming a connection now updates the credential entry in the password vault (issue #263) — when a connection was renamed, the rename logic for the secret backend already existed but failures were silently logged with tracing::warn, leaving the user unaware that KeePassXC (or any other vault) rejected the operation. The rename callback now shows an error toast so the user can take action (e.g. unlock the database or rename manually). Additionally, the Cloud Sync apply paths (both Simple Sync and Group Sync) did not trigger credential rename when a synced connection arrived with a new name — the local vault entry stayed under the old name-based key and subsequent password lookups failed. Both apply_simple_sync_result and apply_group_merge_result now detect name changes on incoming connection updates and migrate the vault entry before persisting the rename.

  • System Keyring: password collision for same-named connections in different groups (issue #264) — the libsecret/keyring backend stored credentials under a flat key "{name} ({protocol})", which meant two connections named "admin" in different groups (e.g. oracle/admin and pve/admin) would overwrite each other's password. The keyring key format is now hierarchical: "RustConn/{group_path}/{name} ({protocol})" (e.g. "RustConn/oracle/admin (ssh)"). This also uses / as the path separator, which allows KDE Wallet to map entries into visual folder hierarchies. Existing credentials stored under the old flat key are transparently migrated on first retrieval.

  • KeePass database password in keyring no longer uses a generic entry name (issue #265) — the keyring entry for the KDBX unlock password was stored under the generic key "kdbx-password" with label "KeePass Database Password", which could collide with other applications. The key is now "rustconn/kdbx-password" and the label is "RustConn: KeePass Database Password". Existing entries are transparently migrated on first retrieval.

Changed

  • System Keyring credential keys are migrated on first access — credentials stored under the pre-0.19.18 flat key format ("admin (ssh)") are automatically found via fallback lookup and re-stored under the new hierarchical key ("RustConn/group/admin (ssh)"). The migration is transparent and requires no user action. Note: downgrading to a version older than 0.19.18 after migration will require re-entering passwords, since older versions do not know the new key format.

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.19.18_amd64.deb
sudo apt-get install -f  # Install dependencies if needed

Fedora (.rpm from this release)

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

AppImage

chmod +x RustConn-0.19.18-x86_64.AppImage
./RustConn-0.19.18-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