~ruther/guix-local

ref: 7763c538adc9739f0a95cff4cc1215e2b2bd2068 guix-local/guix/scripts d---------
bda44eed — Ludovic Courtès 12 years ago
pull: Compile files in the lexicographic order.

* guix/scripts/pull.scm (unpack): Print the name of the file being
  compiled.  Sort the names of files to compile.
00554b2a — Ludovic Courtès 12 years ago
substitute-binary: Show the Nar size, when available.

* guix/scripts/substitute-binary.scm (guix-substitute-binary)["--substitute"]:
  Show the Nar size, when available.
* guix/ui.scm (show-what-to-build): Add 'TODO'.
7db3ff4a — Ludovic Courtès 12 years ago
utils: Add `guile-version>?', and use it.

This fixes Guile version comparisons when (version) has a
vendor-specific suffix.

Reported by Andreas Enge <andreas@enge.fr>.

* guix/utils.scm (guile-version>?): New procedure.
* tests/utils.scm ("guile-version>? 1.8", "guile-version>? 10.5"): New
  tests.
* guix/scripts/substitute-binary.scm (fetch, progress-report-port): Use
  `guile-version>?' instead of `version>?'.
* guix/http-client.scm (when-guile<=2.0.5, http-fetch): Likewise.
b6952cad — Ludovic Courtès 12 years ago
substitute-binary: Try hard to avoid port buffering.

* guix/scripts/substitute-binary.scm (fetch): In the `file' case, open
  with the `b' flag, so that the coding cookie reading thing doesn't
  lead to buffering some of the data (on 2.0.5).
* tests/utils.scm ("filtered-port, file"): Open with `r0b'.  Fixes a
  test failure with Guile 2.0.5 whereby the first byte of FILE would be
  missing from DECOMPRESSED.
db90b40d — Ludovic Courtès 12 years ago
substitute-binary: Don't pretend to report download progress on Guile 2.0.5.

* guix/scripts/substitute-binary.scm (progress-report-port): On Guile
  2.0.5, return PORT directly and emit a warning.
079d1273 — Ludovic Courtès 12 years ago
guix package: Allow separate install of several outputs of the same package.

* guix/scripts/package.scm (guix-package)[process-actions](same-package?):
  New procedure.  Use it instead of `alist-delete' when filtering out
  duplicate packages from the profile.
3b8258c5 — Ludovic Courtès 12 years ago
Rename (guix web) to (guix http-client).

* guix/web.scm: Rename to...
* guix/http-client.scm: ... this.
* guix/gnu-maintenance.scm, guix/scripts/substitute-binary.scm,
  Makefile.am, po/POTFILES.in: Update accordingly.
2096b516 — Ludovic Courtès 12 years ago
guix package: Fix handling of `-e'.

This fixes a bug whereby a command like

  guix package -e '(@@ (gnu packages base) gnu-make-boot0)'

would only succeed when the outputs of that package are available, and
otherwise fail with "/nix/store/... is not valid".

* guix/scripts/package.scm (guix-package)[process-action](package->tuple):
  Leave P as is in the result.  Move `package->tuple' call from INSTALL*
  to INSTALL.
e3ccdf9e — Ludovic Courtès 12 years ago
guix package: Reuse FTP connections for subsequent `latest-release' calls.

* guix/gnu-maintenance.scm (latest-release): Add `ftp-close' and
  `ftp-open' keyword parameters.
* guix/scripts/package.scm (ftp-open*): New variable.
  (check-package-freshness): Call `latest-release' with `ftp-open*' and
  a no-op procedure.
ce689ccf — Ludovic Courtès 12 years ago
substitute-binary: Directly replace the global `regexp-exec'.

* guix/scripts/substitute-binary.scm (%regexp-exec-mutex, string->uri):
  Remove.
  (regexp-exec): Replace this global binding by a thread-safety wrapper.
  (fields->alist): Remove `with-mutex', and directly alias `recutils->alist'.
8b79e2e6 — Ludovic Courtès 12 years ago
substitute-binary: Increase the default timeout.

* guix/scripts/substitute-binary.scm (%fetch-timeout): Set to 5 seconds.
560d4787 — Ludovic Courtès 12 years ago
guix refresh: Keep only the newest versions of packages as upgrade candidates.

* guix/scripts/refresh.scm (guix-refresh)[keep-newest]: New procedure.
  Use it to keep only once copy of each package.
fdc1bf65 — Ludovic Courtès 12 years ago
records: Add `recutils->alist' for public consumption.

* guix/records.scm (%recutils-field-rx): New variable.
  (recutils->alist): New procedure, formerly known as `fields->alist'.
* guix/scripts/substitute-binary.scm (fields->alist): Use it.
* tests/records.scm ("recutils->alist"): New test.
b0fad8a2 — Ludovic Courtès 12 years ago
Use `port-sha256' and `open-sha256-port'.

* guix/derivations.scm (derivation-hash): Add comment as to why we keep
  the plain `sha256' call.
* guix/scripts/download.scm (guix-download): Use `port-sha256' instead
  of (compose sha256 get-bytevector-all).
* guix/scripts/refresh.scm (update-package): Likewise.
72626a71 — Ludovic Courtès 12 years ago
Move `sha256' to (guix hash).

* guix/utils.scm (sha256): Move to...
* guix/hash.scm: ... here.  New file.
* Makefile.am (MODULES): Add it.
* guix/derivations.scm, guix/scripts/download.scm,
  guix/scripts/hash.scm, guix/scripts/refresh.scm, tests/base32.scm,
  tests/derivations.scm, tests/store.scm: Use (guix hash).
bb7dcaea — Ludovic Courtès 12 years ago
substitute-binary: Avoid dangling connections to the server.

* guix/web.scm (open-socket-for-uri): New procedure.
  (http-fetch): Add `port' keyword parameter; use it.
* guix/scripts/substitute-binary.scm (%random-state): New variable.
  (with-timeout): Wait a little before retrying.
  (fetch): Use `open-socket-for-uri', and keep a copy of the socket in
  variable `port'.  Close PORT upon timeout.
d501fad1 — Ludovic Courtès 12 years ago
Merge branch 'master' into core-updates

Conflicts:
	gnu/packages/make-bootstrap.scm
fe1818e2 — Ludovic Courtès 12 years ago
package: Fix i18n of the number of packages message.

* guix/scripts/package.scm (guix-package)[process-actions]: Use `N_' for
  i18n of the number of packages message.
a85060ef — Ludovic Courtès 12 years ago
substitute-binary: Report progress while downloading.

* guix/scripts/substitute-binary.scm (decompressed-port): Improve docstring.
  (progress-report-port): New procedure.
  (guix-substitute-binary)["--substitute"]: Use it to report progress.
* guix/build/download.scm: Export `progress-proc' and `uri-abbreviation'.
9af05aa2 — Ludovic Courtès 12 years ago
package: Display the number of installed packages upon completion.

* guix/scripts/package.scm (guix-package)[process-actions]: Display the
  number of packages in the profile upon completion.
Next