Skip to content

guix: track recent Bitcoin Core changes - #116

Open
Sjors wants to merge 51 commits into
stratum-mining:masterfrom
Sjors:2026/08/guix
Open

guix: track recent Bitcoin Core changes#116
Sjors wants to merge 51 commits into
stratum-mining:masterfrom
Sjors:2026/08/guix

Conversation

@Sjors

@Sjors Sjors commented Aug 20, 2026

Copy link
Copy Markdown
Collaborator

In preparation for windows support.

x86_64
952bd7511dc3ba6cc651fe0dd4d62d0d56714e2e57b4b46b8a5866020d25117a  guix-build-0b3c97a877c6/output/aarch64-linux-gnu/SHA256SUMS.part
3605309626b3120f8481ea22e0430497d92bf1f7dfdc6deae058a3d85f5fa7a4  guix-build-0b3c97a877c6/output/aarch64-linux-gnu/sv2-tp-0b3c97a877c6-aarch64-linux-gnu-debug.tar.gz
60ee4fdfa1ecbbe5a7e88f73f7f4b2dc01414a08eab7c18747effab1e2779141  guix-build-0b3c97a877c6/output/aarch64-linux-gnu/sv2-tp-0b3c97a877c6-aarch64-linux-gnu.tar.gz
948335fff3d681c258e06367b5cc0a00ef78490696eb20d6b9acd4a204912020  guix-build-0b3c97a877c6/output/arm-linux-gnueabihf/SHA256SUMS.part
f8a4b6b28ae8f5dc8c9156618bd3e0aa0011d9e4149795c7f512cd89cfd855ae  guix-build-0b3c97a877c6/output/arm-linux-gnueabihf/sv2-tp-0b3c97a877c6-arm-linux-gnueabihf-debug.tar.gz
d6967aab29063f4ba1d8ea25c8f60d2a8cbc70d7f6835dcad6ad07d3ffb5c1af  guix-build-0b3c97a877c6/output/arm-linux-gnueabihf/sv2-tp-0b3c97a877c6-arm-linux-gnueabihf.tar.gz
1e771f10cf0b26d27b9855e49c72c2ab2199fd22b9e9a93da6147026b01badab  guix-build-0b3c97a877c6/output/arm64-apple-darwin/SHA256SUMS.part
d371914db849f3b9870bd79a9581c90862a42ffb745e9581c2906ef7d5e1aa47  guix-build-0b3c97a877c6/output/arm64-apple-darwin/sv2-tp-0b3c97a877c6-arm64-apple-darwin-codesigning.tar.gz
d1e32302935c965d7b29602aa147e013ac326a2b42af7077cf15b39d4bd9b701  guix-build-0b3c97a877c6/output/arm64-apple-darwin/sv2-tp-0b3c97a877c6-arm64-apple-darwin-unsigned.tar.gz
a053e77db2d48db140924275bc3f50bf00fb59ada771104cd7bfef94da0e651f  guix-build-0b3c97a877c6/output/dist-archive/sv2-tp-0b3c97a877c6.tar.gz
8d1898acafcdbe3322b84f1e1c63af010cf914ffa33c8bf8efec0f975e38bcdc  guix-build-0b3c97a877c6/output/powerpc64-linux-gnu/SHA256SUMS.part
e4e8ad8e3a9cda42ea50c60831a23eb50d8eb0cc042917ba6069409852a8136b  guix-build-0b3c97a877c6/output/powerpc64-linux-gnu/sv2-tp-0b3c97a877c6-powerpc64-linux-gnu-debug.tar.gz
8892d18b64ac7f4176915570805f080c47816cad018d20ccf7a44b17c8296393  guix-build-0b3c97a877c6/output/powerpc64-linux-gnu/sv2-tp-0b3c97a877c6-powerpc64-linux-gnu.tar.gz
463941aa9d138db3bb41bab2c1c75570bf7ad98e6cc115c088fd9c0e488d1d25  guix-build-0b3c97a877c6/output/riscv64-linux-gnu/SHA256SUMS.part
07d37c55977589a1446fcb4438a2fe66d075a6e5f63719a416af10f182f693bb  guix-build-0b3c97a877c6/output/riscv64-linux-gnu/sv2-tp-0b3c97a877c6-riscv64-linux-gnu-debug.tar.gz
987f6705ea2819ea2d1a12b95ba42f24d37201e19d93948247acbe911eabb107  guix-build-0b3c97a877c6/output/riscv64-linux-gnu/sv2-tp-0b3c97a877c6-riscv64-linux-gnu.tar.gz
a1a2c35f5fa8374192758798ba58c0cbfc964376cbb0473e6453fd07da079a48  guix-build-0b3c97a877c6/output/x86_64-apple-darwin/SHA256SUMS.part
21d2218ead7b5931e066bc42a0da62f02cc154fdec62decc2ea1ea5e487c0ab2  guix-build-0b3c97a877c6/output/x86_64-apple-darwin/sv2-tp-0b3c97a877c6-x86_64-apple-darwin-codesigning.tar.gz
981d2a854d119f591eb54d651cb1037a4d07d8d0f3180595554ed709e7eb26d0  guix-build-0b3c97a877c6/output/x86_64-apple-darwin/sv2-tp-0b3c97a877c6-x86_64-apple-darwin-unsigned.tar.gz
0df154ac1c4d6b98d444e38e8b55eb980322a7bcb606944e478faa1f930dcfa4  guix-build-0b3c97a877c6/output/x86_64-linux-gnu/SHA256SUMS.part
a139daed7dd3677421a16fa53381f115b4d2b7b68e6edd70b57c3bd1a2673042  guix-build-0b3c97a877c6/output/x86_64-linux-gnu/sv2-tp-0b3c97a877c6-x86_64-linux-gnu-debug.tar.gz
26eea8ddf5220606b52d1603d381090a4ead2b6c1089519c57496c0e57871391  guix-build-0b3c97a877c6/output/x86_64-linux-gnu/sv2-tp-0b3c97a877c6-x86_64-linux-gnu.tar.gz

@Sjors
Sjors marked this pull request as draft August 21, 2026 07:12
@Sjors

Sjors commented Aug 21, 2026

Copy link
Copy Markdown
Collaborator Author

Backporting a bunch more commits shortly...

fanquake and others added 22 commits August 21, 2026 09:46
Package updates:
(base) glibc 2.35 -> 2.39
binutils 2.38 -> 2.41
diffutils 3.8 -> 3.10
gawk 5.2.1 -> 5.3.0
git-minimal 2.45.2 -> 2.46.0
grep 3.8 -> 3.11
gzip 1.12 -> 1.13
linux-headers 6.1.106 -> 6.1.119
make 4.3 -> 4.4.1
xz 5.2.8 -> 5.4.5

CMake 3.30 becomes available.
Clang/LLVM 19 becomes available.

Backport of bitcoin/bitcoin#33185.
Prunes:
libgomp.a
libgomp.la
libgomp.so
libgomp.so.1
libgomp.so.1.0.0
libgomp.spec

Backport of bitcoin/bitcoin#33775.
Prunes:
libquadmath.a
libquadmath.la
libquadmath.so
libquadmath.so.0
libquadmath.so.0.0.0

Backport of bitcoin/bitcoin#33775.
This will eventually be needed for bitcoin/bitcoin#25573, and could
be useful for bitcoin/bitcoin#30210.

Backport of bitcoin/bitcoin#33775.

Co-authored-by: fanquake <fanquake@gmail.com>
So it's used to extract tarballs.

Backport of bitcoin/bitcoin#34550.
Package updates:
binutils 2.41 -> 2.44
diffutils 3.10 -> 3.12
file 5.45 -> 5.46
git-minimal 2.46.0 -> 2.52.0
(base) glibc 2.39 -> 2.41
gzip 1.13 -> 1.14
linux-headers 6.1.119 -> 6.1.166
LLVM/Clang 19.1.4 -> 19.1.7
mingw-w64 12.0.0 -> 13.0.0
nsis 3.10 -> 3.11
python-minimal 3.10 -> 3.11

CMake 4.x becomes available.
Clang/LLVM 20 & 21 become available.

Backport of bitcoin/bitcoin#34550.

Co-authored-by: fanquake <fanquake@gmail.com>
We are now using 3.31.x.

Backport of bitcoin/bitcoin#34550.
fanquake and others added 4 commits August 21, 2026 09:58
Remove sponge (moreutils).

Backport of bitcoin/bitcoin#34627.
Keep build dependencies separate from platform-specific codesigning
tools.

Backport of bitcoin/bitcoin#34948.

Co-authored-by: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com>
hebasto and others added 25 commits August 21, 2026 09:58
The `distsrc_for_host()` function now accepts a second optional
argument, `SUFFIX`, making it consistent with other similar functions.

Backport of bitcoin/bitcoin#35131.
Split out setup & tarball creation code, so that it can be re-used by
build scripts.

Backport of bitcoin/bitcoin#35459.

Co-authored-by: fanquake <fanquake@gmail.com>
Split out packaging code, so that it can be re-used by
build scripts.

Backport of bitcoin/bitcoin#35499.

Co-authored-by: fanquake <fanquake@gmail.com>
CMake's verbose output is already controlled by the `VERBOSE`
environment variable, which has been exported since commit 85f4a4b0822e.

Backport of bitcoin/bitcoin#35503.
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\>/export LC_ALL=C.UTF-8/g" \
 $( git grep -l "export LC_ALL=C" ./contrib/guix/* )

-END VERIFY SCRIPT-

Backport of bitcoin/bitcoin#35775.
At the current time-machine commit
c5eee3336cc1d10a3cc1c97fde2809c3451624d3, the default `glibc` package
version is 2.41.

Backport of bitcoin/bitcoin#35775.
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-

Backport of bitcoin/bitcoin#35775.
We don't need support for transactional memory.

> Disable TM clone registry in libgcc. It is enabled in libgcc by default.
> This option helps to reduce code size for embedded targets which do
> not use transactional memory.

https://gcc.gnu.org/install/configure.html

Backport of bitcoin/bitcoin#35261.
Treat linker warnings as errors for Linux and Windows builds.

RISC-V is excluded because Boost.Test uses unsupported floating-point
environment functions:
boostorg/test#345

Darwin can follow once its remaining linker warnings are addressed.

Backport of bitcoin/bitcoin#35821.

Co-authored-by: fanquake <fanquake@gmail.com>
Do not make CMake developer warnings fatal in release builds. Compiler
and linker warnings retain their own error policies.

Backport of bitcoin/bitcoin#35870.

Co-authored-by: fanquake <fanquake@gmail.com>
sv2-tp has no GUI and therefore no NSIS installer. Keep the Windows
release flow limited to installed binaries and a detached codesigning
archive.

Originally from stratum-mining#93.
Windows releases are distributed as zip archives and do not need an
NSIS installer. Remove the unused deploy target and its dependencies.

This also prepares the Windows CI configuration to build the install
target used by stratum-mining#93.
The sv2-tp build does not select the Ninja generator, and xz is not
included in the manifest. Remove both unused entries.
@Sjors
Sjors marked this pull request as ready for review August 21, 2026 08:57
@Sjors Sjors mentioned this pull request Aug 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants