Commit Graph

630 Commits

Author SHA1 Message Date
Ludovic Courtès
34fcbe3a10 store: In `open-connection', process all the server's stderr.
* guix/store.scm (open-connection): Loop until `process-stderr' returns #t.
2013-01-13 22:27:00 +01:00
Ludovic Courtès
85a8a5f556 distro: openssl: Fix the `license' field.
* distro/packages/openssl.scm: Add renamer for (guix licenses).  Adjust
  accordingly.
2013-01-13 21:58:01 +01:00
Ludovic Courtès
468bdabb56 distro: Add GNU Emacs.
* distro/packages/emacs.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-13 17:12:22 +01:00
Ludovic Courtès
80ba8cc076 doc: Fix typos.
* doc/guix.texi (Setting Up the Daemon): Use "useradd -c" for comments.
  Reported by Andreas Enge.
  (Invoking guix-gc): Fix typo.
2013-01-13 16:37:51 +01:00
Ludovic Courtès
a661e42025 distro: Add GNU Mailutils.
* distro/packages/mailutils.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-13 16:34:41 +01:00
Ludovic Courtès
d5529a9162 distro: expect: Provide the right path to `stty'.
* distro/packages/tcl.scm (expect): Add #:phases argument.
2013-01-13 15:37:01 +01:00
Ludovic Courtès
fa39cc0da6 distro: gnutls: Add dependency on Which.
* distro/packages/gnutls.scm (gnutls): Add dependency on Which.
2013-01-12 23:02:26 +01:00
Ludovic Courtès
fbbb1c0f4c distro: Add GDB.
* distro/packages/gdb.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-12 23:02:07 +01:00
Ludovic Courtès
75abd8ab23 distro: dejagnu: Add expect' in the search path of runtest'.
* distro/packages/dejagnu.scm (dejagnu): In `check' phase, change `PATH'
  in `runtest', to avoid "expect not found in PATH" error.
2013-01-12 23:00:32 +01:00
Ludovic Courtès
39224d94e3 distro: Add MySQL.
* distro/packages/mysql.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-12 22:25:16 +01:00
Ludovic Courtès
fe8ccfcc72 distro: util-linux: Fix `license' field.
* distro/packages/linux.scm (util-linux): Change `license' field to
  refer to the actual license objects.
2013-01-12 16:51:45 +01:00
Ludovic Courtès
e47e3effaf distro: Add procps.
* distro/packages/linux.scm (procps): New variable.
2013-01-12 16:51:16 +01:00
Ludovic Courtès
eb6d676e2a distro: tcl, expect: Enable tests.
* distro/packages/tcl.scm (tcl, expect): Remove #:tests? argument; add
  #:test-target.
2013-01-12 16:24:35 +01:00
Ludovic Courtès
b22a12fda7 doc: Mention store sharing with Nix; update `package' example.
* doc/guix.texi: Set @documentlanguage.
  (Installation): Add reference to `INSTALL' and `README'.
  (Requirements): Mention store sharing with Nix.
  (Defining Packages): Update example to include `use-modules' clauses
  and to use (guix licenses).
2013-01-11 16:16:36 +01:00
Ludovic Courtès
01e354eb83 Merge branch 'core-updates'
Conflicts:
	guix/build/union.scm
2013-01-11 16:01:49 +01:00
Ludovic Courtès
28e5560421 download: Abbreviate URLs when displaying the progress report.
* guix/build/download.scm (uri-abbreviation): New procedure.
  (ftp-fetch, http-fetch): Use it instead of `uri->string' when calling
  `progress-proc'.  Reported by Andreas Enge.
2013-01-11 15:41:58 +01:00
Ludovic Courtès
ab6522aeb0 distro: gawk: Adjust to the libsigsegv output change.
* distro/packages/gawk.scm (gawk): Adjust the libsigsegv with a single
  output.
2013-01-10 22:35:35 +01:00
Ludovic Courtès
f03e7115d7 distro: libsigsegv: Use a single output.
* distro/packages/libsigsegv.scm (libsigsegv): Use just a single output,
  otherwise nothing ends up in `out' as a consequence of commit a06a99f.
  Reported by Andreas Enge <andreas@enge.fr>.
2013-01-10 22:33:35 +01:00
Ludovic Courtès
5fedc65b0f build: Print the Guix system type.
* m4/guix.m4 (GUIX_SYSTEM_TYPE): Print the system type.
2013-01-10 22:18:16 +01:00
Ludovic Courtès
704197f4bf distro: gmp: Update to 5.0.1.
* distro/packages/multiprecision.scm (gmp): Update to 5.0.1.
2013-01-10 00:11:20 +01:00
Ludovic Courtès
4873f8ed9f distro: binutils: Add a "lib" output.
* distro/packages/base.scm (binutils): Add `outputs' field.
2013-01-10 00:09:25 +01:00
Ludovic Courtès
a06a99ff77 build-system/gnu: Improve support for "lib" outputs; support "doc" outputs.
* guix/build/gnu-build-system.scm (configure)[package-name]: New
  procedure.
  When LIBDIR is true and INCLUDEDIR is false, add
  --includedir=LIBDIR/include.
  Add support for --docdir when a "doc" output exists.
2013-01-10 00:08:40 +01:00
Ludovic Courtès
bfe384cc4c doc: Clarify package version specification example.
* doc/guix.texi (Invoking guix-package): Use "guile-1.8.8" as the
  example, not "guile-1.8" since there is no such version.
2013-01-09 22:26:28 +01:00
Ludovic Courtès
c0b3c89f16 Augment `TODO'. 2013-01-09 22:12:23 +01:00
Ludovic Courtès
b2d58cd80a union: Detect collisions, and delete duplicate leaves.
* guix/build/union.scm (delete-duplicate-leaves): New procedure.
  (union-build)[leaf=?, resolve-collision]: New procedures.
  Use `delete-duplicate-leaves' on the result of `tree-union'.
* tests/union.scm ("delete-duplicate-leaves, default",
  "delete-duplicate-leaves, file names"): New tests.
2013-01-09 22:10:06 +01:00
Ludovic Courtès
b9e5c0a949 guix-package: Create ~/.guix-profile when it doesn't exist.
* guix-package.in (guix-package): Create the %USER-ENVIRONMENT-DIRECTORY
  symlink if it doesn't exist yet.
* doc/guix.texi (Invoking guix-package): Document it.
2013-01-09 19:57:44 +01:00
Ludovic Courtès
44b6be7744 guix-package: Show package outputs in `--list-available'.
* guix-package.in (guix-package)[process-query]: For `list-available',
  show the outputs of each package.
* doc/guix.texi (Invoking guix-package): Update accordingly.
2013-01-09 19:26:37 +01:00
Ludovic Courtès
58db733e6d doc: Update copyright years; add visible copyright statement.
* doc/guix.texi (YEARS): New variable.
  Use it for all copyright statements.
  (Top): Add a copyright statement and license header here.
2013-01-09 13:01:48 +01:00
Ludovic Courtès
bd5e766b87 doc: Documentation installation and the daemon.
* doc/guix.texi (Installation): New node.
2013-01-09 12:58:27 +01:00
Ludovic Courtès
2498d43adb daemon: Fix warning message when running as root without a build user group.
* nix/nix-daemon/guix-daemon.cc (main): Fix warning message when running
  as root without `--build-users-group'.
2013-01-09 12:16:26 +01:00
Ludovic Courtès
6221db61f5 guix-daemon: Rename --build-cores' for consistency with guix-build'.
* nix/nix-daemon/guix-daemon.cc (options): Change `--build-cores' to
  `--cores', and `-C' to `-c'.
  (parse_opt): Adjust accordingly.
2013-01-09 12:14:23 +01:00
Ludovic Courtès
784bb1f37b derivations: Fix `derivation-prerequisites-to-build' when outputs are there.
Before it would list inputs not built, even if the outputs of the given
derivation were already available.

* guix/derivations.scm (derivation-prerequisites-to-build): Add
  `outputs' keyword parameter.
  [built?, derivation-built?]: New procedures.
  [loop]: Add `sub-drvs' parameter.  Use `derivation-built?' to check if
  the SUB-DRVS of DRV are built before checking its inputs.
2013-01-09 08:38:57 +01:00
Ludovic Courtès
9149f1a087 doc: Update porting instructions in `HACKING'.
* HACKING (When the platform is supported by Nixpkgs): Update
  instructions.
2013-01-08 22:57:09 +01:00
Ludovic Courtès
98fefb210a gnu-maintenance: Add `latest-release' and related tools.
* guix/gnu-maintenance.scm (ftp-server/directory, releases,
  version-string>?, latest-release, gnu-package-name->name+version): New
  procedures.
  (%package-name-rx): New variable.
2013-01-08 22:46:12 +01:00
Ludovic Courtès
87009d8aa1 guix-package: Use guile-final', not guile-2.0' to build the environment.
* guix-package.in (guix-package): Use either %BOOTSTRAP-GUILE or
  GUILE-FINAL.
2013-01-08 00:05:37 +01:00
Ludovic Courtès
9762706b90 guix-package: Be verbose when Guile itself needs to be built.
* guix-package.in (guix-package)[guile-missing?]: New procedure.
  (guix-package): Always redirect `current-build-output-port' to
  `current-error-port' when (guile-missing?).
2013-01-08 00:04:46 +01:00
Ludovic Courtès
cc57f25d96 guix-package: Remove -b' shorthand for --bootstrap'.
* guix-package.in (%options): Remove #\b as an alternate for
  "bootstrap".
  (show-help): Adjust accordingly.
* tests/guix-package.sh: Use `--bootstrap' instead of `-b'.
2013-01-07 22:54:54 +01:00
Ludovic Courtès
ad85c617b5 snix: Update `license' check in unit test.
* tests/snix.scm ("nixpkgs->guix-package"): Expect `license' to be a
  symbol.  This is a follow-up to commit e7aa73e.
2013-01-07 22:53:46 +01:00
Ludovic Courtès
e7aa73ef09 snix: Use (guix licenses) variables.
* guix/snix.scm (snix-derivation->guix-package)[license-variable]: New
  procedure.
  Use it to determine the variable name for the license.
2013-01-07 22:32:28 +01:00
Ludovic Courtès
ab8ed44fce snix: Gracefully handle `null' in Nix build inputs.
* guix/snix.scm (snix-derivation->guix-package)[convert-inputs]:
  Gracefully handle `null' as an input.
2013-01-07 22:23:50 +01:00
Ludovic Courtès
708d0ceb50 distro: Add GNU Aspell.
* distro/packages/aspell.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-07 21:30:45 +01:00
Ludovic Courtès
4e6b699d50 distro: Add GSL.
* distro/packages/algebra.scm (gsl): New variable.
2013-01-07 21:23:33 +01:00
Ludovic Courtès
27160c856b distro: Add GNU GLOBAL.
* distro/packages/global.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-07 21:12:12 +01:00
Ludovic Courtès
4a219a1a47 distro: Add Tcl, Expect, and DejaGNU.
* distro/packages/dejagnu.scm, distro/packages/tcl.scm: New files.
* Makefile.am (MODULES): Add them.
2013-01-07 21:11:19 +01:00
Ludovic Courtès
b30e4f3f12 distro: bdb: Adjust to lack of /bin/sh.
* distro/packages/bdb.scm (bdb): Pass `CONFIG_SHELL' and `SHELL' to the
  `configure' script.
2013-01-06 18:47:24 +01:00
Ludovic Courtès
2357f85032 Update a few more license headers.
* distro/packages/openssl.scm, m4/guix.m4, nix/sync-with-upstream:
  Update headers.
2013-01-06 18:43:58 +01:00
Ludovic Courtès
e66ca1a5a8 download: Report the progress of HTTP downloads.
* guix/build/download.scm (http-fetch): Rename `bv' to `bv-or-port'.
  Use `http-get*' followed by `dump-port' when the former is available,
  and pass a progress procedure to `dump-port'.
2013-01-06 18:36:50 +01:00
Ludovic Courtès
e47bac7902 download: Report the progress of FTP downloads.
* guix/build/download.scm (progress-proc): New procedure.
  (ftp-fetch): Call `ftp-size' on URI.  Use `progress-proc', and pass
  the result to `dump-port', along with #:buffer-size.
2013-01-06 18:35:23 +01:00
Ludovic Courtès
fb83842efb ftp-client: Add `ftp-size'.
* guix/ftp-client.scm (ftp-size): New procedure.
2013-01-06 18:23:44 +01:00
Ludovic Courtès
a9f8b72ee1 distro: time: Adjust configure' phase to old configure' script.
* distro/packages/time.scm (time): Add `arguments'.
2013-01-06 17:42:59 +01:00