build: Consider SOURCE_DATE_EPOCH in Guix environment only #29761

pull hebasto wants to merge 1 commits into bitcoin:master from hebasto:240328-epoch changing 3 files +7 −3
  1. hebasto commented at 9:40 pm on March 28, 2024: member

    The SOURCE_DATE_EPOCH environment variable is supposed to be used to achieve build reproducibility.

    However, using it outside Guix scripts for local builds on macOS is not meaningful.

    This PR makes usage of SOURCE_DATE_EPOCH for macOS consistent with other platforms and simplifies upcoming CMake-based build system scripts.

  2. DrahtBot commented at 9:40 pm on March 28, 2024: contributor

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

    Code Coverage

    For detailed information about the code coverage, see the test coverage report.

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    Concept NACK fanquake

    If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #29790 ([DO NOT MERGE] cmake: Migrate CI scripts to CMake-based build system – WIP by hebasto)

    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.

  3. DrahtBot added the label Build system on Mar 28, 2024
  4. DrahtBot added the label CI failed on Mar 28, 2024
  5. DrahtBot commented at 10:39 pm on March 28, 2024: contributor

    🚧 At least one of the CI tasks failed. Make sure to run all tests locally, according to the documentation.

    Possibly this is due to a silent merge conflict (the changes in this pull request being incompatible with the current code in the target branch). If so, make sure to rebase on the latest commit of the target branch.

    Leave a comment here, if you need help tracking down a confusing failure.

    Debug: https://github.com/bitcoin/bitcoin/runs/23219591618

  6. hebasto marked this as a draft on Mar 29, 2024
  7. build: Consider `SOURCE_DATE_EPOCH` in Guix environment only b78b7f2ee7
  8. hebasto force-pushed on Mar 29, 2024
  9. hebasto commented at 11:01 am on March 29, 2024: member

    Guix builds:

    0x86_64
    1ef12d060b4e4d74030586f9b49e8152e50365d46487bba4f2a659634ef7ee5f6  guix-build-b78b7f2ee77f/output/arm64-apple-darwin/SHA256SUMS.part
    24e06e4a4943f9495311b5f4934bd40145a5b80b64254027f97d92425b4669413  guix-build-b78b7f2ee77f/output/arm64-apple-darwin/bitcoin-b78b7f2ee77f-arm64-apple-darwin-unsigned.tar.gz
    35f0e1f2f4dcf7948870d11375a1acdc64a0bb2d921666474f4fdbe11914158dd  guix-build-b78b7f2ee77f/output/arm64-apple-darwin/bitcoin-b78b7f2ee77f-arm64-apple-darwin-unsigned.zip
    45a0358db31223bcac44b3fd3b9058f12df0bf8b79ff0cdb047ae723303385f09  guix-build-b78b7f2ee77f/output/arm64-apple-darwin/bitcoin-b78b7f2ee77f-arm64-apple-darwin.tar.gz
    5c268e0729f45d442b1a767af4bb63d7940561fe331bda22c431a30f1ad03103b  guix-build-b78b7f2ee77f/output/dist-archive/bitcoin-b78b7f2ee77f.tar.gz
    6b4c7adbec6383abe7077f527b01648bb3b43173ba241b647d8a50ba1fede64a7  guix-build-b78b7f2ee77f/output/x86_64-apple-darwin/SHA256SUMS.part
    74020b84e34860bf65373d9723d046a991a32c723f1f1a3dece6e7609b4fb3988  guix-build-b78b7f2ee77f/output/x86_64-apple-darwin/bitcoin-b78b7f2ee77f-x86_64-apple-darwin-unsigned.tar.gz
    8bb2f73676c6fadc814a97a3c0b06aaeeb5cce6456f0a395dc03102f76797e7cb  guix-build-b78b7f2ee77f/output/x86_64-apple-darwin/bitcoin-b78b7f2ee77f-x86_64-apple-darwin-unsigned.zip
    9b6f9d1e6e6cd7959f43f44d03dc8b958c7e648245452be2112b35a4e0c6af597  guix-build-b78b7f2ee77f/output/x86_64-apple-darwin/bitcoin-b78b7f2ee77f-x86_64-apple-darwin.tar.gz
    
  10. hebasto marked this as ready for review on Mar 29, 2024
  11. DrahtBot removed the label CI failed on Mar 29, 2024
  12. hebasto referenced this in commit 1ff1ea6c2f on Mar 31, 2024
  13. fanquake commented at 7:16 pm on March 31, 2024: member

    However, using it outside Guix scripts for local builds on macOS is not meaningful.

    Why? Using Guix should not be a requirement for SOURCE_DATE_EPOCH to be useful. I would think that given the pinned compilers, and provisioned std lib, the macOS cross build would actually pretty be close to deterministic outside of Guix.

  14. fanquake commented at 9:08 am on April 24, 2024: member
    What is the status of this?
  15. hebasto commented at 10:27 am on April 24, 2024: member

    However, using it outside Guix scripts for local builds on macOS is not meaningful.

    Why? Using Guix should not be a requirement for SOURCE_DATE_EPOCH to be useful.

    Not a requirement. Both Guix and SOURCE_DATE_EPOCH are tools of the same domain, which is build reproducibility.

    I would think that given the pinned compilers, and provisioned std lib, the macOS cross build would actually pretty be close to deterministic outside of Guix.

    Is anyone interesting / working on that?

    What is the status of this?

    Under peer reviewing, I guess :)

  16. fanquake commented at 10:30 am on April 24, 2024: member

    Is anyone interesting / working on that?

    I’m saying it’s likely already the case, without further changes.

    Under peer reviewing, I guess :)

    Ok. Concept NACK I guess. I don’t see the motivation.

  17. hebasto closed this on Apr 24, 2024


github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-09-28 22:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me