[PATCH] build-aux/announce-gen: Use Release keyrings on Savannah for GnuPG

2022-03-07 Thread Darshit Shah
 Okay, I decided to take the easy way out and wrote this patch instead. The URL
 was too long and ugly in the --help output, so I'm glad to remove it from
 there.
-- >8 --

* build-aux/announce-gen: The default SKS Keyserver pool for GnuPG Keys was
deprecated and has been offline since the middle of 2021. The default
keyserver: keys.gnupg.net was just a mirror of the SKS Pool and is thus
offline as well. Instead, use the Release Keyring on Savannah to list the
GnuPG Keys used to sign releases for that project and import the entire
keyring. A new option --gpg-keyring-url is provided for projects that don't
use Savannah or maintain their keyring elsewhere
---
 ChangeLog  | 11 +++
 build-aux/announce-gen |  9 -
 2 files changed, 19 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index e3f0ed216c..c2ea26f5ca 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2022-03-08  Darshit Shah  
+
+   build-aux/announce-gen: Use Release keyrings on Savannah for GnuPG
+   * build-aux/announce-gen: The default SKS Keyserver pool for GnuPG Keys 
was
+   deprecated and has been offline since the middle of 2021. The default
+   keyserver: keys.gnupg.net was just a mirror of the SKS Pool and is thus
+   offline as well. Instead, use the Release Keyring on Savannah to list 
the
+   GnuPG Keys used to sign releases for that project and import the entire
+   keyring. A new option --gpg-keyring-url is provided for projects that 
don't
+   use Savannah or maintain their keyring elsewhere
+
 2022-03-07  Pádraig Brady  
 
fcntl-h: add AT_NO_AUTOMOUNT
diff --git a/build-aux/announce-gen b/build-aux/announce-gen
index 5c35e3d564..ff6d226ad5 100755
--- a/build-aux/announce-gen
+++ b/build-aux/announce-gen
@@ -90,6 +90,8 @@ The following are optional:
 VERSION is the result of running git describe
 in the gnulib source directory.
 required if gnulib is in TOOL_LIST.
+   --gpg-keyring-url=URLURL pointing to the GnuPG Keyring containing
+the key used to sign the tarballs
--no-print-checksums do not emit SHA1 or SHA256 checksums
--archive-suffix=SUF add SUF to the list of archive suffixes
--mail-headers=HEADERS   a space-separated list of mail headers, e.g.,
@@ -377,6 +379,7 @@ sub get_tool_versions ($$)
   my $bootstrap_tools;
   my $gnulib_version;
   my $print_checksums_p = 1;
+  my $gpg_keyring_url;
 
   # Reformat the warnings before displaying them.
   local $SIG{__WARN__} = sub
@@ -395,6 +398,7 @@ sub get_tool_versions ($$)
  'previous-version=s' => \$prev_version,
  'current-version=s'  => \$curr_version,
  'gpg-key-id=s'   => \$gpg_key_id,
+ 'gpg-keyring-url=s'  => \$gpg_keyring_url,
  'url-directory=s'=> \@url_dir_list,
  'news=s' => \@news_file,
  'srcdir=s'   => \$srcdir,
@@ -434,6 +438,9 @@ sub get_tool_versions ($$)
   @url_dir_list
 or (warn "URL directory name(s) not specified\n"), $fail = 1;
 
+  $gpg_keyring_url
+or $gpg_keyring_url = 
"https://savannah.gnu.org/project/release-gpgkeys.php?group=$package_name=1;;
+
   my @tool_list = split ',', $bootstrap_tools
 if $bootstrap_tools;
 
@@ -536,7 +543,7 @@ and the corresponding tarball.  Then, run a command like 
this:
 If that command fails because you don't have the required public key,
 then run this command to import it:
 
-  gpg --keyserver keys.gnupg.net --recv-keys $gpg_key_id
+  wget -q -O- '$gpg_keyring_url' | gpg --import -
 
 and rerun the 'gpg --verify' command.
 EOF
-- 
2.35.1




Re: [PATCH] build-aux/announce-gen: Use Release keyrings on Savannah for GnuPG

2022-03-07 Thread Darshit Shah
Sorry,

I just realized a glaring error in this patch. The $gpg_keyring_url variable is 
not used at all. Instead the Savannah URL is hardcoded in the announce email. 
My Perl is not good enough to immediately know how to force a lazy evaluation 
of the variable in order to get the project name at the end.

It's late at night, and I shouldn't have sent the patch when semi-asleep. I'll 
fix the issue and send a new version later in the day.

On Tue, Mar 8, 2022, at 00:45, Darshit Shah wrote:
> * build-aux/announce-gen: The default SKS Keyserver pool for GnuPG Keys was
> deprecated and has been offline since the middle of 2021. The default
> keyserver: keys.gnupg.net was just a mirror of the SKS Pool and is thus
> offline as well. Instead, use the Release Keyring on Savannah to list the
> GnuPG Keys used to sign releases for that project and import the entire
> keyring. A new option --gpg-keyring-url is provided for projects that don't
> use Savannah or maintain their keyring elsewhere
> ---
>  ChangeLog  | 11 +++
>  build-aux/announce-gen |  7 ++-
>  2 files changed, 17 insertions(+), 1 deletion(-)
>
> diff --git a/ChangeLog b/ChangeLog
> index e3f0ed216c..c2ea26f5ca 100644
> --- a/ChangeLog
> +++ b/ChangeLog
> @@ -1,3 +1,14 @@
> +2022-03-08  Darshit Shah  
> +
> + build-aux/announce-gen: Use Release keyrings on Savannah for GnuPG
> + * build-aux/announce-gen: The default SKS Keyserver pool for GnuPG Keys 
> was
> + deprecated and has been offline since the middle of 2021. The default
> + keyserver: keys.gnupg.net was just a mirror of the SKS Pool and is thus
> + offline as well. Instead, use the Release Keyring on Savannah to list 
> the
> + GnuPG Keys used to sign releases for that project and import the entire
> + keyring. A new option --gpg-keyring-url is provided for projects that 
> don't
> + use Savannah or maintain their keyring elsewhere
> +
>  2022-03-07  Pádraig Brady  
> 
>   fcntl-h: add AT_NO_AUTOMOUNT
> diff --git a/build-aux/announce-gen b/build-aux/announce-gen
> index 5c35e3d564..19f0015e47 100755
> --- a/build-aux/announce-gen
> +++ b/build-aux/announce-gen
> @@ -52,6 +52,7 @@ use POSIX qw(strftime);
>  my %valid_release_types = map {$_ => 1} qw (alpha beta stable);
>  my @archive_suffixes = qw (tar.gz tar.bz2 tar.lz tar.lzma tar.xz);
>  my $srcdir = '.';
> +my $gpg_keyring_url = 
> "https://savannah.gnu.org/project/release-gpgkeys.php?group=\$project_name=1;;
> 
>  sub usage ($)
>  {
> @@ -90,6 +91,9 @@ The following are optional:
>  VERSION is the result of running git 
> describe
>  in the gnulib source directory.
>  required if gnulib is in TOOL_LIST.
> +   --gpg-keyring-url=URLURL pointing to the GnuPG Keyring 
> containing
> +the key used to sign the tarballs
> +(default: $gpg_keyring_url)
> --no-print-checksums do not emit SHA1 or SHA256 checksums
> --archive-suffix=SUF add SUF to the list of archive suffixes
> --mail-headers=HEADERS   a space-separated list of mail 
> headers, e.g.,
> @@ -395,6 +399,7 @@ sub get_tool_versions ($$)
>   'previous-version=s' => \$prev_version,
>   'current-version=s'  => \$curr_version,
>   'gpg-key-id=s'   => \$gpg_key_id,
> + 'gpg-keyring-url=s'  => \$gpg_keyring_url,
>   'url-directory=s'=> \@url_dir_list,
>   'news=s' => \@news_file,
>   'srcdir=s'   => \$srcdir,
> @@ -536,7 +541,7 @@ and the corresponding tarball.  Then, run a command 
> like this:
>  If that command fails because you don't have the required public key,
>  then run this command to import it:
> 
> -  gpg --keyserver keys.gnupg.net --recv-keys $gpg_key_id
> +  wget -q -O- 
> 'https://savannah.gnu.org/project/release-gpgkeys.php?group=$package_name=1'
>  
> | gpg --import -
> 
>  and rerun the 'gpg --verify' command.
>  EOF
> -- 
> 2.35.1



[PATCH] build-aux/announce-gen: Use Release keyrings on Savannah for GnuPG

2022-03-07 Thread Darshit Shah
* build-aux/announce-gen: The default SKS Keyserver pool for GnuPG Keys was
deprecated and has been offline since the middle of 2021. The default
keyserver: keys.gnupg.net was just a mirror of the SKS Pool and is thus
offline as well. Instead, use the Release Keyring on Savannah to list the
GnuPG Keys used to sign releases for that project and import the entire
keyring. A new option --gpg-keyring-url is provided for projects that don't
use Savannah or maintain their keyring elsewhere
---
 ChangeLog  | 11 +++
 build-aux/announce-gen |  7 ++-
 2 files changed, 17 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index e3f0ed216c..c2ea26f5ca 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2022-03-08  Darshit Shah  
+
+   build-aux/announce-gen: Use Release keyrings on Savannah for GnuPG
+   * build-aux/announce-gen: The default SKS Keyserver pool for GnuPG Keys 
was
+   deprecated and has been offline since the middle of 2021. The default
+   keyserver: keys.gnupg.net was just a mirror of the SKS Pool and is thus
+   offline as well. Instead, use the Release Keyring on Savannah to list 
the
+   GnuPG Keys used to sign releases for that project and import the entire
+   keyring. A new option --gpg-keyring-url is provided for projects that 
don't
+   use Savannah or maintain their keyring elsewhere
+
 2022-03-07  Pádraig Brady  
 
fcntl-h: add AT_NO_AUTOMOUNT
diff --git a/build-aux/announce-gen b/build-aux/announce-gen
index 5c35e3d564..19f0015e47 100755
--- a/build-aux/announce-gen
+++ b/build-aux/announce-gen
@@ -52,6 +52,7 @@ use POSIX qw(strftime);
 my %valid_release_types = map {$_ => 1} qw (alpha beta stable);
 my @archive_suffixes = qw (tar.gz tar.bz2 tar.lz tar.lzma tar.xz);
 my $srcdir = '.';
+my $gpg_keyring_url = 
"https://savannah.gnu.org/project/release-gpgkeys.php?group=\$project_name=1;;
 
 sub usage ($)
 {
@@ -90,6 +91,9 @@ The following are optional:
 VERSION is the result of running git describe
 in the gnulib source directory.
 required if gnulib is in TOOL_LIST.
+   --gpg-keyring-url=URLURL pointing to the GnuPG Keyring containing
+the key used to sign the tarballs
+(default: $gpg_keyring_url)
--no-print-checksums do not emit SHA1 or SHA256 checksums
--archive-suffix=SUF add SUF to the list of archive suffixes
--mail-headers=HEADERS   a space-separated list of mail headers, e.g.,
@@ -395,6 +399,7 @@ sub get_tool_versions ($$)
  'previous-version=s' => \$prev_version,
  'current-version=s'  => \$curr_version,
  'gpg-key-id=s'   => \$gpg_key_id,
+ 'gpg-keyring-url=s'  => \$gpg_keyring_url,
  'url-directory=s'=> \@url_dir_list,
  'news=s' => \@news_file,
  'srcdir=s'   => \$srcdir,
@@ -536,7 +541,7 @@ and the corresponding tarball.  Then, run a command like 
this:
 If that command fails because you don't have the required public key,
 then run this command to import it:
 
-  gpg --keyserver keys.gnupg.net --recv-keys $gpg_key_id
+  wget -q -O- 
'https://savannah.gnu.org/project/release-gpgkeys.php?group=$package_name=1'
 | gpg --import -
 
 and rerun the 'gpg --verify' command.
 EOF
-- 
2.35.1




Re: [PATCH] fcntl-h: add AT_NO_AUTOMOUNT

2022-03-07 Thread Paul Eggert

On 3/7/22 06:08, Pádraig Brady wrote:

* lib/fcntl.in.h: Define AT_NO_AUTOMOUNT to 0 where not defined.
This is available on Linux since 2.6.38.


Looks good.

Please feel free to install this sort of thing without waiting for review.



[PATCH] fcntl-h: add AT_NO_AUTOMOUNT

2022-03-07 Thread Pádraig Brady
* lib/fcntl.in.h: Define AT_NO_AUTOMOUNT to 0 where not defined.
This is available on Linux since 2.6.38.
---
 ChangeLog  | 6 ++
 lib/fcntl.in.h | 4 
 2 files changed, 10 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index c5a80fd3f3..e3f0ed216c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2022-03-07  Pádraig Brady  
+
+   fcntl-h: add AT_NO_AUTOMOUNT
+   * lib/fcntl.in.h: Define AT_NO_AUTOMOUNT to 0 where not defined.
+   This is available on Linux since 2.6.38.
+
 2022-03-01  Paul Eggert  
 
Create lib/Makefile.am after gnulib-comp.m4
diff --git a/lib/fcntl.in.h b/lib/fcntl.in.h
index 3e0c302af3..9270ced897 100644
--- a/lib/fcntl.in.h
+++ b/lib/fcntl.in.h
@@ -435,6 +435,10 @@ _GL_WARN_ON_USE (openat, "openat is not portable - "
 # define AT_EACCESS 4
 #endif
 
+/* Ignore this flag if not supported.  */
+#ifndef AT_NO_AUTOMOUNT
+# define AT_NO_AUTOMOUNT 0
+#endif
 
 #endif /* _@GUARD_PREFIX@_FCNTL_H */
 #endif /* _@GUARD_PREFIX@_FCNTL_H */
-- 
2.26.2