aboutsummaryrefslogtreecommitdiff
path: root/build-aux
AgeCommit message (Collapse)Author
2020-05-07git-authenticate: Use the 'origin/keyring' branch by default.Ludovic Courtès
Previously one would need to have a worktree for the local 'keyring' branch. Reported by reepca and bricewge on #guix. * build-aux/git-authenticate.scm (load-keyring-from-reference): Use 'branch-lookup' instead of 'reference-lookup'. Add "origin/" to REFERENCE. (authenticate-commits): Have #:keyring-reference default to "keyring".
2020-05-05Merge branch 'master' into core-updatesMarius Bakke
2020-05-04git-authenticate: Add missing import.Ludovic Courtès
* build-aux/git-authenticate.scm: Import (guix utils), used by the cache handling code and inadvertently removed in 041dc3a9c0694ada41b86115b9774a23c9d50f73.
2020-05-04git-authenticate: Load the keyring from the repository.Ludovic Courtès
* build-aux/git-authenticate.scm (load-keyring-from-blob) (load-keyring-from-reference): New procedures. (authenticate-commits): Add #:keyring-reference and use 'load-keyring-from-reference'.
2020-05-04git-authenticate: Load the list of authorized keys from the tree.Ludovic Courtès
* build-aux/git-authenticate.scm (read-authorizations) (commit-authorized-keys): New procedures. (authenticate-commit): Use it instead of %AUTHORIZED-SIGNING-KEYS.
2020-05-04git-authenticate: Use (guix openpgp).Ludovic Courtès
It can now authenticate 14K+ commits in 23s instead of 4mn20. * build-aux/git-authenticate.scm (%authorized-signing-keys): Turn fingerprints into bytevectors. (with-temporary-files): Remove. (commit-signing-key): Add 'keyring' parameter. Use 'string->openpgp-packet' and 'verify-openpgp-signature' instead of (guix gnupg) procedures. (authenticate-commit): Add 'keyring' parameter. Pass it to 'commit-signing-key'. Adjust to SIGNING-KEY being an <openpgp-public-key>. (authenticate-commits): Remove 'parameterize'. Load keyring with 'get-openpgp-keyring'. (git-authenticate): When printing stats, adjust to SIGNER being an <openpgp-public-key>.
2020-04-19Merge branch 'master' into core-updatesMarius Bakke
2020-04-17gnupg: Accept revoked keys.Tobias Geerinckx-Rice
I (nckx) have revoked all RSA subkeys, in favour of my older and freshly-refreshed ECDSA ones. This was merely a precaution: to my knowledge all my RSA private keys have been carefully destroyed and were never compromised. This commit keeps ‘make authenticate’ happy. * guix/gnupg.scm (revkeysig-rx): New variable for revoked keys. (gnupg-verify): Parse it. (gnupg-status-good-signature?): Accept it as ‘good’ for our purposes. * build-aux/git-authenticate.scm (%committers): Clarify nckx's subkeys. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-04-15Merge branch 'master' into core-updatesMarius Bakke
2020-04-12build: Cap build parallelism on i686.Ludovic Courtès
Works around <https://bugs.gnu.org/40522>. * build-aux/compile-all.scm (parallel-job-count*): New procedure. <top level>: Use it instead of 'parallel-job-count'.
2020-04-08Merge branch 'master' into core-updatesMarius Bakke
Conflicts: etc/news.scm gnu/local.mk gnu/packages/check.scm gnu/packages/cross-base.scm gnu/packages/gimp.scm gnu/packages/java.scm gnu/packages/mail.scm gnu/packages/sdl.scm gnu/packages/texinfo.scm gnu/packages/tls.scm gnu/packages/version-control.scm
2020-04-06build-self: Avoid call to 'show-what-to-build*' on modern Guix.Ludovic Courtès
This avoids repeated "will be downloaded" messages for 'compute-guix-derivation' and its dependencies. * build-aux/build-self.scm (build): Don't call 'show-what-to-build*' when 'with-build-handler' is defined.
2020-03-30Merge branch 'master' into core-updatesMarius Bakke
Conflicts: gnu/packages/admin.scm gnu/packages/commencement.scm gnu/packages/guile.scm gnu/packages/linux.scm gnu/packages/package-management.scm gnu/packages/pulseaudio.scm gnu/packages/web.scm
2020-03-28Update email address and Savannah handle for Amin Bandali.Amin Bandali
* .mailmap, gnu/local.mk, gnu/packages/emacs-xyz.scm, gnu/packages/emacs.scm, gnu/packages/fonts.scm, gnu/packages/fpga.scm, gnu/packages/lean.scm, gnu/packages/maths.scm, gnu/packages/pulseaudio.scm: Update my email address. * build-aux/git-authenticate.scm: Update my Savannah handle.
2020-03-27Merge branch 'master' into core-updatesMarius Bakke
Conflicts: gnu/packages/icu4c.scm gnu/packages/man.scm gnu/packages/python-xyz.scm guix/scripts/environment.scm guix/scripts/pack.scm guix/scripts/package.scm guix/scripts/pull.scm guix/store.scm
2020-03-22Remove workaround for 'time-monotonic' in Guile 2.2.2.Ludovic Courtès
This is a followup to e688c2df3924423b67892cc9939ca099c729d1cb. * build-aux/hydra/evaluate.scm <top level>: Remove 'time-monotonic' definition. * guix/cache.scm: Likewise. * guix/progress.scm: Likewise. * guix/scripts/substitute.scm: Likewise. * guix/scripts/weather.scm: Likewise. * tests/cache.scm: Likewise.
2020-03-22hydra: evaluate: Use 'with-build-handler'.Ludovic Courtès
* build-aux/hydra/evaluate.scm (command-line): Remove 'set!' for 'build-things'. Use 'with-build-handler' instead. * build-aux/hydra/gnu-system.scm (hydra-jobs): Add comment about removing 'show-what-to-build' call.
2020-03-19Merge branch 'master' into core-updatesMarius Bakke
2020-03-19build-self: Import (ice-9 threads) in the compute-guix-derivation script.Marius Bakke
This is required for CALL-WITH-NEW-THREAD in Guile 3.0. * build-aux/build-self.scm (build-program): Import (ice-9 threads).
2020-03-16gnu: Default to Guile 3.0.Ludovic Courtès
This patch changes three things: 1. package derivations are built using Guile 3.0; 2. 'gexp->derivation' defaults to Guile 3.0; 3. "guile3.0-" packages are deprecated aliases for the regular package, which now depends on Guile 3.0; "guile2.2-" packages are introduced; "guile-next" is renamed to "guile". * gnu/packages/guile.scm (guile-2.0/fixed): Remove. (guile-3.0/fixed): New variable. (package-for-guile-3.0): Remove. (package-for-guile-2.2): New variable. (define-deprecated-guile3.0-package): New macro. (guile-3.0)[name]: Change to "guile". (guile-json-3)[native-inputs, inputs]: New fields. (guile2.2-json): New variable. (guile3.0-json): Deprecate. (guile-gdbm-ffi)[native-inputs]: Switch to GUILE-3.0. (guile2.2-gdbm-ffi): New variable. (guile3.0-gdbm-ffi): Deprecate. (guile-sqlite3): Switch to GUILE-3.0. (guile2.2-sqlite3): New variable. (guile3.0-sqlite3): Deprecate. (guile-bytestructures): Switch to GUILE-3.0. (guile2.2-bytestructures): New variable. (guile3.0-bytestructures): Deprecate. (guile-git): Switch to GUILE-3.0. (guile2.2-git): New variable. (guile3.0-git): Deprecate. (guile-2.2/bug-fix): * gnu/packages/ci.scm (cuirass): Switch to GUILE-3.0. * gnu/packages/emacs-xyz.scm (emacs-guix): Switch to GUILE-3.0. * gnu/packages/gtk.scm (guile-cairo)[arguments]: New field. Switch to GUILE-3.0. (guile2.2-cairo): New variable. (guile3.0-cairo): Deprecate. (guile-rsvg): Switch to GUILE-3.0. (guile2.2-cairo): New variable. (guile3.0-cairo): Deprecate. (guile-present): Switch to GUILE-3.0. (guile2.2-present): New variable. (guile3.0-present): Deprecate. (guile-gnome)[propagated-inputs]: Use GUILE2.2-CAIRO and GUILE2.2-LIB. * gnu/packages/guile-xyz.scm (guile-fibers)[arguments]: Add #:configure-flags. Switch to GUILE-3.0. (guile2.2-fibers): New variable. (guile3.0-fibers): Deprecate. (guile-syntax-highlight): Switch to GUILE-3.0. (guile2.2-syntax-highlight): New variable. (guile3.0-syntax-highlight): Deprecate. (guile-colorized): Switch to GUILE-3.0. (guile2.2-colorized): New variable. (guile3.0-colorized): Deprecate. (guile-pfds): Switch to GUILE-3.0. (guile2.2-pfds): New variable. (guile3.0-pfds): Deprecate. (guile-simple-zmq): Switch to GUILE-3.0. (guile2.2-simple-zmq): New variable. (guile3.0-simple-zmq): Deprecate. (guile-newt): Switch to GUILE-3.0. (guile2.2-newt): New variable. (guile3.0-newt): Deprecate. (guile-parted): Switch to GUILE-3.0. (guile2.2-parted): New variable. (guile3.0-parted): Deprecate. (guile-config): Switch to GUILE-3.0. (guile2.2-config): New variable. (guile3.0-config): Deprecate. (guile-hall): Switch to GUILE-3.0. (guile2.2-hall): New variable. (guile3.0-hall): Deprecate. (guile-ics): Switch to GUILE-3.0. (guile2.2-ics): New variable. (guile3.0-ics): Deprecate. (guile-wisp)[arguments]: Add 'support-guile-3.0' phase. Switch to GUILE-3.0. (guile2.2-wisp): New variable. (guile3.0-wisp): Deprecate. (guile-lib): Switch to GUILE-3.0. (guile2.2-lib): New variable. (guile3.0-lib): Deprecate. (guile-minikanren): Switch to GUILE-3.0. (guile2.2-minikanren): New variable. (guile3.0-minikanren): Deprecate. (guile-irregex): Switch to GUILE-3.0. (guile2.2-irregex): New variable. (guile3.0-irregex): Deprecate. (haunt): Switch to GUILE-3.0, and remove GUILE-READER. (guile2.2-haunt): New variable. (guile3.0-haunt): Deprecate. (guile-commonmark): Switch to GUILE-3.0. (guile2.2-commonmark): New variable. (guile3.0-commonmark): Deprecate. (mcron): Switch to GUILE-3.0. (guile2.0-mcron): New variable. (guile3.0-mcron): Deprecate. (guile-picture-language): Switch to GUILE-3.0. (guile2.2-picture-language): New variable. (guile3.0-picture-language): Deprecate. (guile-gi): Switch to GUILE-3.0. (guile2.2-gi): New variable. (guile3.0-gi): Deprecate. (guile-hashing): Switch to GUILE-3.0. (guile2.2-hashing): New variable. (guile3.0-hashing): Deprecate. * gnu/packages/package-management.scm (guix): Switch to GUILE-3.0. (guile2.2-guix): New variable. (guile3.0-guix): Deprecate. (gwl): Replace "guile3.0-" with "guile-". (guix-jupyter)[source]: Adjust for Guile 3.0. Switch to GUILE-3.0. * gnu/packages/ssh.scm (guile-ssh): Switch to GUILE-3.0. (guile2.2-ssh): New variable. (guile3.0-ssh): Deprecate. * gnu/packages/admin.scm (shepherd): Switch to GUILE-3.0. (guile2.2-shepherd): New variable. (guile3.0-shepherd): Deprecate. * gnu/packages/mail.scm (mailutils): Switch to GUILE-3.0. (guile2.2-mailutils): New variable. (guile3.0-mailutils): Deprecate. * gnu/packages/plotutils.scm (guile-charting): Switch to GUILE-3.0. (guile2.2-charting): New variable. (guile3.0-charting): Deprecate. * gnu/packages/version-control.scm (libgit2): Switch to GUILE-3.0. * gnu/packages/vpn.scm (vpnc-scripts): Switch to GUILE-3.0. * gnu/packages/web.scm (guix-data-service): Switch to GUILE-3.0. (hpcguix-web): Switch to GUILE-3.0. * guix/self.scm (specification->package): Refer to the "guile-" variants instead of "guile3.0-". * guix/gexp.scm (default-guile): Change to GUILE-3.0. * build-aux/build-self.scm (build): #:guile-version defaults to "3.0". * gnu/packages/commencement.scm (guile-final): Base on GUILE-3.0/FIXED.
2020-03-13maint: Add 'etc/release-manifest.scm'.Ludovic Courtès
* etc/release-manifest.scm: New file. * gnu/ci.scm (%cross-targets): Export. * build-aux/check-available-binaries.scm: Remove. * Makefile.am (EXTRA_DIST): Add 'etc/release-manifest.scm' and remove 'build-aux/check-available-binaries.scm'. (assert-binaries-available): Rewrite using 'guix weather -m'.
2020-03-09git-authenticate: Add roelj's new key.Ludovic Courtès
This is a followup to cc51c03ff867d4633505354819c6d88af88bf919. * build-aux/git-authenticate.scm (%committers): Add roelj's new key.
2020-03-05hydra: Remove uses of _IOLBF.Ludovic Courtès
_IOLBF & co. were deprecated in Guile 2.2 and removed in 3.0. * build-aux/hydra/gnu-system.scm: Pass 'line instead of _IOLBF to 'setvbuf'. * build-aux/hydra/guix-modular.scm: Likewise.
2020-03-05tests: Add a manifest for system tests.Ludovic Courtès
The manifest can be passed to 'guix build -m', 'guix weather -m', and so on. It can also be passed to an installed 'guix' (without ./pre-inst-env), with the exception so far of installation tests. * build-aux/run-system-tests.scm: Remove. Move interesting bits move to... * etc/system-tests.scm: ... here. New file. * Makefile.am (EXTRA_DIST): Remove 'build-aux/run-system-tests.scm' and add 'etc/system-tests.scm'. (check-system): Rewrite to run 'guix build -m etc/system-tests.scm'.
2020-03-05tests: "make check-system" includes the current commit ID, if any.Ludovic Courtès
* build-aux/run-system-tests.scm (source-commit): New procedure. (tests-for-current-guix): Add 'commit' parameter and pass it to 'channel-source->package'. (run-system-tests): Call 'source-commit' and pass the result to 'tests-for-current-guix'.
2020-03-05tests: "make check-system" no longer interns source upfront.Ludovic Courtès
* gnu/ci.scm (channel-build-system)[build, lower]: Honor #:source. (channel-source->package): New procedure. (system-test-jobs): Remove 'instance' and call to 'checkout->channel-instance'. Use 'channel-source->package'. * build-aux/run-system-tests.scm (tests-for-channel-instance): Rename to... (tests-for-current-guix): ... this. Change 'instance' to 'source'. (run-system-tests): Use 'local-file' instead of 'interned-file' for SOURCE.
2020-02-26git-authenticate: Remove duplicate entry.Ludovic Courtès
* build-aux/git-authenticate.scm (%committers): Remove duplicate of snape.
2020-02-26git-authenticate: Add sub-key for thomasd.Ludovic Courtès
This is a followup to commit 7dc0f1d5a8c248addfcaadf76e45bf601bc51411, signed with sub-key "3D2C DA58 819C 08C2 A649 D43D 5C3B 064C 724A 5726". * build-aux/git-authenticate.scm (%committers): Provide fingerprint of subkey for thomasd.
2020-02-22git-authenticate: Store the sub-key fingerprint of mab.Ludovic Courtès
This is a followup to 76a8dc3ee289ac4f4b984a3d9d2dcb9d89c01eda, signed with this sub-key. * build-aux/git-authenticate.scm (%committers): Store the sub-key fingerprint of mab.
2020-02-20build-self: Show wider backtraces.Ludovic Courtès
* build-aux/build-self.scm (build): Add 'setenv' call for "COLUMNS".
2020-02-13git-authenticate: Add niedzejkob to the list of committers.Ludovic Courtès
* build-aux/git-authenticate.scm (%committers): Add niedzejkob.
2020-02-11git-authenticate: Add mab to the list of committers.Ludovic Courtès
* build-aux/git-authenticate.scm (%committers): Add mab.
2020-01-27git-authenticate: Add roptat's new key.Ludovic Courtès
This is a followup to 2cbede5935eb6a40173bbdf30a9ad22bf7574c22. * build-aux/git-authenticate.scm (%committers): Add roptat's new key.
2020-01-17git-authenticate: Adjust atheia's key info.Ludovic Courtès
This is a followup to 05f8a143e437c0e55f118a0b2a191675a4b76ef1. * build-aux/git-authenticate.scm (%committers): Adjust atheia's key info.
2020-01-17git-authenticate: Add new key for atheia.Ludovic Courtès
* build-aux/git-authenticate.scm (%committers): Add atheia's 2nd key, as seen in commit df18ea6f275abaa160a8593accb29fd273d8fc13.
2020-01-08git-authenticate: Add daviwil to the list of committers.Ludovic Courtès
This is a followup to a587bb23b79eae5dd3fa3acb06d0b533c93fd562, first commit signed by daviwil. * build-aux/git-authenticate.scm (%committers): Add "daviwil".
2019-12-29git-authenticate: Add glv to the list of committers.Ludovic Courtès
This is a followup to 92fcf9856face3822ce827d7732c4b152f715f62, first commit signed by glv. * build-aux/git-authenticate.scm (%committers): Add glv.
2019-12-27git-authenticate: Keep a local cache of previously-authenticated commits.Ludovic Courtès
A list of already-authenticated commits is kept in ~/.cache/guix/authentication. This speeds up subsequent "make authenticate" invocations. * build-aux/git-authenticate.scm (authenticated-commit-cache-file) (previously-authenticated-commits, cache-authenticated-commit): New procedures. (git-authenticate): Define 'authenticated-commits' and pass it as a third argument to 'commit-difference'. Add call to 'cache-authenticated-commit'. Don't display signing stats when STATS is null.
2019-12-27Add 'build-aux/git-authenticate.scm'.Ludovic Courtès
* build-aux/git-authenticate.scm: New file. * Makefile.am (EXTRA_DIST): Add it. (commit_v1_0_1): New variable. (authenticate): New target.
2019-12-01ci: Make sure the Guix checkout is the one providing Cuirass proc.Clément Lassieur
Fixes <https://bugs.gnu.org/36378>. Reported by Reza Alizadeh Majd <r.majd@pantherx.org>. * build-aux/hydra/gnu-system.scm (find-current-checkout): New procedure. (hydra-jobs): Use FIND-CURRENT-CHECKOUT to define CHECKOUT. Pass it to the inferior Guix as an extra argument whose key is 'superior-guix-checkout'. * gnu/ci.scm (find-current-checkout): New procedure. (hydra-jobs): Use FIND-CURRENT-CHECKOUT to define CHECKOUT. This will return '#f' if the current Guix is an inferior. In that case, use the 'superior-guix-checkout' argument provided by the superior Guix.
2019-11-13tests: "make check-system" uses Guix built with (guix self).Ludovic Courtès
This is a followup to 7e6d8d366a61f951936ed83371877ce006f679f6. It means that "make check-system" can run tests from (gnu tests install) much faster because it does not need to build a full 'guix' package. * gnu/ci.scm (channel-instance->package): Export. * build-aux/run-system-tests.scm (tests-for-channel-instance): New procedure, with code formerly in 'run-system-tests'. (run-system-tests): Call 'interned-file' for SOURCE, and add call to 'tests-for-channel-instance'.
2019-10-16build: Remove references to 'NIX_LOCALSTATE_DIR'.Ludovic Courtès
* build-aux/test-env.in: Remove references to 'NIX_LOCALSTATE_DIR'.
2019-10-16daemon: Remove traces of 'NIX_ROOT_FINDER'.Ludovic Courtès
This is a followup to 2e3e5d21988fc2cafb2a9eaf4b00976ea425629d. * build-aux/test-env.in: Remove mentions of 'NIX_ROOT_FINDER'. * nix/libstore/gc.cc (LocalStore::collectGarbage): Adjust comment accordingly.
2019-09-08daemon: Remove 'NIX_LIBEXEC_DIR'.Ludovic Courtès
* nix/libstore/globals.hh (Settings)[nixLibexecDir]: Remove. * nix/libstore/globals.cc (Settings::processEnvironment): Remove reference to 'nixLibexecDir'. * nix/local.mk (libstore_a_CPPFLAGS): Remove -DNIX_LIBEXEC_DIR flag. * build-aux/pre-inst-env.in: Remove references to 'NIX_LIBEXEC_DIR'.
2019-09-08daemon: Run 'guix offload' directly.Ludovic Courtès
* nix/scripts/offload.in: Remove. * nix/local.mk (nodist_pkglibexec_SCRIPTS) [BUILD_DAEMON_OFFLOAD]: Remove 'scripts/offload'. * config-daemon.ac: Don't output 'nix/scripts/offload'. * build-aux/pre-inst-env.in: Don't set 'NIX_BUILD_HOOK'. * nix/libstore/build.cc (HookInstance::HookInstance): Run 'guix offload'. (DerivationGoal::tryBuildHook): Remove reference to 'NIX_BUILD_HOOK'. * nix/nix-daemon/guix-daemon.cc (main) [HAVE_DAEMON_OFFLOAD_HOOK]: Don't set 'NIX_BUILD_HOOK'. * nix/nix-daemon/nix-daemon.cc (performOp) [!HAVE_DAEMON_OFFLOAD_HOOK]: Leave 'settings.useBuildHook' unchanged.
2019-09-08daemon: Invoke 'guix gc --list-busy' instead of 'list-runtime-roots'.Ludovic Courtès
* nix/scripts/list-runtime-roots.in: Remove. * guix/store/roots.scm (%proc-directory): New variable. (proc-file-roots, proc-exe-roots, proc-cwd-roots) (proc-fd-roots, proc-maps-roots, proc-environ-roots) (referenced-files, canonicalize-store-item, busy-store-items): New procedures, taken from 'list-runtime-roots.in'. * nix/libstore/globals.hh (Settings)[guixProgram]: New field. * nix/libstore/globals.cc (Settings::processEnvironment): Initialize 'guixProgram'. * nix/libstore/gc.cc (addAdditionalRoots): Drop code related to 'NIX_ROOT_FINDER'. Run "guix gc --list-busy". * nix/local.mk (nodist_pkglibexec_SCRIPTS): Remove 'scripts/list-runtime-roots'. * config-daemon.ac: Don't output nix/scripts/list-runtime-roots. * build-aux/pre-inst-env.in: Don't set 'NIX_ROOT_FINDER'. Set 'GUIX'. * doc/guix.texi (Invoking guix gc): Document '--list-busy'. * guix/scripts/gc.scm (show-help, %options): Add "--list-busy". (guix-gc)[list-busy]: New procedure. Handle the 'list-busy' action.
2019-07-16Use more guix.gnu.org.Tobias Geerinckx-Rice
* build-aux/build-self.scm (make-config.scm): Replace gnu.org/s/guix with guix.gnu.org. * guix/scripts/publish.scm (render-home-page): Likewise. * guix/self.scm (make-config.scm): Likewise.
2019-06-25build: Report build errors via 'report-load-error'.Ludovic Courtès
* build-aux/compile-all.scm: Wrap 'compile-files' call in 'catch'. Attempt to resort to 'report-load-error' in (guix ui) to print the error.
2019-05-20maint: update-NEWS: Track "gcc-toolchain", not "gcc".Ludovic Courtès
This is a followup to d78010b81ee6ef4fd8803082e2f401b9e55b44db. * build-aux/update-NEWS.scm (write-packages-updates)[important]: Replace "gcc" by "gcc-toolchain".
2019-05-16maint: 'check-available-binaries' checks for more packages.Ludovic Courtès
Fixes <https://bugs.gnu.org/35539>. Reported by Florian Pelz <pelzflorian@pelzflorian.de>. * build-aux/check-available-binaries.scm (packages-for-system): New procedure. <top level>: Use it.