Repository navigation
v0.23.2
What's Changed
Fixed
- The high-contrast tab-bar line is neutralised on GTK < 4.22 as well — the override that repaints the tab bar's dividing line in the window tone (so it blends into the content the way Nautilus' does) was wrapped in a
@media (prefers-contrast: more)block, which only GTK 4.22+ parses. On older GTK (4.14 on Ubuntu 24.04, and every distro still shipping it) the whole block was rejected as an unknown@-rule, so a high-contrast session kept libadwaita's lighter rule under the tabs. The override now out-specifies libadwaita's owntabbar .boxrule with awindow tabbar .boxselector instead of a media query, so it wins in both normal and high-contrast modes on every supported GTK (4.14 through 4.24) with no media-query dependency.
Changed
- Compact mode density overhaul — in compact mode the sidebar title ("Connections") is now hidden, header bars shrink from 32 px to 28 px, toolbar buttons from 24 px to 20 px, tab items from 28 px to 24 px (with a proportionally smaller font), sidebar rows from 28 px to 24 px, the search entry from 32 px to 28 px (inner from 26 px to 22 px), popover items from 26 px to 22 px (with a smaller font), the monitoring bar from 22 px to 18 px, and embedded toolbar buttons from 24 px to 20 px. The bottom-bar icon float is fixed by adding explicit box margins and a reduced bar height. Two sidebar header buttons (search, menu) retain their Rust
set_size_requestfloor (28 px on macOS, 44 px on Linux) and are not affected by these CSS changes. - macOS dialog button placement — on macOS, action buttons (Save, Test, Create, Rename, Move, Connect, Export, Import, Apply, etc.) in all custom dialog headers are now placed on the right side (
pack_end) away from the window-close button on the left, reducing the risk of accidentally closing a dialog instead of confirming an action. A newdialog_pack_action()helper indialogs/widgets.rscentralises the platform check (#[cfg(target_os = "macos")]). The connection editor's two-button header (Test + Create) packs the primary action outermost on both platforms. Cancel-only buttons (credential transfer, SSH agent, portable passphrase change) are intentionally left on the start side. 24 files, 26 call sites updated.
Dependencies
- Feature ladder raised — added
adw-1-10andgtk-4-24rungs toCargo.tomlfeatures (pure version-ceiling bumps; the crate does not call any 1.10- or 4.24-specific API). The Homebrew formula, CI release workflow, OBSdebian.rules, OBSREADME.md, and all three Flatpak manifests are updated to match. Flatpak runtime bumped from GNOME 50 to GNOME 51; bundled VTE raised from 0.80.5 to 0.84.1 (the< 0.81ceiling is removed). Themacos-build.shfeature set now includesadw-1-10,gtk-4-24. - Snap migrated to the core26 base (libadwaita 1.8 parity) — the Snap package moves from
base: core24(GNOME 46 platform, libadwaita 1.5 with fallbacks) tobase: core26(thegnome-core26platform, GTK 4.22 and libadwaita 1.8), so the Snap now builds with--features adw-1-8and gains the same AdwSpinner/AdwToggleGroup/AdwShortcutsDialog polish the Flatpak already has. The GTK4-VTE staging and the WebKit-6.0-absence web-embedded drop remain, becausegnome-core26still ships only GTK3-VTE andwebkit2gtk-4.1. - CI runners pinned to
ubuntu-26.04— the 13 Linux jobs inci.ymlare pinned from the floatingubuntu-latesttoubuntu-26.04ahead of GitHub's 2026-10-19 migration, making the runner image explicit instead of letting it flip silently. The release and packaging workflows (release.yml,flatpak.yml,obs-update.yml, …) are intentionally left on their current pins so release artefacts keep their reproducible build base. - Updated: want 0.3.1 → 0.3.2 (transitive, via hyper). Flatpak/Flathub
cargo-sources.jsonregenerated to match. No security advisories affected (cargo deny check advisoriesclean). picky-krb 0.12.5 remains held back for the same reason as 0.23.1: itsGssApiMessageErrorvariant breaks the pinned sspi 0.21.3.
Installation
Flatpak (Recommended)
flatpak install flathub io.github.totoshko88.RustConnSnap
sudo snap install rustconnDebian/Ubuntu (.deb from this release)
sudo dpkg -i rustconn_0.23.2_amd64.deb
sudo apt-get install -f # Install dependencies if neededFedora (.rpm from this release)
sudo dnf install rustconn-0.23.2-1.fc44.x86_64.rpmAppImage
chmod +x RustConn-0.23.2-x86_64.AppImage
./RustConn-0.23.2-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
Verifying your download
Every binary on this release (deb, rpm, AppImage, Flatpak) is covered two ways.
Plain checksums — download SHA256SUMS alongside the asset, then:
sha256sum -c SHA256SUMSSigned build provenance (SLSA, via Sigstore) — proves the file was built by this
workflow from this commit:
gh attestation verify RustConn-0.23.2-x86_64.AppImage --repo totoshko88/RustConn(The snap is signed by the Snap Store; the macOS build is delivered via the Homebrew tap.)