gpg: Don't git-ignore ~/.gnupg

Tags: public
gpg: Set PINENTRY_PROGRAM for gpg-agent

Set it to pinentry-curses for Mac and Linux.

Tags: public
bashrc: Fix PROMPT_COMMAND on Mac

Mac sets PROMPT_COMMAND='update_terminal_cwd; '. In particular, a space
follows the ';'.

Tags: public
profile/macports: Modify PATH earlier

Some scripts in ~/.profile.d rely on binaries installed by MacPorts.
Therefore, rename 40-macports.sh to 20-macports.sh so it gets loaded
earlier.

Tags: public
gpg: Move some vars from GPG namespace to kw_gpg namespace

Rename
    GPG_AGENT_LOCK -> kw_gpg_agent_lock
    GPG_AGENT_ENV -> kw_gpg_agent_env_file

Tags: public
gpg: Move shared code from ~/.profile.d -> ~/lib/bash/kiwi/gpg.bash

This patch creates a new bash library, '~/lib/bash/kiwi/gpg.bash', that
contains the core logic from '~/.profile.d/40-gpg.sh`. This will enable
git hooks and other shell scripts to reuse the code that was in
'~/.profile.d/40-gpg.sh'.

Tags: public