Skip to content

Conversation

@dongcarl
Copy link
Contributor

@dongcarl dongcarl commented Mar 5, 2021

This PR addresses a few hiccups encountered by the brave souls who've been experimenting with the Guix scripts:

  • Resolves confusion between --cores= and --max-jobs=
    • guix's --cores= actually corresponds to make's --jobs=, so let's just control --cores= with our overridable env var
  • git-describe will scream fatal: no tag exactly matches '<hash>' when looking for a tag, but we don't care, so silence that
  • windeploy/unsigned should be inside distsrc-* and created idempotently (sorry I know this one annoyed people)
  • Add troubleshooting documentation to README.md
  • Add early health check for guix-daemon in case user forgot to start a guix-daemon
  • Depending on configuration, a --fallback flag may be needed to tell Guix to not fail if substitutes fail but fallback to building locally
  • codesign_allocate and pagestuff are now unnecessary for codesigning as we're now using signapple

A few robustness changes are also included:

  • We supply the --link-profile flag, as some Guix packages may expect the profile to be available under $HOME/.guix-profile
  • We now clear and manually set all toolchain-related env vars (e.g. C*_INCLUDE_PATH) ourselves, after patching a Qt::moc bug
  • We use the native clang-toolchain package for darwin builds instead of clang, lining up with all our other toolchain packages.

Finally, we restructure the guix building hierarchy such that it looks something like:

guix-build-<short-hash-or-version-tag>
├── distsrc-<short-hash-or-version-tag>-${HOST}
│   ├── contrib
│   ├── depends
│   ├── src
│   └── ...
├── distsrc-<short-hash-or-version-tag>-...
└── output
    ├── dist-archive
    │   └── bitcoin-<short-hash-or-version-tag>.tar.gz
    ├── *-linux-*
    │   ├── bitcoin-<short-hash-or-version-tag>-*-linux-*-debug.tar.gz
    │   └── bitcoin-<short-hash-or-version-tag>-*-linux-*.tar.gz
    ├── x86_64-apple-darwin18
    │   ├── bitcoin-<short-hash-or-version-tag>-osx64.tar.gz
    │   ├── bitcoin-<short-hash-or-version-tag>-osx-unsigned.dmg
    │   └── bitcoin-<short-hash-or-version-tag>-osx-unsigned.tar.gz
    └── x86_64-w64-mingw32
        ├── bitcoin-<short-hash-or-version-tag>-win64-debug.zip
        ├── bitcoin-<short-hash-or-version-tag>-win64-setup-unsigned.exe
        ├── bitcoin-<short-hash-or-version-tag>-win64.zip
        └── bitcoin-<short-hash-or-version-tag>-win-unsigned.tar.gz

Separating guix builds by their version identifier (basically namespacing them) allows us to change the layout in the future without worry about potential naming conflicts.

@DrahtBot
Copy link
Contributor

DrahtBot commented Mar 14, 2021

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Conflicts

Reviewers, this pull request conflicts with the following ones:

If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

@dongcarl dongcarl force-pushed the 2021-02-dist-naming branch from 8257966 to 25da213 Compare March 17, 2021 19:00
@dongcarl dongcarl changed the title guix: Cleanup and add guix-{attest,verify} guix: Misc feedback-based fixes + hier restructuring Mar 17, 2021
@dongcarl dongcarl force-pushed the 2021-02-dist-naming branch 2 times, most recently from 55f003b to 8e3608e Compare March 17, 2021 19:39
@dongcarl dongcarl marked this pull request as ready for review March 17, 2021 19:39
@dongcarl dongcarl force-pushed the 2021-02-dist-naming branch from 8e3608e to 61194db Compare March 17, 2021 20:03
...bind-mounted in container to: '$(DISTSRC_BASE=/distsrc-base && distsrc_for_host "$HOST")'
...outputting in: '${OUTDIR:?not set}'
...bind-mounted in container to: '/outdir'
...outdirting in: '$(outdir_for_host "$HOST")'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is "outdirting"?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

😬 Uhh... Over-eager find-and-replace strikes again...

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is still not fixed, FWIW.

@sipa
Copy link
Member

sipa commented Mar 18, 2021

My outdirt:

$ sha256sum $(find -type f | LANG=C sort)
54f46bc056b2d38160d5fde32590a76148e15c37d67d34fc65390ba3f371ea97  ./aarch64-linux-gnu/bitcoin-61194db48c87-aarch64-linux-gnu-debug.tar.gz
9d23600991e1b40aeee8df638e8140183b310ea8fc9a4b080fe1c0a895c173f7  ./aarch64-linux-gnu/bitcoin-61194db48c87-aarch64-linux-gnu.tar.gz
f92f44566ebd3b315d4fbac110b5583d38258d90243bb0690046cebcbd6db85c  ./arm-linux-gnueabihf/bitcoin-61194db48c87-arm-linux-gnueabihf-debug.tar.gz
a9a5656b331988051732f283612ef5c5451c7fba5563af65adb4765e00189bca  ./arm-linux-gnueabihf/bitcoin-61194db48c87-arm-linux-gnueabihf.tar.gz
56d4856462f6c627910da9932d4477d2f09335a2e21a67fc02161b6e87324f43  ./dist-archive/bitcoin-61194db48c87.tar.gz
fd9573284e95c17b023ff34a9c1e63ef2774d7a9d56148dd47e619e9db3fd552  ./powerpc64-linux-gnu/bitcoin-61194db48c87-powerpc64-linux-gnu-debug.tar.gz
997cb276dee01ab9aa6c8f742a4fd4550570c9bfddfe016abde0c0a5ed96f626  ./powerpc64-linux-gnu/bitcoin-61194db48c87-powerpc64-linux-gnu.tar.gz
33037bfa1cf621fdffc7db9d79924fa20396f63dce7c6d75051a4aa8ccb83d60  ./powerpc64le-linux-gnu/bitcoin-61194db48c87-powerpc64le-linux-gnu-debug.tar.gz
c7f2d79a785162453e825345dff38cb53e4fea2f1752375b480138397556a78c  ./powerpc64le-linux-gnu/bitcoin-61194db48c87-powerpc64le-linux-gnu.tar.gz
2df5d6a009ae1ba4b87bb68190fbcc0144d779ef0658582510087ab03a3138df  ./riscv64-linux-gnu/bitcoin-61194db48c87-riscv64-linux-gnu-debug.tar.gz
fe4518267aff57ee69ed8333654661dbe3672d53149a38880ba09226b04bcd56  ./riscv64-linux-gnu/bitcoin-61194db48c87-riscv64-linux-gnu.tar.gz
cee31dfd3a107ac2a83d4cebea19550b3c3aa9d6996ecfd956072cbf3ac12061  ./x86_64-apple-darwin18/bitcoin-61194db48c87-osx-unsigned.dmg
fd1e1116adac330def0b285763262941f23f9d792dc92bb07e68620f1b6dc556  ./x86_64-apple-darwin18/bitcoin-61194db48c87-osx-unsigned.tar.gz
12194e2c4504a63329b082c26543fff112f3ebc184b2aadbbfb57779d1968047  ./x86_64-apple-darwin18/bitcoin-61194db48c87-osx64.tar.gz
81006656851795b0414e523520ec3d222d9033bc84c68354332632b8536e4d87  ./x86_64-linux-gnu/bitcoin-61194db48c87-x86_64-linux-gnu-debug.tar.gz
678dfae6336edefe90d048c05335f699bb7fe27b7420d47674bc3125e79f6b3b  ./x86_64-linux-gnu/bitcoin-61194db48c87-x86_64-linux-gnu.tar.gz
56a1eec1494674294015bbfa7bba3fa65c95eb7c4984e366483d3e0c6795b887  ./x86_64-w64-mingw32/bitcoin-61194db48c87-win-unsigned.tar.gz
01f04e86a8371fda4971914d06a775ed00a1122713427b8e591aadef675a5e31  ./x86_64-w64-mingw32/bitcoin-61194db48c87-win64-debug.zip
1f83850e8e22ef93c2731ff99b1c0b7ae2cb70a8712d3b04c7bb4a5080d91c39  ./x86_64-w64-mingw32/bitcoin-61194db48c87-win64-setup-unsigned.exe
408d22aea8d5f22ade221ed9188ea859ef1f2395b7d74d817855e090a2328321  ./x86_64-w64-mingw32/bitcoin-61194db48c87-win64.zip

@fanquake
Copy link
Member

My outdirt. Looks like there's still a diff in the osx unsigned tarball:

find output -type f -name *$(git rev-parse --short HEAD)*.* -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
54f46bc056b2d38160d5fde32590a76148e15c37d67d34fc65390ba3f371ea97  output/aarch64-linux-gnu/bitcoin-61194db48c87-aarch64-linux-gnu-debug.tar.gz
9d23600991e1b40aeee8df638e8140183b310ea8fc9a4b080fe1c0a895c173f7  output/aarch64-linux-gnu/bitcoin-61194db48c87-aarch64-linux-gnu.tar.gz
f92f44566ebd3b315d4fbac110b5583d38258d90243bb0690046cebcbd6db85c  output/arm-linux-gnueabihf/bitcoin-61194db48c87-arm-linux-gnueabihf-debug.tar.gz
a9a5656b331988051732f283612ef5c5451c7fba5563af65adb4765e00189bca  output/arm-linux-gnueabihf/bitcoin-61194db48c87-arm-linux-gnueabihf.tar.gz
56d4856462f6c627910da9932d4477d2f09335a2e21a67fc02161b6e87324f43  output/dist-archive/bitcoin-61194db48c87.tar.gz
fd9573284e95c17b023ff34a9c1e63ef2774d7a9d56148dd47e619e9db3fd552  output/powerpc64-linux-gnu/bitcoin-61194db48c87-powerpc64-linux-gnu-debug.tar.gz
997cb276dee01ab9aa6c8f742a4fd4550570c9bfddfe016abde0c0a5ed96f626  output/powerpc64-linux-gnu/bitcoin-61194db48c87-powerpc64-linux-gnu.tar.gz
33037bfa1cf621fdffc7db9d79924fa20396f63dce7c6d75051a4aa8ccb83d60  output/powerpc64le-linux-gnu/bitcoin-61194db48c87-powerpc64le-linux-gnu-debug.tar.gz
c7f2d79a785162453e825345dff38cb53e4fea2f1752375b480138397556a78c  output/powerpc64le-linux-gnu/bitcoin-61194db48c87-powerpc64le-linux-gnu.tar.gz
2df5d6a009ae1ba4b87bb68190fbcc0144d779ef0658582510087ab03a3138df  output/riscv64-linux-gnu/bitcoin-61194db48c87-riscv64-linux-gnu-debug.tar.gz
fe4518267aff57ee69ed8333654661dbe3672d53149a38880ba09226b04bcd56  output/riscv64-linux-gnu/bitcoin-61194db48c87-riscv64-linux-gnu.tar.gz
cee31dfd3a107ac2a83d4cebea19550b3c3aa9d6996ecfd956072cbf3ac12061  output/x86_64-apple-darwin18/bitcoin-61194db48c87-osx-unsigned.dmg
5e1237b7197c2bd9f163371c5fcdb03f111db9bcfb62f178de303add7f2c1528  output/x86_64-apple-darwin18/bitcoin-61194db48c87-osx-unsigned.tar.gz
12194e2c4504a63329b082c26543fff112f3ebc184b2aadbbfb57779d1968047  output/x86_64-apple-darwin18/bitcoin-61194db48c87-osx64.tar.gz
81006656851795b0414e523520ec3d222d9033bc84c68354332632b8536e4d87  output/x86_64-linux-gnu/bitcoin-61194db48c87-x86_64-linux-gnu-debug.tar.gz
678dfae6336edefe90d048c05335f699bb7fe27b7420d47674bc3125e79f6b3b  output/x86_64-linux-gnu/bitcoin-61194db48c87-x86_64-linux-gnu.tar.gz
56a1eec1494674294015bbfa7bba3fa65c95eb7c4984e366483d3e0c6795b887  output/x86_64-w64-mingw32/bitcoin-61194db48c87-win-unsigned.tar.gz
01f04e86a8371fda4971914d06a775ed00a1122713427b8e591aadef675a5e31  output/x86_64-w64-mingw32/bitcoin-61194db48c87-win64-debug.zip
1f83850e8e22ef93c2731ff99b1c0b7ae2cb70a8712d3b04c7bb4a5080d91c39  output/x86_64-w64-mingw32/bitcoin-61194db48c87-win64-setup-unsigned.exe
408d22aea8d5f22ade221ed9188ea859ef1f2395b7d74d817855e090a2328321  output/x86_64-w64-mingw32/bitcoin-61194db48c87-win64.zip

@dongcarl
Copy link
Contributor Author

Mine!

$ find guix-build-61194db48c87/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
54f46bc056b2d38160d5fde32590a76148e15c37d67d34fc65390ba3f371ea97  guix-build-61194db48c87/output/aarch64-linux-gnu/bitcoin-61194db48c87-aarch64-linux-gnu-debug.tar.gz
9d23600991e1b40aeee8df638e8140183b310ea8fc9a4b080fe1c0a895c173f7  guix-build-61194db48c87/output/aarch64-linux-gnu/bitcoin-61194db48c87-aarch64-linux-gnu.tar.gz
f92f44566ebd3b315d4fbac110b5583d38258d90243bb0690046cebcbd6db85c  guix-build-61194db48c87/output/arm-linux-gnueabihf/bitcoin-61194db48c87-arm-linux-gnueabihf-debug.tar.gz
a9a5656b331988051732f283612ef5c5451c7fba5563af65adb4765e00189bca  guix-build-61194db48c87/output/arm-linux-gnueabihf/bitcoin-61194db48c87-arm-linux-gnueabihf.tar.gz
56d4856462f6c627910da9932d4477d2f09335a2e21a67fc02161b6e87324f43  guix-build-61194db48c87/output/dist-archive/bitcoin-61194db48c87.tar.gz
fd9573284e95c17b023ff34a9c1e63ef2774d7a9d56148dd47e619e9db3fd552  guix-build-61194db48c87/output/powerpc64-linux-gnu/bitcoin-61194db48c87-powerpc64-linux-gnu-debug.tar.gz
997cb276dee01ab9aa6c8f742a4fd4550570c9bfddfe016abde0c0a5ed96f626  guix-build-61194db48c87/output/powerpc64-linux-gnu/bitcoin-61194db48c87-powerpc64-linux-gnu.tar.gz
33037bfa1cf621fdffc7db9d79924fa20396f63dce7c6d75051a4aa8ccb83d60  guix-build-61194db48c87/output/powerpc64le-linux-gnu/bitcoin-61194db48c87-powerpc64le-linux-gnu-debug.tar.gz
c7f2d79a785162453e825345dff38cb53e4fea2f1752375b480138397556a78c  guix-build-61194db48c87/output/powerpc64le-linux-gnu/bitcoin-61194db48c87-powerpc64le-linux-gnu.tar.gz
2df5d6a009ae1ba4b87bb68190fbcc0144d779ef0658582510087ab03a3138df  guix-build-61194db48c87/output/riscv64-linux-gnu/bitcoin-61194db48c87-riscv64-linux-gnu-debug.tar.gz
fe4518267aff57ee69ed8333654661dbe3672d53149a38880ba09226b04bcd56  guix-build-61194db48c87/output/riscv64-linux-gnu/bitcoin-61194db48c87-riscv64-linux-gnu.tar.gz
cee31dfd3a107ac2a83d4cebea19550b3c3aa9d6996ecfd956072cbf3ac12061  guix-build-61194db48c87/output/x86_64-apple-darwin18/bitcoin-61194db48c87-osx-unsigned.dmg
0173b1cf6992390602433aa1d99ebf3e33d47cbad591a6b11f23350cfb4b9b5e  guix-build-61194db48c87/output/x86_64-apple-darwin18/bitcoin-61194db48c87-osx-unsigned.tar.gz
12194e2c4504a63329b082c26543fff112f3ebc184b2aadbbfb57779d1968047  guix-build-61194db48c87/output/x86_64-apple-darwin18/bitcoin-61194db48c87-osx64.tar.gz
81006656851795b0414e523520ec3d222d9033bc84c68354332632b8536e4d87  guix-build-61194db48c87/output/x86_64-linux-gnu/bitcoin-61194db48c87-x86_64-linux-gnu-debug.tar.gz
678dfae6336edefe90d048c05335f699bb7fe27b7420d47674bc3125e79f6b3b  guix-build-61194db48c87/output/x86_64-linux-gnu/bitcoin-61194db48c87-x86_64-linux-gnu.tar.gz
56a1eec1494674294015bbfa7bba3fa65c95eb7c4984e366483d3e0c6795b887  guix-build-61194db48c87/output/x86_64-w64-mingw32/bitcoin-61194db48c87-win-unsigned.tar.gz
01f04e86a8371fda4971914d06a775ed00a1122713427b8e591aadef675a5e31  guix-build-61194db48c87/output/x86_64-w64-mingw32/bitcoin-61194db48c87-win64-debug.zip
1f83850e8e22ef93c2731ff99b1c0b7ae2cb70a8712d3b04c7bb4a5080d91c39  guix-build-61194db48c87/output/x86_64-w64-mingw32/bitcoin-61194db48c87-win64-setup-unsigned.exe
408d22aea8d5f22ade221ed9188ea859ef1f2395b7d74d817855e090a2328321  guix-build-61194db48c87/output/x86_64-w64-mingw32/bitcoin-61194db48c87-win64.zip

I'm going to guess dmg is causing it... If one of you can upload I'm going to get to the bottom of this.

@fanquake
Copy link
Member

If one of you can upload I'm going to get to the bottom of this.

Uploaded here: https://github.com/fanquake/build_artifacts/releases/tag/guix_21375

@dongcarl
Copy link
Contributor Author

dongcarl commented Mar 18, 2021

Testing a hypothesis: @sipa @fanquake could one of you build 8170456 with HOSTS='x86_64-apple-darwin18'?

I got:

1bbdaaeda79420b5d4b33de5490344e9526783ca43dbf31e11c02b34a4761685  guix-build-8170456b5b0b/output/dist-archive/bitcoin-8170456b5b0b.tar.gz
417cd25618d10ec7efe6575ac79cf5265dfe689219113cd19a834b61deeb275e  guix-build-8170456b5b0b/output/x86_64-apple-darwin18/bitcoin-8170456b5b0b-osx-unsigned.dmg
f549b232b3eb6d45fcd4f8939b2ad3e80033c470d907a119ea8ec165dafa43f2  guix-build-8170456b5b0b/output/x86_64-apple-darwin18/bitcoin-8170456b5b0b-osx-unsigned.tar.gz
21a976a7647679f34a6afc54a25d0cd85d9a44d33891adab01153c992f8da512  guix-build-8170456b5b0b/output/x86_64-apple-darwin18/bitcoin-8170456b5b0b-osx64.tar.gz

@sipa
Copy link
Member

sipa commented Mar 18, 2021

@dongcarl I got:

1bbdaaeda79420b5d4b33de5490344e9526783ca43dbf31e11c02b34a4761685  ./dist-archive/bitcoin-8170456b5b0b.tar.gz
417cd25618d10ec7efe6575ac79cf5265dfe689219113cd19a834b61deeb275e  ./x86_64-apple-darwin18/bitcoin-8170456b5b0b-osx-unsigned.dmg
f549b232b3eb6d45fcd4f8939b2ad3e80033c470d907a119ea8ec165dafa43f2  ./x86_64-apple-darwin18/bitcoin-8170456b5b0b-osx-unsigned.tar.gz
21a976a7647679f34a6afc54a25d0cd85d9a44d33891adab01153c992f8da512  ./x86_64-apple-darwin18/bitcoin-8170456b5b0b-osx64.tar.gz

@dongcarl
Copy link
Contributor Author

Great! Looks like we have reproducibility. I'm experimenting a bit with building dmg as a static executable right now, which I think is the right move. Any binary we put in our output should "err on the side on portability," and in this case, since dmg doesn't need NSS or any networking, we can just make it fully static.

@hebasto
Copy link
Member

hebasto commented Mar 18, 2021

$ find guix-build-8170456b5b0b/output -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
1bbdaaeda79420b5d4b33de5490344e9526783ca43dbf31e11c02b34a4761685  guix-build-8170456b5b0b/output/dist-archive/bitcoin-8170456b5b0b.tar.gz
417cd25618d10ec7efe6575ac79cf5265dfe689219113cd19a834b61deeb275e  guix-build-8170456b5b0b/output/x86_64-apple-darwin18/bitcoin-8170456b5b0b-osx-unsigned.dmg
f549b232b3eb6d45fcd4f8939b2ad3e80033c470d907a119ea8ec165dafa43f2  guix-build-8170456b5b0b/output/x86_64-apple-darwin18/bitcoin-8170456b5b0b-osx-unsigned.tar.gz
21a976a7647679f34a6afc54a25d0cd85d9a44d33891adab01153c992f8da512  guix-build-8170456b5b0b/output/x86_64-apple-darwin18/bitcoin-8170456b5b0b-osx64.tar.gz

@laanwj
Copy link
Member

laanwj commented Mar 19, 2021

What is the rationale for removing the .sh from the build script filename?

It seems to me that the convention in the rest of the repository is to keep the .py/.sh extension for scripts, even the main units.

@dongcarl
Copy link
Contributor Author

What is the rationale for removing the .sh from the build script filename?

I was thinking that we might change the scripting language for these scripts in the future, or perhaps just have a python wrapper which interprets arguments. I that case, I wouldn't want to have everyone change their invocation again, therefore I omitted the .sh. I'm happy to do either way though!

dongcarl added 9 commits April 5, 2021 11:00
CMake's RPATH patching apparently causes non-reproducibility in the
executables which are produced, manifesting in a difference in padding
in the .dynstr section (we found this while investigating
non-reproducibility in the "dmg" tool). This RPATH patching can be
safely skipped for executables which don't depend on internal shared
libraries.

Documentation sources:
1. https://gitlab.kitware.com/cmake/community/-/wikis/doc/cmake/RPATH-handling
2. https://reproducible-builds.org/docs/deterministic-build-systems/#cmake-notes

Prior debugging art:
1. https://stackoverflow.com/questions/63438206/cmake-g-reproducible-build-issue-with-changing-build-path
2. https://github.com/NXPmicro/mfgtools/pull/229/files
This relatively easy change eliminates all runtime dependencies (except
for the kernel) for dmg, which is the only native build tool that gets
put in our output tarballs.

This allows much more flexibility when constructing the codesigning
environment, and is much more robust.
@dongcarl dongcarl force-pushed the 2021-02-dist-naming branch from edf5c8a to 7476b46 Compare April 5, 2021 15:01
@dongcarl
Copy link
Contributor Author

dongcarl commented Apr 5, 2021

Pushed edf5c8a8182e30862c7d62f11147ead31e029f04 -> 7476b46

$ find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
95c20e95a7fac6e0a1d2fe8ab39f882a7b92dce457bcf617beb7885608ce6d4b  guix-build-7476b46f1893/output/aarch64-linux-gnu/bitcoin-7476b46f1893-aarch64-linux-gnu-debug.tar.gz
d1da31d62a5eb8b7bd5757994b3fed344774554a5db420a9e0126717abc1a0e0  guix-build-7476b46f1893/output/aarch64-linux-gnu/bitcoin-7476b46f1893-aarch64-linux-gnu.tar.gz
901353750ddb4edf242b6f0be8f2d792f5cd7396c92e08425af0425d48edc26f  guix-build-7476b46f1893/output/arm-linux-gnueabihf/bitcoin-7476b46f1893-arm-linux-gnueabihf-debug.tar.gz
43b82d0289bfe393d4473552daa61e9969bf2bf673b909a43e33f041251b1873  guix-build-7476b46f1893/output/arm-linux-gnueabihf/bitcoin-7476b46f1893-arm-linux-gnueabihf.tar.gz
136b6db7095ad7d9deace423042b4c8555778502d0aeaf20f7824a865cdebe1d  guix-build-7476b46f1893/output/dist-archive/bitcoin-7476b46f1893.tar.gz
63c168a78021fe9564ba64a9dacadedf3fa74ce3af94b63389b581e6d2b92a91  guix-build-7476b46f1893/output/powerpc64-linux-gnu/bitcoin-7476b46f1893-powerpc64-linux-gnu-debug.tar.gz
93bed490a7d6029fd1f96edcbe0c1a6482f90cd12ce5f520f6d57a9d879d2810  guix-build-7476b46f1893/output/powerpc64-linux-gnu/bitcoin-7476b46f1893-powerpc64-linux-gnu.tar.gz
2a085f1c9ac270502bedfda1de12ca075fe55805275aae17d92872821d5ef6dd  guix-build-7476b46f1893/output/powerpc64le-linux-gnu/bitcoin-7476b46f1893-powerpc64le-linux-gnu-debug.tar.gz
73c30078d872733cfd908cdc5b3430e01b6001ff1f8454f08d1a904fd196e502  guix-build-7476b46f1893/output/powerpc64le-linux-gnu/bitcoin-7476b46f1893-powerpc64le-linux-gnu.tar.gz
9728024ae3cff4d067410c61a1024a3dc7526a4842a51a06ff2d3a1a67294833  guix-build-7476b46f1893/output/riscv64-linux-gnu/bitcoin-7476b46f1893-riscv64-linux-gnu-debug.tar.gz
f67986dc977ee4b791a505bc14e032f625713a69d9090d9d3f5d45154785dd5d  guix-build-7476b46f1893/output/riscv64-linux-gnu/bitcoin-7476b46f1893-riscv64-linux-gnu.tar.gz
32466d33c282fbb5da9d49fe46a71403b280fbfe9fd0fe33169fbec118c1b582  guix-build-7476b46f1893/output/x86_64-apple-darwin18/bitcoin-7476b46f1893-osx-unsigned.dmg
8e3cd482b143ce87075b01881f53c233e7867a0ff97ee810529d56fa6080ee72  guix-build-7476b46f1893/output/x86_64-apple-darwin18/bitcoin-7476b46f1893-osx-unsigned.tar.gz
ef7aaebeb0cc5d14aacce1fb2bf5e2ec9ab9652142ebcc5e0378c967583c778d  guix-build-7476b46f1893/output/x86_64-apple-darwin18/bitcoin-7476b46f1893-osx64.tar.gz
9559ad27c0e76373e5e9b6a068ce0e9a51031fb121c12cdab0bb0a183624efcd  guix-build-7476b46f1893/output/x86_64-linux-gnu/bitcoin-7476b46f1893-x86_64-linux-gnu-debug.tar.gz
23fba5cfd134fd35c78e05bab8207a0909acce15ffe5fb8fed7703fabe389e96  guix-build-7476b46f1893/output/x86_64-linux-gnu/bitcoin-7476b46f1893-x86_64-linux-gnu.tar.gz
73bd95215fcdb6428ad16e785502b6438f4ec02f9c3e237f7bfab213e2b79077  guix-build-7476b46f1893/output/x86_64-w64-mingw32/bitcoin-7476b46f1893-win-unsigned.tar.gz
c2b919c0a6bdf6b31c86bc52a22a69c78df2f1adfda5e0629e24c2c5accd1715  guix-build-7476b46f1893/output/x86_64-w64-mingw32/bitcoin-7476b46f1893-win64-debug.zip
8add7726bc390f177ea67ba7fb5b6697e9f51cf1c7c82e87ef89163fcfd62834  guix-build-7476b46f1893/output/x86_64-w64-mingw32/bitcoin-7476b46f1893-win64-setup-unsigned.exe
453af78c249b5fb8341bb48850a4a886d26595f35cda7f72fea97b0f14760dc2  guix-build-7476b46f1893/output/x86_64-w64-mingw32/bitcoin-7476b46f1893-win64.zip

@sipa
Copy link
Member

sipa commented Apr 5, 2021

ACK 7476b46

@sipa
Copy link
Member

sipa commented Apr 5, 2021

$ find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
95c20e95a7fac6e0a1d2fe8ab39f882a7b92dce457bcf617beb7885608ce6d4b  guix-build-7476b46f1893/output/aarch64-linux-gnu/bitcoin-7476b46f1893-aarch64-linux-gnu-debug.tar.gz
d1da31d62a5eb8b7bd5757994b3fed344774554a5db420a9e0126717abc1a0e0  guix-build-7476b46f1893/output/aarch64-linux-gnu/bitcoin-7476b46f1893-aarch64-linux-gnu.tar.gz
901353750ddb4edf242b6f0be8f2d792f5cd7396c92e08425af0425d48edc26f  guix-build-7476b46f1893/output/arm-linux-gnueabihf/bitcoin-7476b46f1893-arm-linux-gnueabihf-debug.tar.gz
43b82d0289bfe393d4473552daa61e9969bf2bf673b909a43e33f041251b1873  guix-build-7476b46f1893/output/arm-linux-gnueabihf/bitcoin-7476b46f1893-arm-linux-gnueabihf.tar.gz
136b6db7095ad7d9deace423042b4c8555778502d0aeaf20f7824a865cdebe1d  guix-build-7476b46f1893/output/dist-archive/bitcoin-7476b46f1893.tar.gz
63c168a78021fe9564ba64a9dacadedf3fa74ce3af94b63389b581e6d2b92a91  guix-build-7476b46f1893/output/powerpc64-linux-gnu/bitcoin-7476b46f1893-powerpc64-linux-gnu-debug.tar.gz
93bed490a7d6029fd1f96edcbe0c1a6482f90cd12ce5f520f6d57a9d879d2810  guix-build-7476b46f1893/output/powerpc64-linux-gnu/bitcoin-7476b46f1893-powerpc64-linux-gnu.tar.gz
2a085f1c9ac270502bedfda1de12ca075fe55805275aae17d92872821d5ef6dd  guix-build-7476b46f1893/output/powerpc64le-linux-gnu/bitcoin-7476b46f1893-powerpc64le-linux-gnu-debug.tar.gz
73c30078d872733cfd908cdc5b3430e01b6001ff1f8454f08d1a904fd196e502  guix-build-7476b46f1893/output/powerpc64le-linux-gnu/bitcoin-7476b46f1893-powerpc64le-linux-gnu.tar.gz
9728024ae3cff4d067410c61a1024a3dc7526a4842a51a06ff2d3a1a67294833  guix-build-7476b46f1893/output/riscv64-linux-gnu/bitcoin-7476b46f1893-riscv64-linux-gnu-debug.tar.gz
f67986dc977ee4b791a505bc14e032f625713a69d9090d9d3f5d45154785dd5d  guix-build-7476b46f1893/output/riscv64-linux-gnu/bitcoin-7476b46f1893-riscv64-linux-gnu.tar.gz
32466d33c282fbb5da9d49fe46a71403b280fbfe9fd0fe33169fbec118c1b582  guix-build-7476b46f1893/output/x86_64-apple-darwin18/bitcoin-7476b46f1893-osx-unsigned.dmg
8e3cd482b143ce87075b01881f53c233e7867a0ff97ee810529d56fa6080ee72  guix-build-7476b46f1893/output/x86_64-apple-darwin18/bitcoin-7476b46f1893-osx-unsigned.tar.gz
ef7aaebeb0cc5d14aacce1fb2bf5e2ec9ab9652142ebcc5e0378c967583c778d  guix-build-7476b46f1893/output/x86_64-apple-darwin18/bitcoin-7476b46f1893-osx64.tar.gz
9559ad27c0e76373e5e9b6a068ce0e9a51031fb121c12cdab0bb0a183624efcd  guix-build-7476b46f1893/output/x86_64-linux-gnu/bitcoin-7476b46f1893-x86_64-linux-gnu-debug.tar.gz
23fba5cfd134fd35c78e05bab8207a0909acce15ffe5fb8fed7703fabe389e96  guix-build-7476b46f1893/output/x86_64-linux-gnu/bitcoin-7476b46f1893-x86_64-linux-gnu.tar.gz
73bd95215fcdb6428ad16e785502b6438f4ec02f9c3e237f7bfab213e2b79077  guix-build-7476b46f1893/output/x86_64-w64-mingw32/bitcoin-7476b46f1893-win-unsigned.tar.gz
c2b919c0a6bdf6b31c86bc52a22a69c78df2f1adfda5e0629e24c2c5accd1715  guix-build-7476b46f1893/output/x86_64-w64-mingw32/bitcoin-7476b46f1893-win64-debug.zip
8add7726bc390f177ea67ba7fb5b6697e9f51cf1c7c82e87ef89163fcfd62834  guix-build-7476b46f1893/output/x86_64-w64-mingw32/bitcoin-7476b46f1893-win64-setup-unsigned.exe
453af78c249b5fb8341bb48850a4a886d26595f35cda7f72fea97b0f14760dc2  guix-build-7476b46f1893/output/x86_64-w64-mingw32/bitcoin-7476b46f1893-win64.zip

@laanwj
Copy link
Member

laanwj commented Apr 5, 2021

ACK 7476b46
My output (built in a GUIX VM) matches @sipa's 100%.

@laanwj laanwj merged commit 0102f80 into bitcoin:master Apr 5, 2021
fanquake added a commit that referenced this pull request Apr 6, 2021
5c09bca Fix a typo in guix-build output (Pieter Wuille)

Pull request description:

  This was overlooked in #21375.

ACKs for top commit:
  fanquake:
    ACK 5c09bca

Tree-SHA512: 81d8ad4061abb17d5f16ae72ab0c88df76d5a2f100cb9f471ca700d2e87583103036367ea1958a1066f9613f63908d1b2b35734a7eb77ec9850d4c8b079732e1
sidhujag pushed a commit to syscoin/syscoin that referenced this pull request Apr 6, 2021
sidhujag pushed a commit to syscoin/syscoin that referenced this pull request Apr 6, 2021
5c09bca Fix a typo in guix-build output (Pieter Wuille)

Pull request description:

  This was overlooked in bitcoin#21375.

ACKs for top commit:
  fanquake:
    ACK 5c09bca

Tree-SHA512: 81d8ad4061abb17d5f16ae72ab0c88df76d5a2f100cb9f471ca700d2e87583103036367ea1958a1066f9613f63908d1b2b35734a7eb77ec9850d4c8b079732e1
@hebasto hebasto mentioned this pull request Apr 9, 2021
@hebasto
Copy link
Member

hebasto commented Apr 9, 2021

Finally, we restructure the guix building hierarchy such that it looks something like:

Also see #21643.

fanquake added a commit that referenced this pull request Apr 11, 2021
8e84c18 Ignore guix builds (Hennadii Stepanov)

Pull request description:

  This PR is a #21375 follow up.

ACKs for top commit:
  sipa:
    ACK 8e84c18

Tree-SHA512: 71d1c5acac3382f232074a025445d6d6660cb99e53233fade9ab29ad95b56da44e4e42e44411cfef175a0a8f3800633779ad1d24c2cfdcbc1a36239d38d5b8c3
laanwj added a commit to bitcoin-core/gui that referenced this pull request Nov 30, 2021
… by the `shellcheck` tool

a3f6167 test: Make more shell scripts verifiable by the `shellcheck` tool (Hennadii Stepanov)

Pull request description:

  Some shell scripts from `contrib/guix` and `contrib/shell` are not verifiable by the `shellcheck` tool for the following reasons:
  - they have no extension (see bitcoin/bitcoin@4eccf06 from bitcoin/bitcoin#21375)
  - they have the `.bash` extension while `.sh` is expected

  This PR adds these scripts to the input for the `shellcheck` tool, and it fixes discovered `shellcheck` warnings.

ACKs for top commit:
  dongcarl:
    Code Review ACK a3f6167, this is a good robustness improvement for our shell scripts.
  jamesob:
    crACK bitcoin/bitcoin@a3f6167

Tree-SHA512: 6703f5369d9c04c1a174491f381afa5ec2cc4d37321c1b93615abcdde4dfd3caae82868b699c25b72132d8c8c6f2e9cf24d38eb180ed4d0f0584d8c282e58935
RandyMcMillan pushed a commit to RandyMcMillan/mempool-tab that referenced this pull request Dec 23, 2021
… by the `shellcheck` tool

56a3907 test: Make more shell scripts verifiable by the `shellcheck` tool (Hennadii Stepanov)

Pull request description:

  Some shell scripts from `contrib/guix` and `contrib/shell` are not verifiable by the `shellcheck` tool for the following reasons:
  - they have no extension (see bitcoin/bitcoin@d8d1eb0 from bitcoin/bitcoin#21375)
  - they have the `.bash` extension while `.sh` is expected

  This PR adds these scripts to the input for the `shellcheck` tool, and it fixes discovered `shellcheck` warnings.

ACKs for top commit:
  dongcarl:
    Code Review ACK 56a3907, this is a good robustness improvement for our shell scripts.
  jamesob:
    crACK bitcoin/bitcoin@56a3907

Tree-SHA512: 6703f5369d9c04c1a174491f381afa5ec2cc4d37321c1b93615abcdde4dfd3caae82868b699c25b72132d8c8c6f2e9cf24d38eb180ed4d0f0584d8c282e58935
PastaPastaPasta pushed a commit to PastaPastaPasta/dash that referenced this pull request Dec 28, 2021
8e84c18 Ignore guix builds (Hennadii Stepanov)

Pull request description:

  This PR is a bitcoin#21375 follow up.

ACKs for top commit:
  sipa:
    ACK 8e84c18

Tree-SHA512: 71d1c5acac3382f232074a025445d6d6660cb99e53233fade9ab29ad95b56da44e4e42e44411cfef175a0a8f3800633779ad1d24c2cfdcbc1a36239d38d5b8c3
@bitcoin bitcoin locked as resolved and limited conversation to collaborators Aug 16, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants