archlinux-keyring: harcode using bash as make's shell

Message ID YxuAr4XYQEuk2LCN@michel-fedora-PC198L6J
State New
Headers show
Series archlinux-keyring: harcode using bash as make's shell | expand

Commit Message

Michel Alexandre Salim Sept. 9, 2022, 6:06 p.m. UTC
Dear archlinux-keyring maintainers,

Please find attached a patch to make the latest archlinux-keyring
release (20220831) build on Debian/Ubuntu, where the default shell is
Dash (and the build environment enforces this by passing SHELL=dash).

Makefile seems to have acquired some Bash-isms ({} expansion) in 0831
that was not in 0727, and since the usage makes sense, hardcoding the
shell to be bash would allow this to work without having to override
Debian and Ubuntu builds for the affected targets.

Thanks,

Comments

Michel Alexandre Salim Sept. 9, 2022, 6:17 p.m. UTC | #1
Apologies, this cannot be applied with `git am`.

Try https://git.sr.ht/~michel-slm/archlinux-keyring/commit/bd701737fa2393721db958d8a9ddaabb720e29bf.patch

Thanks,

Michel

On Fri, Sep 09, 2022 at 01:06:42PM -0500, Michel Alexandre Salim wrote:
> Dear archlinux-keyring maintainers,
> 
> Please find attached a patch to make the latest archlinux-keyring
> release (20220831) build on Debian/Ubuntu, where the default shell is
> Dash (and the build environment enforces this by passing SHELL=dash).
> 
> Makefile seems to have acquired some Bash-isms ({} expansion) in 0831
> that was not in 0727, and since the usage makes sense, hardcoding the
> shell to be bash would allow this to work without having to override
> Debian and Ubuntu builds for the affected targets.
> 
> Thanks,
> 
> -- 
> Michel Alexandre Salim
> identities: https://keyoxide.org/5dce2e7e9c3b1cffd335c1d78b229d2f7ccc04f2

> Description: Hardcode using bash as make's shell
>  On Debian/Ubuntu the default shell is dash, and builds are done with SHELL
>  overridden to dash. Since archlinux-keyring now has Bash-isms in the
>  install and uninstall targets (for {} expansion), and rewriting it to drop
>  this is inconvenient (because we'll have to repeat the path prefixes),
>  hardcode the use of Bash instead. Use /bin/bash to be compatible with distros
>  that have not finished /bin -> /usr/bin migration yet.
> Author: Michel Alexandre Salim <michel@michel-slm.name>
> Bug: <URL to the upstream bug report if any, implies patch has been forwarded, optional>
> Last-Update: 2022-09-09
> ---
> This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
> --- a/Makefile
> +++ b/Makefile
> @@ -1,3 +1,4 @@
> +SHELL = /bin/bash
>  PREFIX ?= /usr/local
>  KEYRING_TARGET_DIR ?= $(PREFIX)/share/pacman/keyrings/
>  SCRIPT_TARGET_DIR ?= $(PREFIX)/bin/
Christian Hesse Sept. 9, 2022, 7:07 p.m. UTC | #2
Michel Alexandre Salim <michel@michel-slm.name> on Fri, 2022/09/09 13:17:
> Apologies, this cannot be applied with `git am`.
> 
> Try
> https://git.sr.ht/~michel-slm/archlinux-keyring/commit/bd701737fa2393721db958d8a9ddaabb720e29bf.patch

Create a merge request, thanks!
Christian Hesse Sept. 12, 2022, 8:02 a.m. UTC | #3
Christian Hesse <list@eworm.de> on Fri, 2022/09/09 21:07:
> Michel Alexandre Salim <michel@michel-slm.name> on Fri, 2022/09/09 13:17:
> > Apologies, this cannot be applied with `git am`.
> > 
> > Try
> > https://git.sr.ht/~michel-slm/archlinux-keyring/commit/bd701737fa2393721db958d8a9ddaabb720e29bf.patch
> >  
> 
> Create a merge request, thanks!

s/Create/Created/ :-p

Merged into master now.

Patch

--- a/Makefile
+++ b/Makefile
@@ -1,3 +1,4 @@ 
+SHELL = /bin/bash
 PREFIX ?= /usr/local
 KEYRING_TARGET_DIR ?= $(PREFIX)/share/pacman/keyrings/
 SCRIPT_TARGET_DIR ?= $(PREFIX)/bin/