Compare commits
67 commits
epel8-play
...
rawhide
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f395d6bed2 | ||
|
|
0a4ece9cee | ||
|
|
698ae930ce | ||
|
|
da50187361 | ||
|
|
98851915e6 | ||
|
|
0dacf4875b | ||
|
|
99593db08d | ||
|
|
cbd48f0374 | ||
|
|
d53d86a12a | ||
|
|
884ced839f | ||
|
|
8d50b527c4 | ||
|
|
726f28a1d0 | ||
|
|
7c5e416452 | ||
|
|
b2052ba328 | ||
|
|
3beaeeff4f | ||
|
|
3317cea458 | ||
|
|
bc1c51f126 | ||
|
|
3ca424bb0a | ||
|
|
0ef670631f | ||
|
|
467bbe7780 | ||
|
|
35e05b1e75 | ||
|
|
292bed7aa2 | ||
|
|
a885a65667 | ||
|
|
131ff2e26d | ||
|
|
f262fbe7cf | ||
|
|
c264fbbb59 | ||
|
|
576d0695dd | ||
|
|
bf2d5a0b42 | ||
|
|
3ebec095c5 | ||
|
|
059ebee916 | ||
|
|
2ee34ac368 | ||
|
|
e40990f977 | ||
|
|
e537633454 | ||
|
|
08d3e51c3d | ||
|
|
82207fe437 |
||
|
|
72514fe8e4 | ||
|
|
ab0d64d033 | ||
|
|
bb4940cbde | ||
|
|
9fc587d382 | ||
|
|
b2993f682d | ||
|
|
95a608c85d | ||
|
|
383c77d418 | ||
|
|
7870c654a8 | ||
|
|
42ba92aca5 | ||
|
|
12c78a65bb | ||
|
|
5e059a7ce7 | ||
|
|
96d1d63f27 | ||
|
|
e73fc61cb9 | ||
|
|
2aed8c0bcb | ||
|
|
6e0b8c4456 | ||
|
|
1a678a5483 | ||
|
|
5eb9ca9901 | ||
|
|
d8db74cb9c | ||
|
|
c465cd678b | ||
|
|
4724e90a7e | ||
|
|
98172a327b | ||
|
|
4ca63e9992 | ||
|
|
10787657de | ||
|
|
becb5414a3 | ||
|
|
eb173309b3 | ||
|
|
bcb224fe08 | ||
|
|
3a1f6fd432 | ||
|
|
24d7760457 | ||
|
|
8168ce7244 | ||
|
|
19b747607e | ||
|
|
1ed844d366 | ||
|
|
b5e756be8e |
8 changed files with 169 additions and 21 deletions
5
.gitignore
vendored
Normal file
5
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
keychain-2.6.8.tar.bz2
|
||||
/keychain-2.8.0.tar.bz2
|
||||
/keychain-2.8.5.tar.gz
|
||||
/keychain-2.9.2.tar.gz
|
||||
/keychain-2.9.8.tar.gz
|
||||
21
Makefile
21
Makefile
|
|
@ -1,21 +0,0 @@
|
|||
# Makefile for source rpm: keychain
|
||||
# $Id$
|
||||
NAME := keychain
|
||||
SPECFILE = $(firstword $(wildcard *.spec))
|
||||
|
||||
define find-makefile-common
|
||||
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
|
||||
endef
|
||||
|
||||
MAKEFILE_COMMON := $(shell $(find-makefile-common))
|
||||
|
||||
ifeq ($(MAKEFILE_COMMON),)
|
||||
# attept a checkout
|
||||
define checkout-makefile-common
|
||||
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
|
||||
endef
|
||||
|
||||
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
|
||||
endif
|
||||
|
||||
include $(MAKEFILE_COMMON)
|
||||
42
README.Fedora
Normal file
42
README.Fedora
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
README.Fedora - keychain opt-in
|
||||
|
||||
keychain is a manager for both ssh-agent and gpg-agent. It allows your shells
|
||||
and cron jobs to share a single ssh-agent or gpg-agent process. keychain
|
||||
typically runs from the login shell environment setting, i.e. ~/.bash_profile
|
||||
when using bash or ~/.login when running a tcsh shell. It's general usage and
|
||||
different options are documented in keychain(1).
|
||||
|
||||
Installed from Fedora keychain can be easily activated by simply touching an
|
||||
empty ~/.keychainrc file when using either bash, sh, ksh, zsh, csh or tcsh.
|
||||
This will let the user's shell invoke a default setup of keychain where it
|
||||
loads all user's ssh keys from ~/.ssh/ to an ssh-agent process. gpg keys are
|
||||
not loaded by default as the necessary gpg-agent is not part of the Fedora Core
|
||||
gnupg package, but provided by the additional gnupg2 package of Fedora. The
|
||||
default setup starts keychain in quiet mode, so only messages are printed out
|
||||
in case of warnings, errors or if interactivity is required.
|
||||
|
||||
To override the default settings with which keychain is activated when
|
||||
the shell environment finds a ~/.keychainrc, the user can customize following
|
||||
variables by setting them inside the ~/.keychainrc.
|
||||
|
||||
KCHOPTS=""
|
||||
This variable takes options for keychain like "--nocolor" or "--noask".
|
||||
Please see the keychain manpage for a full list.
|
||||
SSHKEYS=""
|
||||
Instead of loading all keys the user can list those keys to be loaded by
|
||||
their file names. The key list has to be space separated.
|
||||
GPGKEYS=""
|
||||
gpg keys to be loaded by keychain have to be specified by their key ID.
|
||||
The user can get a full list of keys and IDs in his secret keyring by
|
||||
running `gpg --list-secret-keys'. GPGKEYS defines a single key ID or a
|
||||
space separated list of key IDs.
|
||||
|
||||
Please be aware that you still need to source the keychain file with the
|
||||
ssh-agent environment variables along with the crontab entry when you want
|
||||
to make use of ssh public key auth or of gpg signing through cron jobs,
|
||||
because cron uses a non-interactive shell and has a limited environment set.
|
||||
|
||||
Note: This opt-in is not part of keychain, which is originally written by
|
||||
Daniel Robbins <drobbins@gentoo.org>, but added to the Fedora package of
|
||||
keychain to allow Fedora users an overall ease of use.
|
||||
|
||||
34
keychain.csh
Executable file
34
keychain.csh
Executable file
|
|
@ -0,0 +1,34 @@
|
|||
# /etc/profile.d/keychain.csh - calling keychain the Fedora way
|
||||
# read in user's keychain settings or use defaults running keychain
|
||||
|
||||
set userhome = `getent passwd $USER | cut -d: -f6`
|
||||
if ( "$HOME" == "$userhome" && -f "$HOME/.keychainrc" ) then
|
||||
|
||||
eval `grep -v '^[:blank:]*#' $HOME/.keychainrc | \
|
||||
sed 's|\([^=]*\)=\([^=]*\)|set \1 = \2|g' | sed 's|$|;|'`
|
||||
|
||||
if (! $?KCHOPTS) then
|
||||
set KCHOPTS = "--quiet"
|
||||
endif
|
||||
if (! $?prompt) then
|
||||
set KCHOPTS = ( $KCHOPTS --noask )
|
||||
endif
|
||||
if (! $?SSHKEYS) then
|
||||
set SSHKEYS = `grep -s -l -e '[DRS]S[AH] PRIVATE KEY' $HOME/.ssh/*`
|
||||
endif
|
||||
if (! $?GPGKEYS) then
|
||||
set GPGKEYS = ""
|
||||
endif
|
||||
|
||||
keychain $KCHOPTS $SSHKEYS $GPGKEYS
|
||||
|
||||
set host = `uname -n`
|
||||
if (-f $HOME/.keychain/$host-csh) then
|
||||
source $HOME/.keychain/$host-csh
|
||||
endif
|
||||
if (-f $HOME/.keychain/$host-csh-gpg) then
|
||||
source $HOME/.keychain/$host-csh-gpg
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
34
keychain.sh
Executable file
34
keychain.sh
Executable file
|
|
@ -0,0 +1,34 @@
|
|||
#
|
||||
# /etc/profile.d/keychain.sh - calling keychain the Fedora way
|
||||
# read in user's keychain settings or use defaults running keychain
|
||||
|
||||
# Don't do anything if we're already done.
|
||||
[ -n "$KEYCHAIN_DONE" ] && return
|
||||
|
||||
userhome=$(getent passwd "$USER" | cut -d: -f6)
|
||||
if [ "$HOME" = "$userhome" ] && [ -f "$HOME/.keychainrc" ]; then
|
||||
|
||||
. "$HOME/.keychainrc"
|
||||
[ -n "$KCHOPTS" ] || KCHOPTS="--quiet"
|
||||
case $- in
|
||||
*i*) ;;
|
||||
*) KCHOPTS="$KCHOPTS --noask" ;;
|
||||
esac
|
||||
[ -n "$SSHKEYS" ] || SSHKEYS=$(grep -s -l -e '[DRS]S[AH] PRIVATE KEY' \
|
||||
"$HOME/.ssh/*")
|
||||
[ -n "$GPGKEYS" ] || GPGKEYS=""
|
||||
|
||||
keychain $KCHOPTS $SSHKEYS $GPGKEYS
|
||||
|
||||
host=$(uname -n)
|
||||
[ -f "$HOME/.keychain/$host-sh" ] && \
|
||||
. "$HOME/.keychain/$host-sh"
|
||||
[ -f "$HOME/.keychain/$host-sh-gpg" ] && \
|
||||
. "$HOME/.keychain/$host-sh-gpg"
|
||||
|
||||
unset KCHOPTS SSHKEYS GPGKEYS host
|
||||
|
||||
KEYCHAIN_DONE=1
|
||||
fi
|
||||
|
||||
unset userhome
|
||||
52
keychain.spec
Normal file
52
keychain.spec
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
Name: keychain
|
||||
Summary: Agent manager for OpenSSH, ssh.com, Sun SSH, and GnuPG
|
||||
Version: 2.9.8
|
||||
Release: %autorelease
|
||||
License: GPL-2.0-only
|
||||
URL: https://github.com/danielrobbins/keychain
|
||||
Source0: https://github.com/funtoo/keychain/archive/%{version}/keychain-%{version}.tar.gz
|
||||
Source1: keychain.sh
|
||||
Source2: keychain.csh
|
||||
Source3: README.Fedora
|
||||
BuildArch: noarch
|
||||
BuildRequires: make
|
||||
BuildRequires: perl-podlators
|
||||
Requires: findutils
|
||||
|
||||
|
||||
%description
|
||||
Keychain is a manager for OpenSSH, ssh.com, Sun SSH and GnuPG agents.
|
||||
It acts as a front-end to the agents, allowing you to easily have one
|
||||
long-running agent process per system, rather than per login session.
|
||||
This dramatically reduces the number of times you need to enter your
|
||||
passphrase from once per new login session to once every time your
|
||||
local machine is rebooted.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
sed -i -e 's|/usr/ucb:||' keychain.sh
|
||||
|
||||
%build
|
||||
make keychain keychain.1
|
||||
|
||||
%install
|
||||
rm -rf %{buildroot}
|
||||
mkdir -p %{buildroot}%{_bindir}
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/profile.d
|
||||
mkdir -p %{buildroot}%{_mandir}/man1
|
||||
install -pm 755 keychain %{buildroot}%{_bindir}/keychain
|
||||
install -pm 644 %{SOURCE1} %{buildroot}%{_sysconfdir}/profile.d/keychain.sh
|
||||
install -pm 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/profile.d/keychain.csh
|
||||
install -pm 644 keychain.1 %{buildroot}%{_mandir}/man1
|
||||
install -pm 644 %{SOURCE3} README.Fedora
|
||||
|
||||
%files
|
||||
%doc ChangeLog.md README.md README.Fedora
|
||||
%license COPYING.txt
|
||||
%config(noreplace) %{_sysconfdir}/profile.d/keychain.sh
|
||||
%config(noreplace) %{_sysconfdir}/profile.d/keychain.csh
|
||||
%{_bindir}/keychain
|
||||
%{_mandir}/man1/keychain.1*
|
||||
|
||||
%changelog
|
||||
%autochangelog
|
||||
2
sources
2
sources
|
|
@ -0,0 +1,2 @@
|
|||
SHA512 (keychain-2.9.2.tar.gz) = 1b4aa06037cb3f89f4cfa6a4c1a1104ca6a757175a636043b7fb4776773a81f20b38b058b86618b8e6b89cf7c61af86e6441da70ed92b0c18d31fb50b3dd8a96
|
||||
SHA512 (keychain-2.9.8.tar.gz) = f6677f1e365703bada641757bb7d06d8d578c48fb0350c7e3ea032c6c3b4e725f59fd10800ef02aadbf25e8e973135da5d4d3705270340dc75b6756a736a71af
|
||||
Loading…
Add table
Add a link
Reference in a new issue