Age | Commit message (Expand) | Author |
2019-09-08 | daemon: Invoke 'guix gc --list-busy' instead of 'list-runtime-roots'....* 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.
| Ludovic Courtès |
2019-07-16 | Use more guix.gnu.org....* 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.
| Tobias Geerinckx-Rice |
2019-06-25 | build: Report build errors via 'report-load-error'....* 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.
| Ludovic Courtès |
2019-05-20 | maint: update-NEWS: Track "gcc-toolchain", not "gcc"....This is a followup to d78010b81ee6ef4fd8803082e2f401b9e55b44db.
* build-aux/update-NEWS.scm (write-packages-updates)[important]: Replace
"gcc" by "gcc-toolchain".
| Ludovic Courtès |
2019-05-16 | maint: 'check-available-binaries' checks for more packages....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.
| Ludovic Courtès |
2019-05-12 | build-self: Let HOME pass through the execution environment....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.
| Ludovic Courtès |
2019-05-11 | Revert "build-self: Let HOME pass through the execution environment."...This reverts commit 48d498c2c3984784336b27ba5e261319f3ac6a3a.
It breaks ‘guix pull’.
| Tobias Geerinckx-Rice |
2019-05-11 | build-self: Let HOME pass through the execution environment....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.
| Ludovic Courtès |
2019-04-23 | build-self: Explain why we keep using deprecated bindings....* build-aux/build-self.scm (build): Add comment regarding the deprecated
names.
| Ludovic Courtès |
2019-04-23 | Revert "build-self: Avoid deprecated bindings."...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.
| Ludovic Courtès |
2019-04-22 | build-self: Avoid deprecated bindings....* build-aux/build-self.scm (build): Replace references to nix-server-*
with store-connection-*.
| Mark H Weaver |
2019-04-19 | build: Show completion percentage while building....* build-aux/compile-all.scm (%): New procedure.
(command-line): Use it to report completion.
| Ludovic Courtès |
2019-04-17 | self: Remove unused variable....This variable is unused since commit
45779fa676419de8838cb26b6c7a24678a2be1cd.
* guix/self.scm (%dependency-variables): Remove.
* build-aux/build-self.scm (%dependency-variables): Remove.
| Ludovic Courtès |
2019-03-26 | build-self: Disable position recording....'guix pull -n' goes roughly from 40s to 35s.
* build-aux/build-self.scm (build-program): Add call to 'read-disable'.
| Ludovic Courtès |
2019-02-11 | Avoid name clash with 'build' from (guix store) and (guix status)....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.
| Ludovic Courtès |
2019-02-04 | daemon: Add "/guix" to default 'nixLibexecDir'....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.
| Ludovic Courtès |
2019-02-04 | daemon: Remove the 'NIX_SUBSTITUTERS' environment variable....* 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'.
| Ludovic Courtès |
2019-02-04 | daemon: Rename 'NIX_STATE_DIR' and 'NIX_DB_DIR' environment variables....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.
| Ludovic Courtès |
2019-01-21 | store: Rename '&nix-error' to '&store-error'....* 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.
| Ludovic Courtès |
2019-01-21 | build-self: Execute trampoline in a clean environment....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'.
| Ludovic Courtès |
2019-01-11 | status: Add 'with-status-verbosity'....* 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.
| Ludovic Courtès |
2019-01-08 | build-self: Spin only on TTYs....* build-aux/build-self.scm (build-program): Spin only when 'isatty?'
returns true.
| Ludovic Courtès |
2019-01-06 | hydra: Compute jobs in an inferior....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).
| Ludovic Courtès |
2019-01-06 | hydra: evaluate: Add the checkout to the store....* 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.
| Ludovic Courtès |
2019-01-06 | hydra: Move job definitions to (gnu ci)....* build-aux/hydra/gnu-system.scm: Move code to...
* gnu/ci.scm: ... here. New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
| Ludovic Courtès |
2019-01-06 | build-self: Don't clobber the output port....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.
| Ludovic Courtès |
2018-12-29 | hydra: Use short timeouts for the QEMU jobs and system tests....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.
| Ludovic Courtès |
2018-12-09 | hydra: Increase image sizes for USB image and Flash image....* 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.
| Danny Milosavljevic |
2018-12-07 | maint: update-guix-package: Really register GC roots....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'.
| Ludovic Courtès |
2018-12-05 | maint: update-NEWS: Don't produce full package lists....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.
| Ludovic Courtès |
2018-12-04 | Remove most references to hydra.gnu.org....* 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.
| Ludovic Courtès |
2018-10-17 | Merge branch 'master' into core-updates | Marius Bakke |
2018-10-09 | tests: "make check-system" produces colored output....* build-aux/run-system-tests.scm (run-system-tests): Use 'with-status-report'.
| Ludovic Courtès |
2018-09-20 | Merge branch 'master' into core-updates | Marius Bakke |
2018-09-14 | hydra: Remove useless 'parameterize'....* build-aux/hydra/gnu-system.scm (manifests->packages): Remove 'parameterize'.
| Clément Lassieur |
2018-09-13 | Merge branch 'master' into core-updates | Leo Famulari |
2018-09-13 | build-self: Emit a useful message upon error....* build-aux/build-self.scm (build): Raise a '&message' condition instead
of calling 'error'.
| Ludovic Courtès |
2018-09-13 | build-self: Add a dummy (git) module to 'compute-guix-derivation'....Fixes a regression introduced in
aed0a594058a59bc3bb1d2686391dc0e8a181b1f.
* build-aux/build-self.scm (build-program)[fake-git]: New variable.
Use it as an imported module.
| Ludovic Courtès |
2018-09-13 | hydra: Add support for manifests....* 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.
| Clément Lassieur |
2018-09-09 | Merge branch 'master' into core-updates | Marius Bakke |
2018-09-06 | build-self: Accomodate upgrades from May 2016 and earlier....Reported by Paul Garlick <pgarlick@tourbillion-technology.com>.
Fixes a bug whereby "old" Guix instances (before mid-May 2018) would
fail to pull to current master.
Specifically, Paul reported being unable to upgrade from
6f84dc4314cd84550d9fc7e7afa11c495edc45a5 (a commit that predates that
addition of the 'bootstrap' phase on gnu-build-system on 'master' and
that also predates the new 'guix pull'.)
* build-aux/build-self.scm (guile-gcrypt)[arguments]: New field.
| Ludovic Courtès |
2018-09-04 | Switch to Guile-Gcrypt....This removes (guix hash) and (guix pk-crypto), which now live as part of
Guile-Gcrypt (version 0.1.0.)
* guix/gcrypt.scm, guix/hash.scm, guix/pk-crypto.scm,
tests/hash.scm, tests/pk-crypto.scm: Remove.
* configure.ac: Test for Guile-Gcrypt. Remove LIBGCRYPT and
LIBGCRYPT_LIBDIR assignments.
* m4/guix.m4 (GUIX_ASSERT_LIBGCRYPT_USABLE): Remove.
* README: Add Guile-Gcrypt to the dependencies; move libgcrypt as
"required unless --disable-daemon".
* doc/guix.texi (Requirements): Likewise.
* gnu/packages/bash.scm, guix/derivations.scm, guix/docker.scm,
guix/git.scm, guix/http-client.scm, guix/import/cpan.scm,
guix/import/cran.scm, guix/import/crate.scm, guix/import/elpa.scm,
guix/import/gnu.scm, guix/import/hackage.scm,
guix/import/texlive.scm, guix/import/utils.scm, guix/nar.scm,
guix/pki.scm, guix/scripts/archive.scm,
guix/scripts/authenticate.scm, guix/scripts/download.scm,
guix/scripts/hash.scm, guix/scripts/pack.scm,
guix/scripts/publish.scm, guix/scripts/refresh.scm,
guix/scripts/substitute.scm, guix/store.scm,
guix/store/deduplication.scm, guix/tests.scm, tests/base32.scm,
tests/builders.scm, tests/challenge.scm, tests/cpan.scm,
tests/crate.scm, tests/derivations.scm, tests/gem.scm,
tests/nar.scm, tests/opam.scm, tests/pki.scm,
tests/publish.scm, tests/pypi.scm, tests/store-deduplication.scm,
tests/store.scm, tests/substitute.scm: Adjust imports.
* gnu/system/vm.scm: Likewise.
(guile-sqlite3&co): Rename to...
(gcrypt-sqlite3&co): ... this. Add GUILE-GCRYPT.
(expression->derivation-in-linux-vm)[config]: Remove.
(iso9660-image)[config]: Remove.
(qemu-image)[config]: Remove.
(system-docker-image)[config]: Remove.
* guix/scripts/pack.scm: Adjust imports.
(guile-sqlite3&co): Rename to...
(gcrypt-sqlite3&co): ... this. Add GUILE-GCRYPT.
(self-contained-tarball)[build]: Call 'make-config.scm' without
#:libgcrypt argument.
(squashfs-image)[libgcrypt]: Remove.
[build]: Call 'make-config.scm' without #:libgcrypt.
(docker-image)[config, json]: Remove.
[build]: Add GUILE-GCRYPT to the extensions Remove (guix config) from
the imported modules.
* guix/self.scm (specification->package): Remove "libgcrypt", add
"guile-gcrypt".
(compiled-guix): Remove #:libgcrypt.
[guile-gcrypt]: New variable.
[dependencies]: Add it.
[*core-modules*]: Remove #:libgcrypt from 'make-config.scm' call.
Add #:extensions.
[*config*]: Remove #:libgcrypt from 'make-config.scm' call.
(%dependency-variables): Remove %libgcrypt.
(make-config.scm): Remove #:libgcrypt.
* build-aux/build-self.scm (guile-gcrypt): New variable.
(make-config.scm): Remove #:libgcrypt.
(build-program)[fake-gcrypt-hash]: New variable.
Add (gcrypt hash) to the imported modules. Adjust load path
assignments.
* gnu/packages/package-management.scm (guix)[propagated-inputs]: Add
GUILE-GCRYPT.
[arguments]: In 'wrap-program' phase, add GUILE-GCRYPT to the search
path.
| Ludovic Courtès |
2018-09-03 | Merge branch 'master' into core-updates | Marius Bakke |
2018-09-02 | Add (guix describe) and use it to initialize '%package-search-path'....* guix/describe.scm: New file.
* Makefile.am (MODULES): Add it.
* gnu/packages.scm (%default-package-module-path): New variable.
(%package-module-path): Honor 'package-path-entries'.
* build-aux/update-NEWS.scm (main): Use %DEFAULT-PACKAGE-MODULE-PATH
instead of (last (%package-module-path)).
| Ludovic Courtès |
2018-09-02 | compile-as-derivation: Adjust %load-compiled-path....* build-aux/compile-as-derivation.scm: Set not only %load-path but also
%load-compiled-path. This can avoid problems where a stale .go is
loaded.
| Ludovic Courtès |
2018-07-27 | build-self: Default to Guile 2.2 when building a standalone Guix....* build-aux/build-self.scm (build): Change #:guile-version to default to
"2.2" when PULL-VERSION is greater than 0.
| Ludovic Courtès |
2018-07-27 | gnu: guile: Remove version 2.2.2....* gnu/packages/guile.scm (guile-2.2.2): Remove.
* guix/self.scm (guile-for-build): Remove special case for "2.2.2".
(guix-derivation): Likewise.
* build-aux/build-self.scm (build): Likewise.
| Ludovic Courtès |
2018-06-26 | build-self: Inherit the daemon connection from the parent process....Fixes <https://bugs.gnu.org/31892>.
Reported by Vagrant Cascadian <vagrant@debian.org>.
* build-aux/build-self.scm (build): Define 'port' and wrap 'open-pipe*'
call in 'with-input-from-port'.
(build-program): Use 'port->connection' or 'open-connection' instead of
'with-store.'
| Ludovic Courtès |
2018-06-21 | build-self: Avoid recompilations of 'compute-guix-derivation'....* build-aux/build-self.scm (build-program)["compute-guix-derivation"]:
Honor the SOURCE command-line argument. Add a VERSION command-line
argument and honor it.
(build): Pass VERSION to BUILD.
| Ludovic Courtès |
2018-06-18 | self: Define derived '-directory' variables in config.scm....This is a followup to d6b5aa0b031f0e7091f7424ac616d1c4d10fed5b.
* guix/self.scm (%config-variables): Remove %CONFIG-DIRECTORY,
%STATE-DIRECTORY, %STORE-DATABASE-DIRECTORY, and %STORE-DIRECTORY.
(make-config.scm): Define them here.
* build-aux/build-self.scm (%config-variables, make-config.scm):
Likewise.
| Ludovic Courtès |