Closes#64
The ;& operator was introduced in POSIX.1-2024 "Issue 8", from 2024, but
is not yet available in Debian's dash shell.
* etc/git/pre-push: Duplicate the handling of our two canonical Git repo
URLs.
Change-Id: I1125810c9f2d6fb9a99f7220d971cc38387989d3
Some systems are still using a shell that predates its inclusion in the POSIX
specification, such as Debian Bookworm.
* etc/git/pre-push (z40): Remove usage of ';&'. Fail when attempting to push
to Savannah instead.
Reported-by: Leo Famulari <leo@famulari.name>
Closes: #64
Change-Id: I2dd224b7a3236f7027fc702b96e3ee1ff594d4fa
There was a mix of spaces and tabs in the file, even confusing Emacs's
dtrt-indent-mode.
* etc/git/pre-push: Untabify.
Change-Id: I2548a3901c5064c649a8f6bb786d606b6155fcfb
Fixes a bug introduced in ab9cda9ebd where
‘make check-channel-news’ would not longer be executed.
* etc/git/pre-push: Remove ‘exec’ before ‘guix git authenticate’.
Change-Id: Ic425db866e44695493be96a0a8c81c77c815e42d
Running check-channel-news first could potentially be untrusted code, so
authenticate first.
* etc/git/pre-push: Run guix git authenticate before check-channel-news.
The previous recommendation, running ‘make authenticate’, was insecure
because it led users to run code from the very repository they want to
authenticate:
https://lists.gnu.org/archive/html/guix-devel/2024-04/msg00252.html
* Makefile.am (commit_v1_0_0, channel_intro_commit)
(channel_intro_signer, GUIX_GIT_KEYRING, authenticate): Remove.
* Makefile.am (.git/hooks/%): New target, generalization of previous
‘.git/hooks/pre-push’ target.
(nodist_noinst_DATA): Add ‘.git/hooks/post-merge’.
* doc/contributing.texi (Building from Git): Suggest ‘guix git
authenticate’ instead of ‘make authenticate’.
* etc/git/post-merge: New file.
* etc/git/pre-push: Run ‘guix git authenticate’ instead of ‘make
authenticate’.
Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Reported-by: Skyler Ferris <skyvine@protonmail.com>
Change-Id: Ia415aa8375013d0dd095e891116f6ce841d93efd