Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Config::Identity(3)   User Contributed Perl Documentation  Config::Identity(3)

NAME
       Config::Identity	- Load (and optionally decrypt via GnuPG) user/pass
       identity	information

VERSION
       version 0.0019

SYNOPSIS
       PAUSE:

	   use Config::Identity::PAUSE;

	   # 1.	Find either $HOME/.pause-identity or $HOME/.pause
	   # 2.	Decrypt	the found file (if necessary), read, and parse it
	   # 3.	Throw an exception unless  %identity has 'user'	and 'password' defined

	   my %identity	= Config::Identity::PAUSE->load_check;
	   print "user:	$identity{user}	password: $identity{password}\n";

       GitHub API:

	   use Config::Identity::GitHub;

	   # 1.	Find either $HOME/.github-identity or $HOME/.github
	   # 2.	Decrypt	the found file (if necessary) read, and	parse it
	   # 3.	Throw an exception unless %identity has	'login'	and 'token' defined

	   my %identity	= Config::Identity::PAUSE->load_check;
	   print "login: $identity{login} token: $identity{token}\n";

DESCRIPTION
       Config::Identity	is a tool for loading (and optionally decrypting via
       GnuPG) user/pass	identity information

       For GitHub API access, an identity is a "login"/"token" pair

       For PAUSE access, an identity is	a "user"/"password" pair

USAGE
   %identity = Config::Identity->load_best( <stub> )
       First attempt to	load an	identity from $HOME/.<stub>-identity

       If that file does not exist, then attempt to load an identity from
       $HOME/.<stub>

       The file	may be optionally GnuPG	encrypted

       %identity will be populated like	so:

	   <key> <value>

       For example:

	   username alice
	   password hunter2

       If an identity file can't be found or read, the method croaks.

   %identity = Config::Identity->load_check( <stub>, <checker> )
       Works like "load_best" but also checks for required keys.  The
       "checker" argument must be an array reference of	required keys or a
       code reference that takes a hashref of key/value	pairs from the
       identity	file and returns a list	of missing keys.  For convenience, the
       hashref will also be placed in $_.

       If any keys are found missing, the method croaks.

Using a	custom "gpg" or	passing	custom arguments
       You can specify a custom	"gpg" executable by setting the	CI_GPG
       environment variable

	   export CI_GPG="$HOME/bin/gpg"

       You can pass custom arguments by	setting	the CI_GPG_ARGUMENTS
       environment variable

	   export CI_GPG_ARGUMENTS="--no-secmem-warning"

Encrypting your	identity information with GnuPG
       If you've never used GnuPG before, first	initialize it:

	   # Follow the	prompts	to create a new	key for	yourself
	   gpg --gen-key

       To encrypt your GitHub identity with GnuPG using	the above key:

	   # Follow the	prompts, using the above key as	the "recipient"
	   # Use ^D once you've	finished typing	out your authentication	information
	   gpg -ea > $HOME/.github

Caching	your GnuPG secret key via gpg-agent
       Put the following in your .*rc

	   if which gpg-agent 1>/dev/null
	   then
	       if test -f $HOME/.gpg-agent-info	&& \
		   kill	-0 `cut	-d: -f 2 $HOME/.gpg-agent-info`	2>/dev/null
	       then
		   . "${HOME}/.gpg-agent-info"
		   export GPG_AGENT_INFO
	       else
		   eval	`gpg-agent --daemon --write-env-file "${HOME}/.gpg-agent-info"`
	       fi
	   else
	   fi

PAUSE identity format
	   user	<user>
	   password <password>

       "username" can also be used as alias for	"user"

GitHub identity	format
	   login <login>
	   token <token>

SUPPORT
   Bugs	/ Feature Requests
       Please report any bugs or feature requests through the issue tracker at
       <http://rt.cpan.org/Public/Dist/Display.html?Name=Config-Identity>.
       You will	be notified automatically of any progress on your issue.

   Source Code
       This is open source software.  The code repository is available for
       public review and contribution under the	terms of the license.

       <https://github.com/dagolden/Config-Identity>

	 git clone https://github.com/dagolden/Config-Identity.git

AUTHOR
       Robert Krimen <robertkrimen@gmail.com>

CONTRIBUTOR
       David Golden <dagolden@cpan.org>

COPYRIGHT AND LICENSE
       This software is	copyright (c) 2010 by Robert Krimen.

       This is free software; you can redistribute it and/or modify it under
       the same	terms as the Perl 5 programming	language system	itself.

perl v5.24.1			  2016-11-20		   Config::Identity(3)

NAME | VERSION | SYNOPSIS | DESCRIPTION | USAGE | Using a custom "gpg" or passing custom arguments | Encrypting your identity information with GnuPG | Caching your GnuPG secret key via gpg-agent | PAUSE identity format | GitHub identity format | SUPPORT | AUTHOR | CONTRIBUTOR | COPYRIGHT AND LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Config::Identity&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help