509 Commits

Author SHA1 Message Date
fanquake
19e99be011 guix: remove riscv exclusion from symbol check 2026-04-06 15:29:49 +08:00
fanquake
47b7a9f666 guix: binutils 2.46.0 2026-04-06 15:29:45 +08:00
Hennadii Stepanov
325f743eed guix: Clean up module list in manifest
These modules are no longer in use:
1. `cmake-build-system` since bitcoin/bitcoin#34550.
2. `gnu-build-system` since bitcoin/bitcoin#34627.
3. `download` since bitcoin/bitcoin#34550.
4. `cc-for-target` from `utils` since bitcoin/bitcoin#34627.
2026-03-30 11:29:43 +01:00
Ava Chow
93e8bcc077 Merge bitcoin/bitcoin#32442: doc: guix: Troubleshooting zdiff3 issue and uninstalling.
e76e886581 guix: doc: zdiff3 doesn't work (David Gumberg)
ea1be38677 guix: doc: Suggest guix-install.sh --uninstall (David Gumberg)

Pull request description:

  Add a note about guix issues with git `merge.conflictstyle` being set to `zdiff3`, and add information about how to uninstall for users of `guix-install.sh`

ACKs for top commit:
  achow101:
    ACK e76e886581
  hebasto:
    ACK e76e886581.
  sedited:
    utACK e76e886581

Tree-SHA512: e9edc49851579c52e7ac762221d0bb51c928da4dff5566ece766af7f7eb75466831a76f885ccc5a26207c84b846e3f42bae26e80ddece3df1611de2c2320c28a
2026-03-19 16:32:53 -07:00
fanquake
3293e9a61f guix: document when GCC SSA gen patch can be removed 2026-03-17 22:47:15 +08:00
fanquake
978023fd9e guix: use latest glibc 2.31
https://sourceware.org/git/?p=glibc.git;a=shortlog;h=refs/heads/release/2.31/master.
2026-03-17 22:47:15 +08:00
fanquake
ab9a98b1e4 guix: combine gcc-libgcc-patches with base-gcc 2026-03-17 22:47:15 +08:00
fanquake
2276426bb1 guix: switch to upstream python-oscrypto package 2026-03-17 22:47:14 +08:00
fanquake
feea2a850e ci: use LIEF 0.17.5 in lint job 2026-03-17 22:47:14 +08:00
fanquake
a7524f57ba guix: switch to upstream python-lief package 2026-03-17 22:47:14 +08:00
fanquake
2bf97e813d guix: switch to upstream osslsigncode package 2026-03-17 22:47:14 +08:00
fanquake
dc0ddab389 guix: drop CMake workaround
We are now using 3.31.x.
2026-03-17 22:47:14 +08:00
fanquake
31eb46f054 guix: update to c5eee3336cc1d10a3cc1c97fde2809c3451624d3
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.
2026-03-17 22:47:00 +08:00
fanquake
0f323e1075 guix: add --no-same-owner to TAR_OPTIONS
So it's used to extract tarballs.
2026-03-17 22:39:04 +08:00
Ava Chow
16a02bf5af Merge bitcoin/bitcoin#33451: doc: Add INSTALL.md to Linux release tarballs
d62f46eed4 doc: Add `INSTALL.md` to Linux release tarballs (Hennadii Stepanov)

Pull request description:

  Closes https://github.com/bitcoin/bitcoin/issues/32097:
  > Better I think would be to add instructions for the most popular desktop distros.

ACKs for top commit:
  willcl-ark:
    utACK d62f46eed4
  achow101:
    ACK d62f46eed4
  janb84:
    re ACK d62f46eed4
  w0xlt:
    ACK d62f46eed4
  sedited:
    ACK d62f46eed4

Tree-SHA512: eab6904b6acc63eaf0e13112f52d856ee630ce4110fb368f4f5f170655def91706bb7c7f70c123186a51461ea3d48ef026a4e026d665675f1fd76f2d0bbca68c
2026-03-13 13:20:04 -07:00
Hodlinator
be6d24ec22 guix: Make guix-clean less destructive
* Show preview and ask for confirmation before git clean unless used with "--force"
* Error out when trying to pass args such as "guix-clean --help"
2026-03-09 20:12:13 +01:00
MarcoFalke
faa70ca764 doc: Update Guix install for Debian/Ubuntu
Fixes https://github.com/bitcoin/bitcoin/issues/33982

Co-authored-by: Purple Ninja <129023353+ToRyVand@users.noreply.github.com>
2026-02-25 19:49:35 +01:00
fanquake
c86bce597a guix: use a temporary file over sponge
Remove sponge (moreutils).
2026-02-20 12:20:00 +00:00
fanquake
62e378584e guix: don't export TZ twice 2026-02-17 09:54:50 +00:00
fanquake
badcf1c68d guix: fix typo in guix-codesign 2026-02-17 09:54:49 +00:00
fanquake
a89e1618dd contrib: update macOS SDK to Xcode-26.1.1-17B100 2026-01-29 16:27:04 +00:00
merge-script
d9851f9a7c Merge bitcoin/bitcoin#33472: guix: documented shasum gathering command
ab649ce459 guix: documented shasum gathering command (janb84)

Pull request description:

  When a PR requires proof of Guix builds (sha256sums), the PR author or reviewer uses a not well documented command to collect the sha256sums of build outputs or manually gathers them from files.

  This pull request introduces a new section in the documentation, providing some documentation on the command's functionality and usage.

ACKs for top commit:
  willcl-ark:
    ACK ab649ce459
  sedited:
    ACK ab649ce459

Tree-SHA512: 0188663ad117b636c7d32a1b655db97610f558cfcffe4abd6f0fb097b3990db0dc6d23ab972926fefd2531b21f429742dcbea6b0fa579d22d5da7a7d6a4c753e
2026-01-28 17:31:40 +01:00
janb84
ab649ce459 guix: documented shasum gathering command 2026-01-26 15:39:04 +01:00
Hennadii Stepanov
1cc58d3a0c Merge bitcoin/bitcoin#34281: build: Temporarily remove confusing and brittle -fdebug-prefix-map
fa37928536 build: Temporarily remove confusing and brittle -fdebug-prefix-map (MarcoFalke)

Pull request description:

  The compiler option `-fdebug-prefix-map` is unconditionally set by the build system. This is problematic for many reasons:

  * Users and devs have no easy way to disable it without modifying the build system source code
  * The mapping is broken since the cmake migration, and requires manual fixups such as https://github.com/bitcoin/bitcoin/issues/31204 or https://github.com/bitcoin/bitcoin/issues/31957

  Fix all issues by temporarily removing it.

  Though, the option is kept for the guix build, so that no change in behavior is observed for the release binaries.

  Fixes https://github.com/bitcoin/bitcoin/issues/31957
  Fixes https://github.com/bitcoin/bitcoin/issues/31204

  The option can be added back in the future, if there is any need to. Though, adding it back should ideally work out of the box, or at least provide easy workarounds for all commonly used tooling.

ACKs for top commit:
  pinheadmz:
    ACK fa37928536
  l0rinc:
    ACK fa37928536
  hebasto:
    ACK fa37928536.

Tree-SHA512: 5c76faab36ec516b286c2b5b2404e1488c0c4fbc678904593b0acb9c8da9b1db1b41436a22e6aa2f2671650288ccf635554773ef3144dc1df6ea838afce07ecb
2026-01-26 13:55:32 +00:00
fanquake
d94d7b1a4b guix: stop passing depends sources to codesigning
I think this is just a copy-pasta from the build container. I don't see
why we'd need the depends sources available when performing codesigning.
2026-01-15 15:15:25 +00:00
MarcoFalke
fa37928536 build: Temporarily remove confusing and brittle -fdebug-prefix-map 2026-01-14 13:15:09 +01:00
merge-script
8e8d8f29a8 Merge bitcoin/bitcoin#33775: guix: use GCC 14.3.0 over 13.3.0
2a746500fa ci: migrate some jobs to Debian Trixie, use GCC 14 (fanquake)
fb0e6edfe8 guix: Apply SSA generation patch to maintain determinism (Mara van der Laan)
34909799fe guix: use GCC 14.3.0 over 13.3.0 (fanquake)
47be9122a7 guix: disable gprofng in GCC (fanquake)
ea29329eb7 guix: build GCC with --enable-host-bind-now (fanquake)
6f54e267d0 guix: disable libquadmath in GCC (fanquake)
7735901ed2 guix: disable building libgomp in GCC (fanquake)

Pull request description:

  Switching to using GCC 14.x for release builds has come up multiple times recently. It will eventually be needed for #25573, and could also be useful for #30210.

ACKs for top commit:
  hebasto:
    ACK 2a746500fa. I have reviewed the code and it looks OK. The new GCC patch looks reasonable.
  theuni:
    utACK 2a746500fa
  sedited:
    ACK 2a746500fa

Tree-SHA512: 56912bed19386f06d52fb94e0ef6d96f5415ab2de8b5e94890806d7cc0b937a3c4b11cc161aa2e06ca2fd3c392ef7501c91688e0897e1c1c51aafa963f3e50d9
2026-01-13 15:32:23 -08:00
Hennadii Stepanov
194114daf3 guix: Fix osslsigncode tests 2026-01-08 12:45:14 +00:00
Mara van der Laan
fb0e6edfe8 guix: Apply SSA generation patch to maintain determinism
See:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123351
https://gcc.gnu.org/pipermail/gcc-patches/2026-January/704817.html
2026-01-06 10:18:56 +00:00
fanquake
34909799fe guix: use GCC 14.3.0 over 13.3.0
This will eventually be needed for #25573, and could be useful
for #30210.
2026-01-06 09:47:03 +00:00
fanquake
47be9122a7 guix: disable gprofng in GCC 2026-01-06 09:47:03 +00:00
fanquake
ea29329eb7 guix: build GCC with --enable-host-bind-now 2026-01-06 09:47:03 +00:00
fanquake
6f54e267d0 guix: disable libquadmath in GCC
Prunes:
libquadmath.a
libquadmath.la
libquadmath.so
libquadmath.so.0
libquadmath.so.0.0.0
2026-01-06 09:47:02 +00:00
fanquake
7735901ed2 guix: disable building libgomp in GCC
Prunes:
libgomp.a
libgomp.la
libgomp.so
libgomp.so.1
libgomp.so.1.0.0
libgomp.spec
2026-01-06 09:47:02 +00:00
MarcoFalke
fab300b378 test: Enable ruff E713 lint 2025-12-26 08:19:34 +01:00
MarcoFalke
fa5f297748 scripted-diff: [doc] Unify stale copyright headers
-BEGIN VERIFY SCRIPT-

 sed --in-place --regexp-extended \
   's;( 20[0-2][0-9])(-20[0-2][0-9])? The Bitcoin Core developers;\1-present The Bitcoin Core developers;g' \
   $( git grep -l 'The Bitcoin Core developers' -- ':(exclude)COPYING' ':(exclude)src/ipc/libmultiprocess' ':(exclude)src/minisketch' )

-END VERIFY SCRIPT-
2025-12-16 22:21:15 +01:00
David Gumberg
e76e886581 guix: doc: zdiff3 doesn't work 2025-12-12 02:36:17 -08:00
David Gumberg
ea1be38677 guix: doc: Suggest guix-install.sh --uninstall 2025-12-12 02:36:17 -08:00
merge-script
36073d56db Merge bitcoin/bitcoin#33952: depends: update freetype and document remaining bitcoin-qt runtime libs
41e657aacf guix: add bitcoin-qt runtime libs doc in symbol-check (fanquake)
ef4ce19a15 depends: freetype 2.11.1 (fanquake)

Pull request description:

  Update freetype to `2.11.1`.
  Updating fontconfig (currently `2.12.6`) to `2.13.1` requires what looks like a hard dep on gperf; leaving that as-is for now.
  Document expectations in `symbol-check.py`.
  Closes #29977 (changes are based on discussion there).

ACKs for top commit:
  sedited:
    ACK 41e657aacf

Tree-SHA512: 71c4ccc442df0b90bebc475003eb325564111b8312c42bc7d7a9c81a2fc166fdc0814c9ddde3cfe562c3c835556e7f97107458b02a07b981b1a199bf65d5ac1d
2025-12-08 10:10:23 +00:00
merge-script
f09ae5f96f Merge bitcoin/bitcoin#33950: guix: reduce allowed exported symbols
7b90b4f5bb guix: reduce allowed exported symbols (fanquake)

Pull request description:

  Need to double-check, but pretty sure this is atleast partly from #33181.

ACKs for top commit:
  sedited:
    Nice, ACK 7b90b4f5bb

Tree-SHA512: 538c03dc32aab9b3e18100e8ffa0d664aea5ceba6aafee9e8e0894c2d02eea3b3fb09733cf7b5bd0aefb6b56d0ac3b92f28da932e135b23f55404efd8f43664a
2025-12-08 09:40:30 +00:00
Hennadii Stepanov
710031ebef Revert "guix: sqlite wants tcl"
This reverts commit 286f3e49c8.
2025-12-02 14:46:27 +00:00
fanquake
7b90b4f5bb guix: reduce allowed exported symbols 2025-11-27 15:51:56 +00:00
fanquake
41e657aacf guix: add bitcoin-qt runtime libs doc in symbol-check
libfreetype and libfontconfig are our two remaining runtime libs for
bitcoin-qt. According to #29977 Ubuntu 22.04 should be considered the
baseline for what is supported. Document that.

Closes #29977.
2025-11-27 15:05:40 +00:00
fanquake
c1213a35ab macdeploy: disable compression in macOS gen-sdk script
Starting with Python 3.11, Pythons gzip might delegate to zlib.
Depending on the OS, i.e Ubuntu vs Fedora, the underlying zlib
implementation might differ, resulting in different output.

For now, or until a better solution exists, disable compression. This
results in the SDK increasing in size to ~157mb. Which is not
unreasonable, to regain determinism (and would be significantly worse
without the previous commit).

See: https://docs.python.org/3/library/gzip.html#gzip.compress

Co-authored-by: stickies-v <stickies-v@protonmail.com>
2025-11-26 11:07:48 +00:00
merge-script
5fe753b56f Merge bitcoin/bitcoin#32655: depends: sqlite 3.50.4; switch to autosetup
1db7491470 depends: sqlite 3.50.4 (fanquake)
286f3e49c8 guix: sqlite wants tcl (fanquake)

Pull request description:

  Migrate to SQLite `3.50.4` in depends; switching to its new [Autosetup](https://msteveb.github.io/autosetup/) build system.

ACKs for top commit:
  TheCharlatan:
    ACK 1db7491470
  willcl-ark:
    tACK 1db7491470

Tree-SHA512: 2932fcde866e4eb7bae6a7c4fa0ef7a6dfcc4d2fdf239b0a0c224e064086ca8bda62d159f89dd7273db232e609a0d28c625756628b885abcfbc0940d067f4d20
2025-11-25 10:49:26 +00:00
Hennadii Stepanov
d62f46eed4 doc: Add INSTALL.md to Linux release tarballs 2025-11-21 11:33:07 +00:00
merge-script
c8715aca95 Merge bitcoin/bitcoin#33247: build: Remove CMAKE_SKIP_BUILD_RPATH and SKIP_BUILD_RPATH settings
2594d5a189 build: Remove CMAKE_SKIP_BUILD_RPATH and SKIP_BUILD_RPATH settings (Henry Romp)

Pull request description:

  Remove CMAKE_SKIP_BUILD_RPATH and SKIP_BUILD_RPATH settings that are no longer needed after reordering the Guix build script to perform binary checks after installation.

  This PR also removes the unused CMake maintenance targets (`check-security` and `check-symbols`) and updates the Guix security checks to include binaries in the `libexec/` directory (added in PR #31679).

ACKs for top commit:
  purpleKarrot:
    ACK 2594d5a189
  hebasto:
    ACK 2594d5a189.

Tree-SHA512: ed451a298f5aae05c177b0033b092faaa7536caeaa3d84da9b8b611e2aa905e1dd337e57aef0efd69ce6ce6ac0cf77dc57adf175079b95bf53dd96d5d0c8118b
2025-11-17 11:00:03 +00:00
fanquake
96963b888e depends: static libxcb
Co-authored-by: tobtoht <tob@featherwallet.org>
2025-11-13 10:12:08 +00:00
fanquake
5f1b016beb depends: static libxcb-util-image
Co-authored-by: tobtoht <tob@featherwallet.org>
2025-11-13 09:45:54 +00:00
fanquake
98a2fbbe70 depends: static libxkbcommon 2025-11-13 09:45:54 +00:00