Skip to content

sshkeeper v0.4.1

Choose a tag to compare

@github-actions github-actions released this 06 Sep 04:03
· 32 commits to main since this release

sshkeeper v0.4.1 — Package Install & Version Fixes

This patch release makes native Linux packages authoritative after installation
and exposes the version embedded in the executable.

Package installation now wins over legacy binaries

DEB and RPM installs detect older sshkeeper copies at known legacy paths:

  • /usr/local/bin/sshkeeper;
  • per-user ~/.local/bin/sshkeeper paths discovered from the system account database.

A detected legacy entry is preserved as *.legacy-backup, then its old path is
replaced by a symlink to /usr/bin/sshkeeper. This deliberately handles both
PATH precedence and shells that have already cached the previous executable
path. No database, vault, configuration, SSH key, or other user data is touched.

The migration is idempotent across package upgrades. Removing the package restores
the preserved legacy binary when the redirect is still package-managed; if the
user changed that path while the package was installed, the package leaves the
user's replacement alone and keeps the backup rather than overwriting it.

Version reporting

Both forms are now supported without initializing the database or vault:

sshkeeper --version
sshkeeper version

A v0.4.1 release binary prints:

sshkeeper v0.4.1

The build and release scripts now link the discovered version into the real
cmd.Version symbol instead of the stale main.version target.

Packaging verification

The release gate now tests legacy-path migration and restoration in addition to
the existing Go tests, vet, and cross-platform builds. DEB/RPM packages continue
to contain the exact Linux binary produced for the matching tarball.