aboutsummaryrefslogtreecommitdiff
path: root/build-aux
Commit message (Collapse)AuthorAge
...
* git-authenticate: Add new key for atheia.Ludovic Courtès2020-01-17
| | | | | * build-aux/git-authenticate.scm (%committers): Add atheia's 2nd key, as seen in commit df18ea6f275abaa160a8593accb29fd273d8fc13.
* git-authenticate: Add daviwil to the list of committers.Ludovic Courtès2020-01-08
| | | | | | | This is a followup to a587bb23b79eae5dd3fa3acb06d0b533c93fd562, first commit signed by daviwil. * build-aux/git-authenticate.scm (%committers): Add "daviwil".
* git-authenticate: Add glv to the list of committers.Ludovic Courtès2019-12-29
| | | | | | | This is a followup to 92fcf9856face3822ce827d7732c4b152f715f62, first commit signed by glv. * build-aux/git-authenticate.scm (%committers): Add glv.
* git-authenticate: Keep a local cache of previously-authenticated commits.Ludovic Courtès2019-12-27
| | | | | | | | | | | | | | 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.
* Add 'build-aux/git-authenticate.scm'.Ludovic Courtès2019-12-27
| | | | | | | * build-aux/git-authenticate.scm: New file. * Makefile.am (EXTRA_DIST): Add it. (commit_v1_0_1): New variable. (authenticate): New target.
* ci: Make sure the Guix checkout is the one providing Cuirass proc.Clément Lassieur2019-12-01
| | | | | | | | | | | | | 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.
* tests: "make check-system" uses Guix built with (guix self).Ludovic Courtès2019-11-13
| | | | | | | | | | | | 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'.
* build: Remove references to 'NIX_LOCALSTATE_DIR'.Ludovic Courtès2019-10-16
| | | | * build-aux/test-env.in: Remove references to 'NIX_LOCALSTATE_DIR'.
* daemon: Remove traces of 'NIX_ROOT_FINDER'.Ludovic Courtès2019-10-16
| | | | | | | | 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.
* daemon: Remove 'NIX_LIBEXEC_DIR'.Ludovic Courtès2019-09-08
| | | | | | | | * 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'.
* daemon: Run 'guix offload' directly.Ludovic Courtès2019-09-08
| | | | | | | | | | | | | | | * 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.
* daemon: Invoke 'guix gc --list-busy' instead of 'list-runtime-roots'.Ludovic Courtès2019-09-08
| | | | | | | | | | | | | | | | | | | | | | | * 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.
* Use more guix.gnu.org.Tobias Geerinckx-Rice2019-07-16
| | | | | | * 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.
* build: Report build errors via 'report-load-error'.Ludovic Courtès2019-06-25
| | | | | | * 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.
* maint: update-NEWS: Track "gcc-toolchain", not "gcc".Ludovic Courtès2019-05-20
| | | | | | | This is a followup to d78010b81ee6ef4fd8803082e2f401b9e55b44db. * build-aux/update-NEWS.scm (write-packages-updates)[important]: Replace "gcc" by "gcc-toolchain".
* maint: 'check-available-binaries' checks for more packages.Ludovic Courtès2019-05-16
| | | | | | | | 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.
* build-self: Let HOME pass through the execution environment.Ludovic Courtès2019-05-12
| | | | | | | | | | | This is a followup to 48d498c2c3984784336b27ba5e261319f3ac6a3a, which introduced a typo (missing '->' in 'mlet'.) Fixes <https://bugs.gnu.org/35623>. Reported by Karrick McDermott <kmcdermott@linkedin.com>. * build-aux/build-self.scm (build): Add 'getenv' and 'setenv' calls for HOME.
* Revert "build-self: Let HOME pass through the execution environment."Tobias Geerinckx-Rice2019-05-11
| | | | | This reverts commit 48d498c2c3984784336b27ba5e261319f3ac6a3a. It breaks ‘guix pull’.
* build-self: Let HOME pass through the execution environment.Ludovic Courtès2019-05-11
| | | | | | | | Fixes <https://bugs.gnu.org/35623>. Reported by Karrick McDermott <kmcdermott@linkedin.com>. * build-aux/build-self.scm (build): Add 'getenv' and 'setenv' calls for HOME.
* build-self: Explain why we keep using deprecated bindings.Ludovic Courtès2019-04-23
| | | | | * build-aux/build-self.scm (build): Add comment regarding the deprecated names.
* Revert "build-self: Avoid deprecated bindings."Ludovic Courtès2019-04-23
| | | | | | | | | This reverts commit fa9e6e8b676ca920a894cf3b48bfcb670077144f. By using the new bindings, we would prevent users of Guix prior to de9fbe9cdcf5f8deb08becfc54b523084fd67bda, such as version 0.16.0, to upgrade to current master. Thus, we will keep using the old names for a while.
* build-self: Avoid deprecated bindings.Mark H Weaver2019-04-22
| | | | | * build-aux/build-self.scm (build): Replace references to nix-server-* with store-connection-*.
* build: Show completion percentage while building.Ludovic Courtès2019-04-19
| | | | | * build-aux/compile-all.scm (%): New procedure. (command-line): Use it to report completion.
* self: Remove unused variable.Ludovic Courtès2019-04-17
| | | | | | | | This variable is unused since commit 45779fa676419de8838cb26b6c7a24678a2be1cd. * guix/self.scm (%dependency-variables): Remove. * build-aux/build-self.scm (%dependency-variables): Remove.
* build-self: Disable position recording.Ludovic Courtès2019-03-26
| | | | | | 'guix pull -n' goes roughly from 40s to 35s. * build-aux/build-self.scm (build-program): Add call to 'read-disable'.
* Avoid name clash with 'build' from (guix store) and (guix status).Ludovic Courtès2019-02-11
| | | | | | | | | | | | | | | | Since commit 976ef2d97887d16eab8d4eb9dad811786b04d690, (guix status) exports 'build', which clashes with 'build' from (guix store). * build-aux/run-system-tests.scm: Select 'with-status-verbosity' from (guix status). * guix/scripts/archive.scm: Likewise. * guix/scripts/build.scm: Likewise. * guix/scripts/copy.scm: Likewise. * guix/scripts/environment.scm: Likewise. * guix/scripts/pack.scm: Likewise. * guix/scripts/package.scm: Likewise. * guix/scripts/pull.scm: Likewise. * guix/scripts/system.scm: Likewise.
* daemon: Add "/guix" to default 'nixLibexecDir'.Ludovic Courtès2019-02-04
| | | | | | | | | | | | | This makes it easier to run the uninstalled daemon. * nix/local.mk (libstore_a_CPPFLAGS): Append "/guix" to NIX_LIBEXEC_DIR. * build-aux/pre-inst-env.in (NIX_LIBEXEC_DIR): Adjust comment. * nix/libstore/builtins.cc (builtinDownload): Remove SUBDIR and its use. * nix/libstore/local-store.cc (runAuthenticationProgram): Ditto. * nix/libstore/gc.cc (addAdditionalRoots): Remove "/guix" prefix. * nix/nix-daemon/guix-daemon.cc (main): Ditto.
* daemon: Remove the 'NIX_SUBSTITUTERS' environment variable.Ludovic Courtès2019-02-04
| | | | | | | | * nix/libstore/globals.cc (Settings:update): Remove changes to 'substituters'. * nix/nix-daemon/guix-daemon.cc (main): Set 'settings.substituters' directly instead of changing the 'NIX_SUBSTITUTERS' environment variable. * build-aux/pre-inst-env.in: Remove reference to 'NIX_SUBSTITUTERS'.
* daemon: Rename 'NIX_STATE_DIR' and 'NIX_DB_DIR' environment variables.Ludovic Courtès2019-02-04
| | | | | | | | | | | | | | | | | Fixes <https://bugs.gnu.org/22459>. Reported by Jeff Mickey <j@codemac.net>. * guix/config.scm.in (%state-directory): Change NIX_STATE_DIR to GUIX_STATE_DIRECTORY. (%store-database-directory): Change NIX_DB_DIR to GUIX_DATABASE_DIRECTORY. * nix/libstore/globals.cc (Settings::processEnvironment): Likewise. * guix/self.scm (make-config.scm): Likewise. * build-aux/build-self.scm (make-config.scm): Likewise. * build-aux/test-env.in: Likewise. * tests/derivations.scm ("derivation #:leaked-env-vars"): Likewise. * tests/guix-build.sh (GUIX_DAEMON_SOCKET): Likewise. * tests/guix-daemon.sh (socket): Likewise.
* store: Rename '&nix-error' to '&store-error'.Ludovic Courtès2019-01-21
| | | | | | | | | | | | | | | | | | | * guix/store.scm (&nix-error): Rename to... (&store-error): ... this, and adjust users. (&nix-connection-error): Rename to... (&store-connection-error): ... this, and adjust users. (&nix-protocol-error): Rename to... (&store-protocol-error): ... this, adjust users. (&nix-error, &nix-connection-error, &nix-protocol-error): Define these condition types and their getters as deprecrated aliases. * build-aux/run-system-tests.scm, guix/derivations.scm, guix/grafts.scm, guix/scripts/challenge.scm, guix/scripts/graph.scm, guix/scripts/lint.scm, guix/scripts/offload.scm, guix/serialization.scm, guix/ssh.scm, guix/tests.scm, guix/ui.scm, tests/derivations.scm, tests/gexp.scm, tests/guix-daemon.sh, tests/packages.scm, tests/store.scm, doc/guix.texi: Adjust to use the new names.
* build-self: Execute trampoline in a clean environment.Ludovic Courtès2019-01-21
| | | | | | | | | | | Previously execution of the trampoline would be somewhat sensitive to GUILE_LOAD_PATH & co., for example. * build-aux/build-self.scm (build-program): Remove 'unsetenv' call and %LOAD-COMPILED-PATH hack. (call-with-clean-environment): New procedure. (with-clean-environment): New macro. (build): Wrap 'open-pipe*' call in 'with-clean-environment'.
* status: Add 'with-status-verbosity'.Ludovic Courtès2019-01-11
| | | | | | | | | | | | | * guix/status.scm (logger-for-level, call-with-status-verbosity): New procedures. (with-status-verbosity): New macro. * guix/scripts/environment.scm (guix-environment): Use 'with-status-verbosity' instead of 'with-status-report'. * guix/scripts/pack.scm (guix-pack): Likewise. * guix/scripts/package.scm (guix-package): Likewise. * guix/scripts/pull.scm (guix-pull): Likewise. * guix/scripts/system.scm (guix-system): Likewise. * build-aux/run-system-tests.scm (run-system-tests): Likewise.
* build-self: Spin only on TTYs.Ludovic Courtès2019-01-08
| | | | | * build-aux/build-self.scm (build-program): Spin only when 'isatty?' returns true.
* hydra: Compute jobs in an inferior.Ludovic Courtès2019-01-06
| | | | | | | | | | | | | | Previously we would rely on auto-compilation of all the Guix modules. The complete evaluation would take ~15mn on berlin.guixsd.org and require lots of RAM. This approach should be faster since potentially only part of the modules are rebuilt. Furthermore, as a side-effect, it builds the derivations that 'guix pull' uses. * build-aux/hydra/gnu-system.scm: Remove 'eval-when' form. (hydra-jobs): New procedure. * gnu/ci.scm (package->alist, qemu-jobs, system-test-jobs) (tarball-jobs): Return strings for the 'license' field. * guix/self.scm (compiled-guix)[*cli-modules*]: Add (gnu ci).
* hydra: evaluate: Add the checkout to the store.Ludovic Courtès2019-01-06
| | | | | | * build-aux/hydra/evaluate.scm <top level>: Add call to 'add-to-store'. Use that as the 'file-name' attribute. Call 'primitive-load' in a directory excursion to SOURCE.
* hydra: Move job definitions to (gnu ci).Ludovic Courtès2019-01-06
| | | | | | * build-aux/hydra/gnu-system.scm: Move code to... * gnu/ci.scm: ... here. New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* build-self: Don't clobber the output port.Ludovic Courtès2019-01-06
| | | | | | | The newline is meant to follow the spinner's traces so it must go to the error port as well. * build-aux/build-self.scm (build): Send newline to the error port.
* hydra: Use short timeouts for the QEMU jobs and system tests.Ludovic Courtès2018-12-29
| | | | | | | | | | These builds shouldn't take too long. Sometimes the guest kernel crashes and the VM gets stuck; we should be able to terminate those jobs quickly. * build-aux/hydra/gnu-system.scm (qemu-jobs)[->alist]: Add 'max-silent-time' and 'timeout'. (system-test-jobs)[test->thunk]: Likewise.
* hydra: Increase image sizes for USB image and Flash image.Danny Milosavljevic2018-12-09
| | | | | | * build-aux/hydra/gnu-system.scm (qemu-jobs) <usb-image>: Increase from 1024 MiB to 1500 MiB. <flash-image>: Increase from 1024 MiB to 1500 MiB.
* maint: update-guix-package: Really register GC roots.Ludovic Courtès2018-12-07
| | | | | | | | | Previously we'd pass a relative file name to 'add-indirect-root', which the daemon would interpret as relative to "/". Consequently, checkouts were not protected from GC. * build-aux/update-guix-package.scm (main): Pass an absolute file name to 'add-indirect-root'.
* maint: update-NEWS: Don't produce full package lists.Ludovic Courtès2018-12-05
| | | | | | | | | | | The lists of new and upgraded packages in 'NEWS' had become way too long and redundant with what 'guix pull' reports. * build-aux/update-NEWS.scm (write-packages-added): Don't print ADDED. (write-packages-updates)[important, table, latest, noteworthy]: New variables. Print NOTEWORTHY rather than all of UPGRADED. (main): Print PREVIOUS-VERSION and NEW-VERSION.
* Remove most references to hydra.gnu.org.Ludovic Courtès2018-12-04
| | | | | | | | | | | | | | | * Makefile.am (assert-binaries-available): Don't mention hydra.gnu.org in comment. * build-aux/check-available-binaries.scm: Likewise. * build-aux/check-final-inputs-self-contained.scm: Likewise. * doc/guix.texi (SUBSTITUTE-SERVER): New variable. Use it throughout instead of "mirror.hydra.gnu.org". * doc/contributing.texi (Submitting Patches): Likewise. * gnu/services/base.scm (hydra-key-authorization) (guix-activation): Remove mentions of "hydra.gnu.org" in comments and messages. * gnu/system/install.scm (%installation-services): Likewise. * guix/scripts/size.scm (guix-size): Likewise.
* Merge branch 'master' into core-updatesMarius Bakke2018-10-17
|\
| * tests: "make check-system" produces colored output.Ludovic Courtès2018-10-09
| | | | | | | | * build-aux/run-system-tests.scm (run-system-tests): Use 'with-status-report'.
* | Merge branch 'master' into core-updatesMarius Bakke2018-09-20
|\|
| * hydra: Remove useless 'parameterize'.Clément Lassieur2018-09-14
| | | | | | | | * build-aux/hydra/gnu-system.scm (manifests->packages): Remove 'parameterize'.
* | Merge branch 'master' into core-updatesLeo Famulari2018-09-13
|\|
| * build-self: Emit a useful message upon error.Ludovic Courtès2018-09-13
| | | | | | | | | | * build-aux/build-self.scm (build): Raise a '&message' condition instead of calling 'error'.
| * build-self: Add a dummy (git) module to 'compute-guix-derivation'.Ludovic Courtès2018-09-13
| | | | | | | | | | | | | | | | Fixes a regression introduced in aed0a594058a59bc3bb1d2686391dc0e8a181b1f. * build-aux/build-self.scm (build-program)[fake-git]: New variable. Use it as an imported module.
| * hydra: Add support for manifests.Clément Lassieur2018-09-13
| | | | | | | | | | | | | | * build-aux/hydra/gnu-system.scm (arguments->manifests, manifests->packages): New procedures. (hydra-jobs): Add a "manifests" subset. * doc/guix.texi (Continuous Integration): Update accordingly.