[pacman-dev] [PATCH] Create pacman keyring directory if missing

Denis A. Altoé Falqueto denisfalqueto at gmail.com
Thu Mar 24 21:00:43 EDT 2011

On Thu, Mar 24, 2011 at 8:05 PM, Ray Kohler <ataraxia937 at gmail.com> wrote:
> Signed-off-by: Ray Kohler <ataraxia937 at gmail.com>
> ---
>  scripts/pacman-key.sh.in |    6 ++++++
>  1 files changed, 6 insertions(+), 0 deletions(-)
> diff --git a/scripts/pacman-key.sh.in b/scripts/pacman-key.sh.in
> index 5746e64..ccc7f92 100644
> --- a/scripts/pacman-key.sh.in
> +++ b/scripts/pacman-key.sh.in
> @@ -246,6 +246,12 @@ if [[ GPGDIR=$(find_config "GPGDir") == 0 ]]; then
>  fi
>  GPG_PACMAN="gpg --homedir ${PACMAN_KEYRING_DIR}"
> +# Try to create $PACMAN_KEYRING_DIR if non-existent
> +# Check for simple existence rather than for a directory as someone may want
> +# to use a symlink here
> +# Force mode 700 as gpg complains if any group or other access is present
> +[[ -e ${PACMAN_KEYRING_DIR} ]] || mkdir -p -m 700 "${PACMAN_KEYRING_DIR}"
> +
>  # Parse and execute command
>  command="$1"
>  if [[ -z "${command}" ]]; then
> --

Hi, Ray.

I would like to say that the creation of the directory was originally
a feature of pacman-key. But Allan suggested to move the
responsibility to the makefile of pacman, so the keyring would be
created empty by the build system. It is yet a TODO item, indeed. So,
it's the distribution duty to package it the way it fits better for

By the other hand, I was thinking about that while writing this
message, and I think that you are right. pacman-key should generate an
empty keyring if there is not one. If we leave to a package, it could
bet messy if the user tries to reinstall the package or if there is an
update for it. It would generate unnecessary .pacnew files for each
one in the keyring. pacman-key already has a feature to add and remove
keys from keyrings made specifically for that purpose.

A: Because it obfuscates the reading.
Q: Why is top posting so bad?

Denis A. Altoe Falqueto
Linux user #524555

More information about the pacman-dev mailing list