pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/security/keychain
Module Name: pkgsrc
Committed By: vins
Date: Mon Nov 3 16:37:53 UTC 2025
Modified Files:
pkgsrc/security/keychain: Makefile distinfo
pkgsrc/security/keychain/patches: patch-keychain.sh
Log Message:
security/keychain: update to 2.9.8
## keychain 2.9.8 (2 Nov 2025)
This release fixes the release tarball to include all necessary files for building and using keychain.
Bug fixes:
* Fixed release tarball generation to include bash completion script (`completions/keychain.bash`),
Makefile, source files, and other essential components. Previous release (2.9.7) tarball was
missing these files.
* Improved tarball generation to use `git archive` as source of truth, eliminating manual file
inventory and preventing future omissions.
* Updated release logic to use `dist/` directory for archive generation. GitHub workflow plumbing
work for new `/dist` tarball location, associated `Makefile` and CI fixes.
Documentation:
* Added bash completion information to keychain man page (NOTES section).
## keychain 2.9.7 (31 Oct 2025)
This release fixes critical issues with spaces in HOME directories and usernames, and adds official Git Bash on Windows compatibility.
Bug fixes:
* Fixed keychain failures when HOME directory path contains spaces (e.g., `C:\Users\John Doe`).
([#188](https://github.com/danielrobbins/keychain/issues/188))
* Fixed username detection for usernames containing spaces (e.g., "Mathew Binkley" on Windows).
Implemented portable `get_owner()` function using POSIX-defined `ls -ld` output format with
intelligent field parsing to distinguish space-in-username from normal owner/group fields.
* Fixed pidfile generation to properly quote `SSH_AUTH_SOCK` paths containing spaces while
leaving `SSH_AGENT_PID` unquoted (numeric value). Rewrote `write_pidfile()` to use robust
eval-in-subshell approach for extracting variable values from ssh-agent output.
* All pidfile formats (sh/csh/fish) now correctly handle paths with spaces.
* Fixed ssh-agent invocation to always use `-s` option for Bourne-compatible output, simplifying
pidfile generation and improving compatibility across different environments.
([#185](https://github.com/danielrobbins/keychain/issues/185))
Testing and quality improvements:
* Added `scripts/test-space-home.sh` - automated test harness that simulates HOME directories
with spaces and validates proper handling. Returns proper exit codes for CI integration.
* Integrated space-in-home test into GitHub Actions release workflow to prevent regressions.
* Added ShellCheck disable comments with justification for intentional POSIX ls usage.
* Fixed Unicode arrow characters in comments that caused ShellCheck errors.
New features:
* Added bash completion support (`completions/keychain.bash`) with intelligent context-aware
completion for command-line options, SSH keys, GPG keys, and full `--extended` mode support.
Based on work by @mikkoi with significant enhancements for keychain 2.9.x features:
- Dynamically parses `keychain --help` for up-to-date option completion
- Completes SSH key names from `~/.ssh/*.pub` files
- Completes GPG key IDs (8-character short format)
- `--extended` mode: `sshk:<tab>`, `gpgk:<tab>`, `host:<tab>` with prefix completion
- Detects hostnames from `~/.ssh/config` for `host:` completion
- ShellCheck compliant
([#186](https://github.com/danielrobbins/keychain/issues/186))
* Added Makefile targets: `install-completions` and `uninstall-completions` for optional
bash completion installation (separate from default install target).
* Updated RPM spec file (`keychain.spec.in`) for modern distributions:
- Modernized description to focus on OpenSSH and GnuPG (removed obsolete ssh.com/Sun SSH)
- Updated dependencies: `sh-utils` → `coreutils`, added `Recommends: bash-completion`
- Added bash completion installation to RPM package
Documentation:
* Updated keychain.pod with detailed implementation notes for space handling, POSIX compliance,
and the robust eval approach used in pidfile generation.
* Standardized option ordering in keychain.pod to follow Unix convention (short option first,
then long option), ensuring compatibility with bash completion regex patterns.
* Added comprehensive COMPATIBILITY section to keychain.pod documenting:
- Minimum OpenSSH version (7.3+) and supported features
- GnuPG 2.1+ requirements for gpg-agent integration
- Shell compatibility (Bourne/POSIX, csh/tcsh, fish)
- **Git Bash (MSYS2) for Windows** - officially documented as supported platform
- Legacy SSH implementation status (SunSSH, ssh.com)
- Systemd user environment integration
- Spaces in HOME and paths handling details
* Updated README.md with bash completion installation instructions for both system-wide
and user-only installations.
To generate a diff of this commit:
cvs rdiff -u -r1.45 -r1.46 pkgsrc/security/keychain/Makefile
cvs rdiff -u -r1.30 -r1.31 pkgsrc/security/keychain/distinfo
cvs rdiff -u -r1.1 -r1.2 pkgsrc/security/keychain/patches/patch-keychain.sh
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/security/keychain/Makefile
diff -u pkgsrc/security/keychain/Makefile:1.45 pkgsrc/security/keychain/Makefile:1.46
--- pkgsrc/security/keychain/Makefile:1.45 Sun Oct 12 05:25:16 2025
+++ pkgsrc/security/keychain/Makefile Mon Nov 3 16:37:52 2025
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.45 2025/10/12 05:25:16 vins Exp $
+# $NetBSD: Makefile,v 1.46 2025/11/03 16:37:52 vins Exp $
-DISTNAME= keychain-2.9.6
+DISTNAME= keychain-2.9.8
CATEGORIES= security
MASTER_SITES= ${MASTER_SITE_GITHUB:=funtoo/}
Index: pkgsrc/security/keychain/distinfo
diff -u pkgsrc/security/keychain/distinfo:1.30 pkgsrc/security/keychain/distinfo:1.31
--- pkgsrc/security/keychain/distinfo:1.30 Sun Oct 12 05:25:16 2025
+++ pkgsrc/security/keychain/distinfo Mon Nov 3 16:37:52 2025
@@ -1,7 +1,7 @@
-$NetBSD: distinfo,v 1.30 2025/10/12 05:25:16 vins Exp $
+$NetBSD: distinfo,v 1.31 2025/11/03 16:37:52 vins Exp $
-BLAKE2s (keychain-2.9.6.tar.gz) = ca81882467df1dd5b19c3d6ead58394cbef264fbf8fc407487d7416d16b44294
-SHA512 (keychain-2.9.6.tar.gz) = c94d876bfabb2a660ee36bb47712b2ac8bf14e49841fbae94269aec224eed812510bed1cd795763f26b1192d9409380f18f41193a6baac5fa39ddb6331c91e87
-Size (keychain-2.9.6.tar.gz) = 51990 bytes
+BLAKE2s (keychain-2.9.8.tar.gz) = 418dd848d7f6c4bedc8649af5ed2900d8ec0b6c24c58006ca25a7b387782f613
+SHA512 (keychain-2.9.8.tar.gz) = f6677f1e365703bada641757bb7d06d8d578c48fb0350c7e3ea032c6c3b4e725f59fd10800ef02aadbf25e8e973135da5d4d3705270340dc75b6756a736a71af
+Size (keychain-2.9.8.tar.gz) = 61665 bytes
SHA1 (patch-Makefile) = 3d41a10a50c360c1fb63dba4265ba369f6b4a772
-SHA1 (patch-keychain.sh) = 792bb3cd82e36a4b9d4ee48440333917c5ccfe4f
+SHA1 (patch-keychain.sh) = 4b008e458567734f6c3251d9339a1b36d24bca47
Index: pkgsrc/security/keychain/patches/patch-keychain.sh
diff -u pkgsrc/security/keychain/patches/patch-keychain.sh:1.1 pkgsrc/security/keychain/patches/patch-keychain.sh:1.2
--- pkgsrc/security/keychain/patches/patch-keychain.sh:1.1 Sun Jun 1 09:50:26 2025
+++ pkgsrc/security/keychain/patches/patch-keychain.sh Mon Nov 3 16:37:52 2025
@@ -1,4 +1,4 @@
-$NetBSD: patch-keychain.sh,v 1.1 2025/06/01 09:50:26 vins Exp $
+$NetBSD: patch-keychain.sh,v 1.2 2025/11/03 16:37:52 vins Exp $
Handle an empty (or unset) SSH_ASKPASS variable.
@@ -12,10 +12,3 @@ Handle an empty (or unset) SSH_ASKPASS v
if $noguiopt || [ -z "$SSH_ASKPASS" ] || [ -z "$DISPLAY" ]; then
unset DISPLAY # DISPLAY="" can cause problems
unset SSH_ASKPASS # make sure ssh-add doesn't try SSH_ASKPASS
-@@ -1084,4 +1085,4 @@ if wantagent gpg; then
- load_gpg_keys $(echo "${gpgkeys}" | gpg_listmissing)
- fi
-
--qprint # trailing newline
-\ No newline at end of file
-+qprint # trailing newline
Home |
Main Index |
Thread Index |
Old Index