~ruther/guix-local

ref: aaa3eaa97e148c2d8df2940e3d5a809f37ac025e guix-local/gnu/packages.scm -rw-r--r-- 15.0 KiB
501d7647 — Ludovic Courtès 11 years ago
gnu-maintenance: Introduce <gnu-release> data type.

* guix/gnu-maintenance.scm (<gnu-release>): New record type.
  (release-file): Rename to...
  (release-file?): ... this.  Return a Boolean.
  (tarball->version, coalesce-releases): New procedures.
  (releases): Call 'coalesce-releases' on RESULT.  Return <gnu-release>
  objects instead of pairs.
  (latest-release): Likewise.
  (package-update-path): Adjust accordingly.
* gnu/packages.scm (check-package-freshness): Adjust accordingly.
9ffc1c00 — Ludovic Courtès 11 years ago
packages: Optimize 'find-packages-by-name' to avoid disk accesses.

On a profile with 182 entries, "guix package --search-paths" goes from
4.5 seconds down to 0.4 second.

* gnu/packages.scm (find-packages-by-name): Make a name -> package vhash
  in a promise; access it with 'vhash-fold*'.
8689901f — Ludovic Courtès 11 years ago
Introduce the 'GUIX_PACKAGE_PATH' environment variable.

* gnu/packages.scm (%package-module-path): Honor $GUIX_PACKAGE_PATH.
* test-env.in: Unset 'GUIX_PACKAGE_PATH'.
* tests/guix-package.sh: Test it.
* doc/guix.texi (Package Modules): Document it.
c107b541 — Ludovic Courtès 11 years ago
packages: Add '%package-module-search-path'.

* gnu/packages.scm (%package-module-path): New variable.
  (all-package-modules): New procedure.
  (fold-packages): Use it instead of 'package-modules'.
84836a57 — Ludovic Courtès 11 years ago
packages: Generalize package module search.

* gnu/packages.scm (%distro-root-directory): New variable.
  (%distro-module-directory): Remove.
  (package-files): Rename to...
  (scheme-files): ... this.  Return absolute file names, not stripped.
  (file-name->module-name): New procedure.
  (package-modules): Add 'directory' and 'sub-directory' parameters.
  Rewrite accordingly.
  (fold-packages): Adjust 'package-modules' call accordingly.
e759c0a3 — Mark H Weaver 11 years ago
Merge branch 'master' into core-updates
5e3b388b — Cyril Roelandt 11 years ago
Move specification->package to gnu/packages.scm.

* guix/scripts/build.scm (specification->package): Move from here...
* gnu/packages.scm: ... to here.
ce3e35ed — Mark H Weaver 11 years ago
Merge branch 'master' into core-updates
4ea44419 — Alex Kost 11 years ago
Move 'check-package-freshness' from 'guix package' to 'packages'.

* guix/scripts/package.scm (%sigint-prompt, call-with-sigint-handler)
  (waiting, ftp-open*, check-package-freshness): Move to...
* gnu/packages.scm: ... here.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
b211a661 — Alex Kost 11 years ago
packages: Remove dead code.

* gnu/packages.scm (_): Remove.
  Remove an extra space.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
33690ffd — Mark H Weaver 11 years ago
Merge branch 'master' into core-updates
7d193ec3 — Eric Bavier 11 years ago
guix: refresh: Add --list-dependent option.

* guix/packages.scm (package-direct-inputs): New procedure.
* gnu/packages.scm (vhash-refq, package-direct-dependents)
  (package-transitive-dependents, package-covering-dependents): New procedures.
* guix/scripts/refresh.scm (%options, show-help, guix-refresh): Add
  --list-dependent option.
* doc/guix.texi (Invoking guix refresh): Document '--list-dependent' option.
2f265602 — Ludovic Courtès 12 years ago
Merge branch 'master' into core-updates
3f26bfc1 — Ludovic Courtès 12 years ago
Factorize package search between 'guix package' and 'guix build'.

* guix/scripts/package.scm (newest-available-packages): Remove.
  (find-best-packages-by-name): Move to...
* gnu/packages.scm (find-best-packages-by-name): ... here.
  (find-newest-available-packages): Memoize.
* guix/scripts/build.scm (specification->package): New procedure,
  formerly called 'find-package' within 'guix-build'.
  (guix-build): Adjust accordingly.
a9db7d10 — Ludovic Courtès 13 years ago
Merge branch 'master' into core-updates

Conflicts:
	Makefile.am
	gnu/packages/autotools.scm
	gnu/packages/guile.scm
	gnu/packages/python.scm
	gnu/packages/shishi.scm
	guix/gnu-maintenance.scm
	guix/scripts/build.scm
	guix/scripts/gc.scm
	guix/scripts/package.scm
	guix/scripts/substitute-binary.scm
	guix/ui.scm
	nix/nix-daemon/guix-daemon.cc
	test-env.in
	tests/nar.scm
	tests/store.scm
98eb8cbe — Nikita Karetnikov 13 years ago
ui: Add a 'define-diagnostic' macro.

* guix/ui.scm (define-diagnostic): New macro, which is based on the
  previous version of 'warning'.
  (warning, leave): Redefine using 'define-diagnostic'.
  (report-error): New macro.
  (install-locale): Use 'warning' instead of 'format'.
  (call-with-error-handling): Adjust 'leave'.
* gnu/packages.scm (package-files): Use 'warning' instead of 'format'.
* guix/gnu-maintenance.scm (http-fetch): Use 'warning' and 'leave'.
* guix/scripts/build.scm (derivations-from-package-expressions, guix-build):
  Adjust 'leave'.
* guix/scripts/download.scm (guix-download): Adjust 'leave'.
* guix/scripts/gc.scm (size->number, %options): Adjust 'leave'.
* guix/scripts/package.scm (roll-back, guix-package): Adjust 'leave'.
* po/POTFILES.in: Add 'guix/gnu-maintenance.scm'.
04fd96ca — Ludovic Courtès 13 years ago
utils: Add `fold2'.

* gnu/packages.scm (fold2): Remove.
* guix/utils.scm (fold2): New procedure.  Generalization of the above to
  one and two lists.
* tests/utils.scm ("fold2, 1 list", "fold2, 2 lists"): New tests.
128663e4 — Ludovic Courtès 13 years ago
store: Really disable file name canonicalization for derivation inputs.

* guix/store.scm (write-contents)[call-with-binary-input-file]: Set
  %FILE-PORT-NAME-CANONICALIZATION to #f.
* gnu/packages.scm (search-patch, search-bootstrap-binary): Leave
  %FILE-PORT-NAME-CANONICALIZATION unchanged.  This reverts 9776ebb.
9776ebb2 — Ludovic Courtès 13 years ago
gnu: Disable file name canonicalization in `search-*'.

* gnu/packages.scm (search-patch, search-bootstrap-binary): Make sure no
  canonicalization occurs.  This reduces the number of 'stat' system
  calls.
854d6277 — Mark H Weaver 13 years ago
Build newest versions unless specified, and implement upgrades.

* gnu/packages.scm (find-newest-available-packages):
  New exported procedure.

* guix-build.in (newest-available-packages, find-best-packages-by-name):
  New procedures.
  (find-package): Use find-best-packages-by-name, to guarantee that
  if a version number is not specified, only the newest versions will
  be considered.

* guix-package.in (%options): Add --upgrade/-u option.
  (newest-available-packages, find-best-packages-by-name, upgradeable?):
  New procedures.
  (find-package): Use find-best-packages-by-name, to guarantee that
  if a version number is not specified, only the newest versions will
  be considered.
  (process-actions): Implement upgrade option.

* doc/guix.texi (Invoking guix-package): In the description of --install,
  mention that if no version number is specified, the newest available
  version will be selected.
Next