~ruther/guix-local

ref: 609d126e86ea7a05ab7e758fa3fd000ced005f49 guix-local/guix d---------
609d126e — Ludovic Courtès 8 years ago
Revert "packages: 'package-grafts' trims native inputs."

This reverts commit 91c9b5d016ac8bed127557d378c70fbc56cec0e5
following the concerns raised by Mark, Ben, and Tobias:
<https://lists.gnu.org/archive/html/guix-devel/2017-12/msg00081.html>.
45c32bd7 — Ludovic Courtès 8 years ago
syscalls: Define 'input-flags' for 'tcgetattr' and friends.

* guix/build/syscalls.scm (input-flags): New macro.
91c9b5d0 — Ludovic Courtès 8 years ago
packages: 'package-grafts' trims native inputs.

'package-grafts' returns a list of potentially applicable grafts, which
'cumulative-grafts' then narrows by looking at store item references and
determining the subset of the grafts that's actually applicable.

Until now, 'package-grafts' would traverse native inputs and would thus
return a large superset of the applicable grafts, since native inputs
are not in the reference graph by definition.  This patch fixes that by
having 'package-grafts' ignore entirely native inputs from the
dependency graph.

* guix/packages.scm (fold-bag-dependencies)[bag-direct-inputs*]: Add
special case for libc.
* guix/packages.scm (bag-grafts)[native-grafts, target-grafts]: Remove.
[grafts]: New procedure.
Use it.
* tests/packages.scm ("package-grafts, grafts of native inputs
ignored"): New test.
ff0e0041 — Ludovic Courtès 8 years ago
packages: 'fold-bag-dependencies' honors nativeness in recursive calls.

Previously recursive calls to 'loop' would always consider all the bag
inputs rather than those corresponding to NATIVE?.

* guix/packages.scm (fold-bag-dependencies)[bag-direct-inputs*]: New
procedure.  Use it both in the 'match' expression and in its body.
3fb6464b — Ludovic Courtès 8 years ago
ui: Tweak conflicting profile entry error message.

* guix/ui.scm (call-with-error-handling): Use 'manifest-entry-output*'
when reporting conflicting profile entries.
cbb76780 — Ludovic Courtès 8 years ago
profiles: Really disable deprecation warnings for 'profile-derivation'.

This is a followup to 2815fca1423cf72e6f3d0e774f1058bcbf8dfdbf.

* guix/profiles.scm (profile-derivation)[builder]: Remove
'debug-disable' call, which was ineffective.
Pass #:env-vars to 'gexp->derivation'.
d9721c20 — Ludovic Courtès 8 years ago
scripts: Default to Guile 2.2 as the guile-for-build.

* guix/scripts/environment.scm (guix-environment): '%guile-for-build'
now defaults to GUILE-2.2 instead of GUILE-2.0.
* guix/scripts/package.scm (guix-package): Likewise.
* guix/scripts/pull.scm (guix-pull): Likewise.
2815fca1 — Ludovic Courtès 8 years ago
profile: Use _IO* but disable deprecation warning.

This fixes a regression introduced in
2f60084f77815f454d1521396c2a383390ea2865, whereby the profile derivation
would fail to run on Guile 2.0 (as is the case with "guix package
--bootstrap").

Reported by Christopher Baines.

* guix/profiles.scm (profile-derivation)[builder]: Use _IO* but add
'debug-disable' call.
2f60084f — Ludovic Courtès 8 years ago
profiles: Avoid _IO* in profile builder.

* guix/profiles.scm (profile-derivation)[builder]: Avoid the deprecated
_IO* constants.
cdc938da — Ludovic Courtès 8 years ago
profiles: Do not import the host's srfi-{19,26}.scm files.

Previously the "manual-database" derivation would always import the
host's srfi-{19,26}.scm files in the build side.  In practice this means
that different users could get different manual-database.drv depending
on the Guile version they're using in the host.

For example, the (gnu tests install) tests would fail if the host was
running Guile 2.2.3 because the guest is running 2.2.2, and thus has
different srfi-{19,26}.scm files.  The manual-database.drv would need to
be built from source, which would fail because prerequisites were
missing.

Reported by Mathieu Othacehe <m.othacehe@gmail.com>
at <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=29409#96>.

* guix/profiles.scm (manual-database): Do not pass #:modules to
'gexp->derivation'.  Wrap 'build' gexp in 'with-imported-modules' form.
e2721a05 — Ludovic Courtès 8 years ago
Do not set '%fresh-auto-compile'.

* guix/scripts/offload.scm (build-machines): Comment out
'(set! %fresh-auto-compile #t)' since with Guile 2.2.3 it could lead to
an actual rebuild of everything that gets loaded from there on.  See
<https://bugs.gnu.org/29226>.
* guix/ui.scm (load*): Likewise.
cea25b08 — Ludovic Courtès 8 years ago
records: Use 'make-struct/no-tail'.

* guix/records.scm (make-syntactic-constructor): Use
'make-struct/no-tail' as 'make-struct' is deprecated as of 2.2.3.
e261e276 — Ludovic Courtès 8 years ago
guix system: 'init' displays a progress bar while copying.

Until now it would print the name of each store item being copied, which
was verbose and unhelpful.

* guix/scripts/system.scm (copy-closure): Use 'progress-reporter/bar'
and 'call-with-progress-reporter'.
(guix-system): Parameterize 'current-terminal-columns'.
e4ecd51e — Ludovic Courtès 8 years ago
guix system: Simplify closure copy.

* guix/scripts/system.scm (copy-item): Add 'references' argument and
remove 'references*' call.  Turn into a non-monadic procedure.
(copy-closure): Remove initial call to 'references*'.  Only pass ITEM to
'topologically-sorted*' since that's equivalent.  Compute the list of
references corresponding to TO-COPY and pass it to 'copy-item'.
1fafa2f5 — Ludovic Courtès 8 years ago
weather: Use (guix progress) for progress report.

* guix/progress.scm (start-progress-reporter!, stop-progress-reporter!)
(progress-reporter-report!): New procedures.
* guix/scripts/weather.scm (call-with-progress-reporter): New procedure.
(package-outputs)[update-progress!]: Remove.
Use 'call-with-progress-reporter' instead.
(guix-weather): Parameterize 'current-terminal-columns'.
4cdb27af — Ludovic Courtès 8 years ago
progress: Add 'progress-reporter/bar'.

* guix/progress.scm (progress-reporter/bar): New procedure.
5ed534cc — Ludovic Courtès 8 years ago
progress: 'progress-bar' accounts for brackets.

* guix/progress.scm (progress-bar): Subtract 2 to BAR-WIDTH to account
for brackets.
1252dd32 — Ludovic Courtès 8 years ago
progress: Factorize erase-in-line.

* guix/progress.scm (erase-in-line): New procedure.
(progress-reporter/file): Use it.
e45b573c — Mathieu Othacehe 8 years ago
utils: Add target-arm32? procedure.

* guix/utils.scm (target-arm32?): New exported procedure.
e42f026e — Ludovic Courtès 8 years ago
ui: Present 'use-modules' hints with a question mark.

Suggested by myglc2 <myglc2@gmail.com>.

* guix/ui.scm (report-load-error): Write "Did you forget" rather than
"Try adding."
Next