From 8916f7967e1088e7b6157f708c2c85119d759fb2 Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Wed, 22 Jul 2026 15:29:18 +0100 Subject: [PATCH 1/4] scripted-diff: Use C.UTF-8 locale in Guix scripts The C.UTF-8 locale is set by default in `guix shell`, and there is no reason to avoid it nowadays. This change also silences superfluous warnings from Qt tools, making build logs cleaner and other issues easier to spot. Locales in the `guix-*` launch scripts have been updated as well for consistency with the rest of the codebase. -BEGIN VERIFY SCRIPT- sed -i "s/\/export LC_ALL=C.UTF-8/g" \ $( git grep -l "export LC_ALL=C" ./contrib/guix/* ) -END VERIFY SCRIPT- --- contrib/guix/guix-attest | 2 +- contrib/guix/guix-build | 2 +- contrib/guix/guix-clean | 2 +- contrib/guix/guix-codesign | 2 +- contrib/guix/guix-verify | 2 +- contrib/guix/libexec/build_linux.sh | 2 +- contrib/guix/libexec/build_linux_gui.sh | 2 +- contrib/guix/libexec/build_macos.sh | 2 +- contrib/guix/libexec/build_macos_gui.sh | 2 +- contrib/guix/libexec/build_win.sh | 2 +- contrib/guix/libexec/build_win_gui.sh | 2 +- contrib/guix/libexec/codesign.sh | 2 +- contrib/guix/libexec/package.sh | 2 +- contrib/guix/libexec/prelude.bash | 2 +- contrib/guix/libexec/setup.sh | 2 +- 15 files changed, 15 insertions(+), 15 deletions(-) diff --git a/contrib/guix/guix-attest b/contrib/guix/guix-attest index 3d70731cbdb..1827dfe0226 100755 --- a/contrib/guix/guix-attest +++ b/contrib/guix/guix-attest @@ -1,5 +1,5 @@ #!/usr/bin/env bash -export LC_ALL=C +export LC_ALL=C.UTF-8 set -e -o pipefail # Source the common prelude, which: diff --git a/contrib/guix/guix-build b/contrib/guix/guix-build index 9679e24ba85..a80411df522 100755 --- a/contrib/guix/guix-build +++ b/contrib/guix/guix-build @@ -1,5 +1,5 @@ #!/usr/bin/env bash -export LC_ALL=C +export LC_ALL=C.UTF-8 set -o errexit -o pipefail # Source the common prelude, which: diff --git a/contrib/guix/guix-clean b/contrib/guix/guix-clean index 32258cd7477..434271de1ea 100755 --- a/contrib/guix/guix-clean +++ b/contrib/guix/guix-clean @@ -1,5 +1,5 @@ #!/usr/bin/env bash -export LC_ALL=C +export LC_ALL=C.UTF-8 set -e -o pipefail # Source the common prelude, which: diff --git a/contrib/guix/guix-codesign b/contrib/guix/guix-codesign index 8cc6993b824..0300c3684ca 100755 --- a/contrib/guix/guix-codesign +++ b/contrib/guix/guix-codesign @@ -1,5 +1,5 @@ #!/usr/bin/env bash -export LC_ALL=C +export LC_ALL=C.UTF-8 set -e -o pipefail # Source the common prelude, which: diff --git a/contrib/guix/guix-verify b/contrib/guix/guix-verify index 02ae022741b..27d5d14ee7c 100755 --- a/contrib/guix/guix-verify +++ b/contrib/guix/guix-verify @@ -1,5 +1,5 @@ #!/usr/bin/env bash -export LC_ALL=C +export LC_ALL=C.UTF-8 set -e -o pipefail # Source the common prelude, which: diff --git a/contrib/guix/libexec/build_linux.sh b/contrib/guix/libexec/build_linux.sh index 15dc77ab138..492890ecc1c 100755 --- a/contrib/guix/libexec/build_linux.sh +++ b/contrib/guix/libexec/build_linux.sh @@ -2,7 +2,7 @@ # Copyright (c) The Bitcoin Core developers # Distributed under the MIT software license, see the accompanying # file COPYING or https://opensource.org/license/mit. -export LC_ALL=C +export LC_ALL=C.UTF-8 set -o errexit -o pipefail # shellcheck source=setup.sh diff --git a/contrib/guix/libexec/build_linux_gui.sh b/contrib/guix/libexec/build_linux_gui.sh index d14dda00293..218bc0a952c 100755 --- a/contrib/guix/libexec/build_linux_gui.sh +++ b/contrib/guix/libexec/build_linux_gui.sh @@ -2,7 +2,7 @@ # Copyright (c) The Bitcoin Core developers # Distributed under the MIT software license, see the accompanying # file COPYING or https://opensource.org/license/mit. -export LC_ALL=C +export LC_ALL=C.UTF-8 set -o errexit -o pipefail # shellcheck source=setup.sh diff --git a/contrib/guix/libexec/build_macos.sh b/contrib/guix/libexec/build_macos.sh index 213ae9a6c7f..1b4af8fd9a5 100755 --- a/contrib/guix/libexec/build_macos.sh +++ b/contrib/guix/libexec/build_macos.sh @@ -2,7 +2,7 @@ # Copyright (c) The Bitcoin Core developers # Distributed under the MIT software license, see the accompanying # file COPYING or https://opensource.org/license/mit. -export LC_ALL=C +export LC_ALL=C.UTF-8 set -o errexit -o pipefail # shellcheck source=setup.sh diff --git a/contrib/guix/libexec/build_macos_gui.sh b/contrib/guix/libexec/build_macos_gui.sh index 97f1932d85e..9383eac34ce 100755 --- a/contrib/guix/libexec/build_macos_gui.sh +++ b/contrib/guix/libexec/build_macos_gui.sh @@ -2,7 +2,7 @@ # Copyright (c) The Bitcoin Core developers # Distributed under the MIT software license, see the accompanying # file COPYING or https://opensource.org/license/mit. -export LC_ALL=C +export LC_ALL=C.UTF-8 set -o errexit -o pipefail # shellcheck source=setup.sh diff --git a/contrib/guix/libexec/build_win.sh b/contrib/guix/libexec/build_win.sh index fc3b46aa38e..ce1f7fd4d03 100755 --- a/contrib/guix/libexec/build_win.sh +++ b/contrib/guix/libexec/build_win.sh @@ -2,7 +2,7 @@ # Copyright (c) The Bitcoin Core developers # Distributed under the MIT software license, see the accompanying # file COPYING or https://opensource.org/license/mit. -export LC_ALL=C +export LC_ALL=C.UTF-8 set -o errexit -o pipefail # shellcheck source=setup.sh diff --git a/contrib/guix/libexec/build_win_gui.sh b/contrib/guix/libexec/build_win_gui.sh index aba93eb0654..94f21166392 100755 --- a/contrib/guix/libexec/build_win_gui.sh +++ b/contrib/guix/libexec/build_win_gui.sh @@ -2,7 +2,7 @@ # Copyright (c) The Bitcoin Core developers # Distributed under the MIT software license, see the accompanying # file COPYING or https://opensource.org/license/mit. -export LC_ALL=C +export LC_ALL=C.UTF-8 set -o errexit -o pipefail # shellcheck source=setup.sh diff --git a/contrib/guix/libexec/codesign.sh b/contrib/guix/libexec/codesign.sh index 9b7f085d3ab..517c74301b1 100755 --- a/contrib/guix/libexec/codesign.sh +++ b/contrib/guix/libexec/codesign.sh @@ -2,7 +2,7 @@ # Copyright (c) 2021-present The Bitcoin Core developers # Distributed under the MIT software license, see the accompanying # file COPYING or http://www.opensource.org/licenses/mit-license.php. -export LC_ALL=C +export LC_ALL=C.UTF-8 set -e -o pipefail # Environment variables for determinism diff --git a/contrib/guix/libexec/package.sh b/contrib/guix/libexec/package.sh index fd080ccf293..fdecd9a0906 100755 --- a/contrib/guix/libexec/package.sh +++ b/contrib/guix/libexec/package.sh @@ -2,7 +2,7 @@ # Copyright (c) The Bitcoin Core developers # Distributed under the MIT software license, see the accompanying # file COPYING or https://opensource.org/license/mit. -export LC_ALL=C +export LC_ALL=C.UTF-8 set -e -o pipefail ( diff --git a/contrib/guix/libexec/prelude.bash b/contrib/guix/libexec/prelude.bash index 994f6c5cdf7..38a040b773d 100644 --- a/contrib/guix/libexec/prelude.bash +++ b/contrib/guix/libexec/prelude.bash @@ -1,5 +1,5 @@ #!/usr/bin/env bash -export LC_ALL=C +export LC_ALL=C.UTF-8 set -o errexit -o pipefail source contrib/shell/realpath.bash diff --git a/contrib/guix/libexec/setup.sh b/contrib/guix/libexec/setup.sh index e8d70d590b3..c6858c9862d 100755 --- a/contrib/guix/libexec/setup.sh +++ b/contrib/guix/libexec/setup.sh @@ -2,7 +2,7 @@ # Copyright (c) The Bitcoin Core developers # Distributed under the MIT software license, see the accompanying # file COPYING or https://opensource.org/license/mit. -export LC_ALL=C +export LC_ALL=C.UTF-8 set -o errexit -o pipefail # Environment variables for determinism From 80f831494e5347057199055b20c8b75bedd8bd07 Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Wed, 22 Jul 2026 15:29:26 +0100 Subject: [PATCH 2/4] guix: Fix `glibc` version in comment At the current time-machine commit c5eee3336cc1d10a3cc1c97fde2809c3451624d3, the default `glibc` package version is 2.41. --- contrib/guix/manifest_build.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/guix/manifest_build.scm b/contrib/guix/manifest_build.scm index b9f0dd9edcf..8dcfe8b0c8a 100644 --- a/contrib/guix/manifest_build.scm +++ b/contrib/guix/manifest_build.scm @@ -209,7 +209,7 @@ chain for " target " development.")) (define-public glibc-2.31 (let ((commit "28eb5caf895ced5d895cb02757e109004a2d33e5")) (package - (inherit glibc) ;; 2.39 + (inherit glibc) ;; 2.41 (version "2.31") (source (origin (method git-fetch) From 711eb10f08bcff5f4689abd4edebf96b913ad6b5 Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Thu, 23 Jul 2026 11:13:22 +0100 Subject: [PATCH 3/4] guix: Add copyright headers to Guix scripts --- contrib/guix/guix-attest | 3 +++ contrib/guix/guix-build | 3 +++ contrib/guix/guix-clean | 3 +++ contrib/guix/guix-codesign | 3 +++ contrib/guix/guix-verify | 3 +++ contrib/guix/libexec/codesign.sh | 4 ++-- contrib/guix/libexec/prelude.bash | 3 +++ 7 files changed, 20 insertions(+), 2 deletions(-) diff --git a/contrib/guix/guix-attest b/contrib/guix/guix-attest index 1827dfe0226..b3a20100de3 100755 --- a/contrib/guix/guix-attest +++ b/contrib/guix/guix-attest @@ -1,4 +1,7 @@ #!/usr/bin/env bash +# Copyright (c) The Bitcoin Core developers +# Distributed under the MIT software license, see the accompanying +# file COPYING or https://opensource.org/license/mit. export LC_ALL=C.UTF-8 set -e -o pipefail diff --git a/contrib/guix/guix-build b/contrib/guix/guix-build index a80411df522..9afe00a067d 100755 --- a/contrib/guix/guix-build +++ b/contrib/guix/guix-build @@ -1,4 +1,7 @@ #!/usr/bin/env bash +# Copyright (c) The Bitcoin Core developers +# Distributed under the MIT software license, see the accompanying +# file COPYING or https://opensource.org/license/mit. export LC_ALL=C.UTF-8 set -o errexit -o pipefail diff --git a/contrib/guix/guix-clean b/contrib/guix/guix-clean index 434271de1ea..96cc28326e9 100755 --- a/contrib/guix/guix-clean +++ b/contrib/guix/guix-clean @@ -1,4 +1,7 @@ #!/usr/bin/env bash +# Copyright (c) The Bitcoin Core developers +# Distributed under the MIT software license, see the accompanying +# file COPYING or https://opensource.org/license/mit. export LC_ALL=C.UTF-8 set -e -o pipefail diff --git a/contrib/guix/guix-codesign b/contrib/guix/guix-codesign index 0300c3684ca..3b139e1f106 100755 --- a/contrib/guix/guix-codesign +++ b/contrib/guix/guix-codesign @@ -1,4 +1,7 @@ #!/usr/bin/env bash +# Copyright (c) The Bitcoin Core developers +# Distributed under the MIT software license, see the accompanying +# file COPYING or https://opensource.org/license/mit. export LC_ALL=C.UTF-8 set -e -o pipefail diff --git a/contrib/guix/guix-verify b/contrib/guix/guix-verify index 27d5d14ee7c..8e7fbb900e4 100755 --- a/contrib/guix/guix-verify +++ b/contrib/guix/guix-verify @@ -1,4 +1,7 @@ #!/usr/bin/env bash +# Copyright (c) The Bitcoin Core developers +# Distributed under the MIT software license, see the accompanying +# file COPYING or https://opensource.org/license/mit. export LC_ALL=C.UTF-8 set -e -o pipefail diff --git a/contrib/guix/libexec/codesign.sh b/contrib/guix/libexec/codesign.sh index 517c74301b1..620fe31955d 100755 --- a/contrib/guix/libexec/codesign.sh +++ b/contrib/guix/libexec/codesign.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash -# Copyright (c) 2021-present The Bitcoin Core developers +# Copyright (c) The Bitcoin Core developers # Distributed under the MIT software license, see the accompanying -# file COPYING or http://www.opensource.org/licenses/mit-license.php. +# file COPYING or https://opensource.org/license/mit. export LC_ALL=C.UTF-8 set -e -o pipefail diff --git a/contrib/guix/libexec/prelude.bash b/contrib/guix/libexec/prelude.bash index 38a040b773d..2fe5c73867e 100644 --- a/contrib/guix/libexec/prelude.bash +++ b/contrib/guix/libexec/prelude.bash @@ -1,4 +1,7 @@ #!/usr/bin/env bash +# Copyright (c) The Bitcoin Core developers +# Distributed under the MIT software license, see the accompanying +# file COPYING or https://opensource.org/license/mit. export LC_ALL=C.UTF-8 set -o errexit -o pipefail From 2cb3bfa8df7cab0635be221af1c8754dbbaff335 Mon Sep 17 00:00:00 2001 From: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> Date: Thu, 23 Jul 2026 12:31:31 +0100 Subject: [PATCH 4/4] scripted-diff: Use long form of shell options in Guix scripts This improves readability and consistency across all Guix scripts. -BEGIN VERIFY SCRIPT- sed -i "s/^set -e\>/set -o errexit/g" \ $( git grep -l "set -e" ./contrib/guix ) -END VERIFY SCRIPT- --- contrib/guix/guix-attest | 2 +- contrib/guix/guix-clean | 2 +- contrib/guix/guix-codesign | 2 +- contrib/guix/guix-verify | 2 +- contrib/guix/libexec/codesign.sh | 2 +- contrib/guix/libexec/package.sh | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/contrib/guix/guix-attest b/contrib/guix/guix-attest index b3a20100de3..06925ffbede 100755 --- a/contrib/guix/guix-attest +++ b/contrib/guix/guix-attest @@ -3,7 +3,7 @@ # Distributed under the MIT software license, see the accompanying # file COPYING or https://opensource.org/license/mit. export LC_ALL=C.UTF-8 -set -e -o pipefail +set -o errexit -o pipefail # Source the common prelude, which: # 1. Checks if we're at the top directory of the Bitcoin Core repository diff --git a/contrib/guix/guix-clean b/contrib/guix/guix-clean index 96cc28326e9..a72a26445a8 100755 --- a/contrib/guix/guix-clean +++ b/contrib/guix/guix-clean @@ -3,7 +3,7 @@ # Distributed under the MIT software license, see the accompanying # file COPYING or https://opensource.org/license/mit. export LC_ALL=C.UTF-8 -set -e -o pipefail +set -o errexit -o pipefail # Source the common prelude, which: # 1. Checks if we're at the top directory of the Bitcoin Core repository diff --git a/contrib/guix/guix-codesign b/contrib/guix/guix-codesign index 3b139e1f106..179041c140a 100755 --- a/contrib/guix/guix-codesign +++ b/contrib/guix/guix-codesign @@ -3,7 +3,7 @@ # Distributed under the MIT software license, see the accompanying # file COPYING or https://opensource.org/license/mit. export LC_ALL=C.UTF-8 -set -e -o pipefail +set -o errexit -o pipefail # Source the common prelude, which: # 1. Checks if we're at the top directory of the Bitcoin Core repository diff --git a/contrib/guix/guix-verify b/contrib/guix/guix-verify index 8e7fbb900e4..82e740036ba 100755 --- a/contrib/guix/guix-verify +++ b/contrib/guix/guix-verify @@ -3,7 +3,7 @@ # Distributed under the MIT software license, see the accompanying # file COPYING or https://opensource.org/license/mit. export LC_ALL=C.UTF-8 -set -e -o pipefail +set -o errexit -o pipefail # Source the common prelude, which: # 1. Checks if we're at the top directory of the Bitcoin Core repository diff --git a/contrib/guix/libexec/codesign.sh b/contrib/guix/libexec/codesign.sh index 620fe31955d..21f4c110661 100755 --- a/contrib/guix/libexec/codesign.sh +++ b/contrib/guix/libexec/codesign.sh @@ -3,7 +3,7 @@ # Distributed under the MIT software license, see the accompanying # file COPYING or https://opensource.org/license/mit. export LC_ALL=C.UTF-8 -set -e -o pipefail +set -o errexit -o pipefail # Environment variables for determinism export TAR_OPTIONS="--owner=0 --group=0 --numeric-owner --mtime='@${SOURCE_DATE_EPOCH}' --sort=name" diff --git a/contrib/guix/libexec/package.sh b/contrib/guix/libexec/package.sh index fdecd9a0906..05f5e61f744 100755 --- a/contrib/guix/libexec/package.sh +++ b/contrib/guix/libexec/package.sh @@ -3,7 +3,7 @@ # Distributed under the MIT software license, see the accompanying # file COPYING or https://opensource.org/license/mit. export LC_ALL=C.UTF-8 -set -e -o pipefail +set -o errexit -o pipefail ( cd "$DISTSRC"