From: Junio C Hamano <gitster@pobox.com>
To: "Jonas Brandstötter" <jonas.brandstoetter@gmx.at>
Cc: git@vger.kernel.org, Fabian Stelzer <fs@gigacodes.de>,
Patrick Steinhardt <ps@pks.im>
Subject: Re: [PATCH] gpg-interface: expand gpg.program as a path
Date: Mon, 14 Jul 2025 10:10:44 -0700 [thread overview]
Message-ID: <xmqqy0sqsnor.fsf@gitster.g> (raw)
In-Reply-To: <20250711232348.460804-1-jonas.brandstoetter@gmx.at> ("Jonas Brandstötter"'s message of "Sat, 12 Jul 2025 01:23:47 +0200")
Jonas Brandstötter <jonas.brandstoetter@gmx.at> writes:
> This allows using a custom gpg program under the user's home directory
> by specifying a path starting with '~'
>
> [gpg]
> program = "~/.local/bin/mygpg"
>
> Signed-off-by: Jonas Brandstötter <jonas.brandstoetter@gmx.at>
> ---
> First time interacting with a project via a mailing list. Do let me know if
> I did something very dumb.
Thanks. The update to the codumentation to explicitly say that the
variable is about "pathname" is a very nice touch, and the code
change is trivially correct, I guess.
I wonder if we can have some test to protect this feature from
broken by mistake, though.
> Documentation/config/gpg.adoc | 2 +-
> gpg-interface.c | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/config/gpg.adoc b/Documentation/config/gpg.adoc
> index 5cf32b179d..240e46c050 100644
> --- a/Documentation/config/gpg.adoc
> +++ b/Documentation/config/gpg.adoc
> @@ -1,5 +1,5 @@
> gpg.program::
> - Use this custom program instead of "`gpg`" found on `$PATH` when
> + Pathname of the program to use instead of "`gpg`" when
> making or verifying a PGP signature. The program must support the
> same command-line interface as GPG, namely, to verify a detached
> signature, "`gpg --verify $signature - <$file`" is run, and the
> diff --git a/gpg-interface.c b/gpg-interface.c
> index 0896458de5..3dfbc45385 100644
> --- a/gpg-interface.c
> +++ b/gpg-interface.c
> @@ -783,7 +783,7 @@ static int git_gpg_config(const char *var, const char *value,
>
> if (fmtname) {
> fmt = get_format_by_name(fmtname);
> - return git_config_string((char **) &fmt->program, var, value);
> + return git_config_pathname((char **) &fmt->program, var, value);
> }
>
> return 0;
>
> base-commit: a30f80fde927d70950b3b4d1820813480968fb0d
> --
> 2.50.1
next prev parent reply other threads:[~2025-07-14 17:10 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-11 15:04 [BUG] gpg.program: '~' not expanded to home directory Ross MacArthur
2025-07-11 23:23 ` [PATCH] gpg-interface: expand gpg.program as a path Jonas Brandstötter
2025-07-14 17:10 ` Junio C Hamano [this message]
2025-07-22 19:09 ` [PATCH v2 0/2] " Jonas Brandstötter
2025-07-22 20:28 ` Junio C Hamano
2025-07-22 19:09 ` [PATCH v2 1/2] " Jonas Brandstötter
2025-07-22 19:09 ` [PATCH v2 2/2] t7510: add test cases for non-absolute gpg program Jonas Brandstötter
2025-07-25 4:30 ` Jeff King
2025-07-25 5:13 ` Jeff King
2025-07-29 0:05 ` Junio C Hamano
2025-07-29 7:12 ` Jeff King
2025-07-29 15:06 ` Junio C Hamano
2025-07-12 0:05 ` [BUG] gpg.program: '~' not expanded to home directory Junio C Hamano
2025-07-12 9:38 ` Andreas Schwab
2025-07-12 14:08 ` Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xmqqy0sqsnor.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=fs@gigacodes.de \
--cc=git@vger.kernel.org \
--cc=jonas.brandstoetter@gmx.at \
--cc=ps@pks.im \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.