guix:guix.git
5 years agorelease.nix: Add `build_disable_daemon'. nix-integration
Ludovic Courtès [Thu, 13 Dec 2012 21:08:33 +0000 (22:08 +0100)]
release.nix: Add `build_disable_daemon'.

* release.nix (build_disable_daemon): New job.

5 years agorelease.nix: build: Allow builds within a chroot.
Ludovic Courtès [Thu, 13 Dec 2012 21:08:13 +0000 (22:08 +0100)]
release.nix: build: Allow builds within a chroot.

* release.nix (build): Remove `__noChroot' and `preConfigure'.

5 years agotests: Skip network-dependent tests when the network is unreachable.
Ludovic Courtès [Thu, 13 Dec 2012 21:06:45 +0000 (22:06 +0100)]
tests: Skip network-dependent tests when the network is unreachable.

* tests/builders.scm (network-reachable?): New variable.
  ("url-fetch", "gnu-build"): Skip unless NETWORK-REACHABLE?.
* tests/derivations.scm (%coreutils): Check for network access.
  ("build-expression->derivation with one input"): Skip when %COREUTILS
  is #f.
* tests/guix-package.sh: Skip installation of GNU Make when the network
  is unreachable.
* tests/packages.scm ("GNU Make, bootstrap"): Likewise.
* tests/union.scm ("union-build"): Likewise.

5 years agorelease.nix: Build the daemon.
Ludovic Courtès [Wed, 12 Dec 2012 23:28:51 +0000 (00:28 +0100)]
release.nix: Build the daemon.

* release.nix (tarball): Add `preAutoconf'.  Augment `buildInputs' and
  `configureFlags' to allow daemon builds.
  (build): Likewise.

5 years agobuild: Make `--enable-daemon' the default.
Ludovic Courtès [Wed, 12 Dec 2012 23:27:27 +0000 (00:27 +0100)]
build: Make `--enable-daemon' the default.

* configure.ac: Have $guix_build_daemon default to "yes".

5 years agobuild: When `--enable-daemon', don't error out when Nix programs are missing.
Ludovic Courtès [Wed, 12 Dec 2012 23:26:41 +0000 (00:26 +0100)]
build: When `--enable-daemon', don't error out when Nix programs are missing.

* config-daemon.ac: Move AC_ARG_ENABLE([daemon]...)...
* configure.ac: ... here.
  When Nix programs are not found, error out only when
  $guix_build_daemon is no.

5 years agotests: Arrange to have the socket file name fit in `sun_path'.
Ludovic Courtès [Wed, 12 Dec 2012 23:24:27 +0000 (00:24 +0100)]
tests: Arrange to have the socket file name fit in `sun_path'.

* test-env.in (NIX_STATE_DIR): Choose a slightly smaller directory name.

5 years agotests: base32: Work around `system*' bug.
Ludovic Courtès [Wed, 12 Dec 2012 23:23:20 +0000 (00:23 +0100)]
tests: base32: Work around `system*' bug.

* tests/base32.scm (%nix-hash): When `getenv' returns the empty string,
  ignore it.
  (%have-nix-hash?): New variable.  Update `test-skip' clause to use it.

5 years agodaemon: Use `openssl' from $PATH.
Ludovic Courtès [Wed, 12 Dec 2012 14:32:35 +0000 (15:32 +0100)]
daemon: Use `openssl' from $PATH.

* daemon.am (-DOPENSSL_PATH): Default to "openssl".
* TODO: Mention removal of OpenSSL dependency.

5 years agoMerge branch 'master' into nix-integration
Ludovic Courtès [Sun, 9 Dec 2012 22:54:37 +0000 (23:54 +0100)]
Merge branch 'master' into nix-integration

Conflicts:
guix/store.scm

5 years agostore: Add GC-related operations.
Ludovic Courtès [Sun, 9 Dec 2012 22:52:59 +0000 (23:52 +0100)]
store: Add GC-related operations.

* guix/store.scm (gc-action): New enumerate type.
  (read-long-long, read-string-list, write-store-path,
  write-store-path-list, read-store-path-list): New procedures.
  (write-arg): Add support for `store-path' and `store-path-list'.
  (read-arg): Add support for `store-path-list'.
  (define-operation): Add support for multiple-value returns.
  (run-gc, live-paths, dead-paths, collect-garbage, delete-paths): New
  procedures.
  (%long-long-max): New macro.
* tests/store.scm: New file.
* Makefile.am (TESTS): Add it.

5 years agostore: Add `add-temp-root'.
Ludovic Courtès [Sun, 9 Dec 2012 22:50:17 +0000 (23:50 +0100)]
store: Add `add-temp-root'.

* guix/store.scm (add-temp-root): New procedure.

5 years agoUpdate `THANKS'.
Ludovic Courtès [Sun, 9 Dec 2012 22:35:15 +0000 (23:35 +0100)]
Update `THANKS'.

5 years agodoc: Correct short name of `--install' option of `guix-package'.
Ludovic Courtès [Sun, 9 Dec 2012 22:35:03 +0000 (23:35 +0100)]
doc: Correct short name of `--install' option of `guix-package'.

* doc/guix.texi (Invoking guix-package): Fix short form of `--install'.
  Reported by Andreas Enge <andreas@enge.fr>.

5 years agodaemon: Update to Nix 1.2-1-ge087bfe.
Ludovic Courtès [Sun, 9 Dec 2012 13:54:01 +0000 (14:54 +0100)]
daemon: Update to Nix 1.2-1-ge087bfe.

5 years agoUpdate `TODO'.
Ludovic Courtès [Sun, 9 Dec 2012 13:44:17 +0000 (14:44 +0100)]
Update `TODO'.

5 years agoChange email address in `AUTHORS'.
Ludovic Courtès [Sun, 9 Dec 2012 13:42:30 +0000 (14:42 +0100)]
Change email address in `AUTHORS'.

5 years agoUpdate `AUTHORS'.
Ludovic Courtès [Sat, 8 Dec 2012 18:21:47 +0000 (19:21 +0100)]
Update `AUTHORS'.

5 years agoAdd (guix licenses).
Nikita Karetnikov [Sat, 8 Dec 2012 01:48:17 +0000 (01:48 +0000)]
Add (guix licenses).

* guix/licenses.scm: New file.
* Makefile.am (MODULES): Add it.

5 years agodownload: Fix the primary Savannah URL.
Ludovic Courtès [Fri, 7 Dec 2012 20:06:03 +0000 (21:06 +0100)]
download: Fix the primary Savannah URL.

* guix/download.scm (%mirrors)[savannah]: Use
  "http://download.savannah.gnu.org/releases/" as the primary URL.

5 years agodistro: Add ACL.
Nikita Karetnikov [Fri, 7 Dec 2012 01:18:23 +0000 (01:18 +0000)]
distro: Add ACL.

* distro/packages/acl.scm: New file.  Dependency on Perl added by
  Ludovic.
* Makefile.am (MODULES): Add it.

5 years agodistro: Add Attr.
Nikita Karetnikov [Fri, 7 Dec 2012 00:59:30 +0000 (00:59 +0000)]
distro: Add Attr.

* distro/packages/attr.scm: New file.  Dependency on Perl and
  `patch-shebang' added by Ludovic.
* Makefile.am (MODULES): Add it.

5 years agodoc: Add new dependencies in `README'.
Ludovic Courtès [Thu, 6 Dec 2012 21:54:10 +0000 (22:54 +0100)]
doc: Add new dependencies in `README'.

* README (Hacking): Rename to...
  (Requirements): ... this.  Add the daemon's dependencies.

5 years agodaemon: Add more options.
Ludovic Courtès [Thu, 6 Dec 2012 21:21:45 +0000 (22:21 +0100)]
daemon: Add more options.

* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_BUILD_USERS_GROUP,
  GUIX_OPT_CACHE_FAILURES, GUIX_OPT_LOSE_LOGS,
  GUIX_OPT_DISABLE_STORE_OPTIMIZATION, GUIX_OPT_IMPERSONATE_LINUX_26):
  New macros.
  (options)["build-users-group", "cache-failures", "lose-logs",
  "disable-store-optimization", "impersonate-linux-2.6"]: New options.
  (parse_opt): Handle them.

5 years agobuild: Update skip count in `tests/derivations.scm'.
Ludovic Courtès [Wed, 5 Dec 2012 23:05:11 +0000 (00:05 +0100)]
build: Update skip count in `tests/derivations.scm'.

* tests/derivations.scm: When %STORE if #f, skip 11 tests.

5 years agobuild: Run `distcheck' with `--enable-daemon'.
Ludovic Courtès [Wed, 5 Dec 2012 23:04:43 +0000 (00:04 +0100)]
build: Run `distcheck' with `--enable-daemon'.

* Makefile.am (AM_DISTCHECK_CONFIGURE_FLAGS): Add `--enable-daemon'.

5 years agobuild: Add missing daemon header to the distribution.
Ludovic Courtès [Wed, 5 Dec 2012 23:04:00 +0000 (00:04 +0100)]
build: Add missing daemon header to the distribution.

* daemon.am (guix_daemon_headers): New variable.
  (noinst_HEADERS): Add it.

5 years agobuild: Capture configure-time settings in (guix config).
Ludovic Courtès [Wed, 5 Dec 2012 22:02:47 +0000 (23:02 +0100)]
build: Capture configure-time settings in (guix config).

* configure.ac: Compute and substitute `guix_localstatedir'.
* m4/guix.m4: Substitute `guix_system'.
* guix/config.scm.in (%store-directory, %store-directory, %system): New
  variables.
* guix/store.scm (%nix-state-dir): Remove.
  (%default-socket-path): Use %STATE-DIRECTORY as the default.
  (%store-prefix): Use %STORE-DIRECTORY as the default.
* guix/utils.scm (%current-system): Default to %SYSTEM.

5 years agobuild: Run all the tests against the just-built daemon.
Ludovic Courtès [Wed, 5 Dec 2012 23:03:26 +0000 (00:03 +0100)]
build: Run all the tests against the just-built daemon.

* test-env.in: New file.
* configure.ac: Add it to `AC_CONFIG_FILES' and `commands-exec'.
* config-daemon.ac: Set and substitute `GUIX_TEST_ROOT'.
* Makefile.am (SCM_LOG_COMPILER, SH_LOG_COMPILER): Use it in lieu of
  `pre-inst-env'.
* daemon.am (test_root): Remove
  (AM_TESTS_ENVIRONMENT): Remove `TEST_ROOT'.
  (clean-local): Use $(GUIX_TEST_ROOT); make files writable before
  removing them.guix_test_root
* tests/guix-daemon.sh: Remove `NIX_' variable settings; don't launch
  `guix-daemon'.

5 years agotests: Remove hard-coded /nix/store.
Ludovic Courtès [Wed, 5 Dec 2012 21:41:58 +0000 (22:41 +0100)]
tests: Remove hard-coded /nix/store.

* tests/utils.scm ("store-path-package-name"): Use (%store-prefix)
  instead of a hard-coded "/nix/store".

5 years agodaemon: Add `list-runtime-roots' script.
Ludovic Courtès [Wed, 5 Dec 2012 15:29:28 +0000 (16:29 +0100)]
daemon: Add `list-runtime-roots' script.

* nix/scripts/list-runtime-roots.in: New file.
* config-daemon.ac: Add `AC_CONFIG_FILES' invocation for it.
* daemon.am (nodist_pkglibexec_SCRIPTS): New variable.
  (AM_TESTS_ENVIRONMENT): Define `top_builddir'.
* tests/guix-daemon.sh: Export `NIX_ROOT_FINDER'.
* nix/sync-with-upstream: Substitute the path to the root finder in
  libstore/gc.cc.

5 years agodaemon: Disable use of chroots when support is lacking.
Ludovic Courtès [Wed, 5 Dec 2012 14:22:28 +0000 (15:22 +0100)]
daemon: Disable use of chroots when support is lacking.

* nix/nix-daemon/guix-daemon.cc (options)[!HAVE_CHROOT]: Mention that
  `--disable-chroot' has no effect.
  (main)[!HAVE_CHROOT]: Set `useChroot' to false.

5 years agoAdd (guix gnu-maintenance).
Nikita Karetnikov [Tue, 4 Dec 2012 23:02:22 +0000 (23:02 +0000)]
Add (guix gnu-maintenance).

* guix/gnu-maintenance.scm: New file.
* Makefile.am (MODULES): Add it.

5 years agodaemon: Add test.
Ludovic Courtès [Tue, 4 Dec 2012 22:16:11 +0000 (23:16 +0100)]
daemon: Add test.

* daemon.am (test_root, AM_TESTS_ENVIRONMENT): New variables.
  (clean-local): New target.
* tests/guix-daemon.sh: New file.

5 years agobuild: daemon: Add missing feature tests.
Ludovic Courtès [Tue, 4 Dec 2012 22:13:59 +0000 (23:13 +0100)]
build: daemon: Add missing feature tests.

* config-daemon.ac: Add feature tests needed for the daemon code.  Taken
  from Nix's `configure.ac'.

5 years agobuild: daemon: Remove extraneous quotes in CPP macro `SYSTEM'.
Ludovic Courtès [Tue, 4 Dec 2012 22:12:40 +0000 (23:12 +0100)]
build: daemon: Remove extraneous quotes in CPP macro `SYSTEM'.

* config-daemon.ac: Remove extraneous quotes in definition of `SYSTEM'.

5 years agodaemon: Fix typo in libgcrypt bindings.
Ludovic Courtès [Tue, 4 Dec 2012 22:10:54 +0000 (23:10 +0100)]
daemon: Fix typo in libgcrypt bindings.

* nix/libutil/md5.h (MD5_Final): Pass RESBUF as the first argument to
  `guix_hash_final'.
* nix/libutil/sha1.h (SHA1_Final): Likewise.
* nix/libutil/sha256.h (SHA256_Final): Likewise.

5 years agoMerge branch 'master' into nix-integration
Ludovic Courtès [Tue, 4 Dec 2012 22:51:31 +0000 (23:51 +0100)]
Merge branch 'master' into nix-integration

5 years agoguix-build: Don't connect to the daemon when run with `--version' or `--help'.
Ludovic Courtès [Tue, 4 Dec 2012 22:50:20 +0000 (23:50 +0100)]
guix-build: Don't connect to the daemon when run with `--version' or `--help'.

* guix-build.in (%store): Turn into a SRFI-39 parameter.  Update users.
  (guix-build): Set %STORE and call `open-connection' only after
  `parse-options' has been called.

5 years agostore: Honor $NIX_STORE_DIR and $NIX_STATE_DIR.
Ludovic Courtès [Tue, 4 Dec 2012 22:48:21 +0000 (23:48 +0100)]
store: Honor $NIX_STORE_DIR and $NIX_STATE_DIR.

* guix/store.scm (%nix-state-dir): Honor $NIX_STATE_DIR.
  (%store-prefix): Honor $NIX_STORE_DIR.

5 years agoderivations: Fix erroneous call to `add-to-store' for local files as input.
Ludovic Courtès [Tue, 4 Dec 2012 22:46:50 +0000 (23:46 +0100)]
derivations: Fix erroneous call to `add-to-store' for local files as input.

* guix/derivations.scm (derivation)[inputs]: Fix typo in call to
  `add-to-store'.
* tests/derivations.scm ("derivation with local file as input"): New test.
* tests/packages.scm ("trivial with local file as input"): New test.

5 years agoAugment `TODO'.
Ludovic Courtès [Tue, 4 Dec 2012 21:04:03 +0000 (22:04 +0100)]
Augment `TODO'.

5 years agodistro: Add GNU lsh.
Ludovic Courtès [Tue, 4 Dec 2012 21:03:21 +0000 (22:03 +0100)]
distro: Add GNU lsh.

* distro/packages/lsh.scm,
  distro/packages/patches/lsh-guile-compat.patch:
  distro/packages/patches/lsh-no-root-login.patch:
  distro/packages/patches/lsh-pam-service-name.patch: New files.
* Makefile.am (MODULES): Add lsh.scm.
  (dist_patch_DATA): Add the above patches.

5 years agodistro: Add util-linux.
Nikita Karetnikov [Mon, 3 Dec 2012 23:13:02 +0000 (23:13 +0000)]
distro: Add util-linux.

* distro/packages/linux.scm (util-linux): New variable.

5 years agodistro: Add psmisc.
Ludovic Courtès [Mon, 3 Dec 2012 23:17:49 +0000 (00:17 +0100)]
distro: Add psmisc.

* distro/packages/linux.scm (psmisc): New variable.

5 years agobuild: Add `bootstrap' and `sync-with-upstream' scripts.
Ludovic Courtès [Mon, 3 Dec 2012 21:43:26 +0000 (22:43 +0100)]
build: Add `bootstrap' and `sync-with-upstream' scripts.

* bootstrap, nix/sync-with-upstream: New files.
* Makefile.am (EXTRA_DIST): Add `bootstrap'.
* daemon.am (EXTRA_DIST): Add `nix/sync-with-upstream'.

5 years agobuild: Add Nix as a sub-module.
Ludovic Courtès [Sun, 2 Dec 2012 21:54:19 +0000 (22:54 +0100)]
build: Add Nix as a sub-module.

* .gitmodules, nix-upstream: New files.

5 years agobuild: Include a copy of Nix's libstore and daemon; build it.
Ludovic Courtès [Mon, 3 Dec 2012 22:04:47 +0000 (23:04 +0100)]
build: Include a copy of Nix's libstore and daemon; build it.

* configure.ac: Call `AC_USE_SYSTEM_EXTENSIONS', and
  `GUIX_SYSTEM_TYPE'.  Add `--with-store-dir' option, and substitute
  `storedir'.  Include `config-daemon.ac'.
* config-daemon.ac: New file.
* Makefile.am [BUILD_DAEMON]: Include `daemon.am'.
* daemon.am: New file.
* m4/guix.m4 (GUIX_SYSTEM_TYPE): New macro.

* nix/libutil/gcrypt-hash.cc, nix/libutil/gcrypt-hash.hh,
  nix/libutil/md5.h, nix/libutil/sha1.h, nix/libutil/sha256.h,
  nix/nix-daemon/guix-daemon.cc, nix/nix-daemon/shared.hh: New files.

5 years agodistro: make-bootstrap: Use `linux' module.
Ludovic Courtès [Sun, 2 Dec 2012 21:32:09 +0000 (22:32 +0100)]
distro: make-bootstrap: Use `linux' module.

* distro/packages/make-bootstrap.scm: Use (distro packages linux).  This
  is a followup to 80fe5c6.

5 years agodistro: gnutls: Build sequentially.
Ludovic Courtès [Fri, 30 Nov 2012 23:59:08 +0000 (00:59 +0100)]
distro: gnutls: Build sequentially.

* distro/packages/gnutls.scm (gnutls)[arguments]: New field.

5 years agodistro: guile-2.0: Update to 2.0.7.
Ludovic Courtès [Fri, 30 Nov 2012 21:01:47 +0000 (22:01 +0100)]
distro: guile-2.0: Update to 2.0.7.

* distro/packages/guile.scm (guile-2.0): Switch to 2.0.7.
  (guile-2.0/fixed): Stay at 2.0.6.

5 years agodistro: Add `guile-2.0/fixed', which should rarely change.
Ludovic Courtès [Fri, 30 Nov 2012 20:37:41 +0000 (21:37 +0100)]
distro: Add `guile-2.0/fixed', which should rarely change.

* distro/packages/guile.scm (guile-2.0/fixed): New variable.
* distro/packages/base.scm (guile-final): Use it.

5 years agodistro: Import 'gettext' under a different name.
Nikita Karetnikov [Tue, 27 Nov 2012 20:06:18 +0000 (20:06 +0000)]
distro: Import 'gettext' under a different name.

* distro/packages/nano.scm, distro/packages/wget.scm: Import 'gettext'
  from (distro packages gettext) under 'guix:gettext'.

5 years agodistro: linux-libre-headers: Move to (distro packages linux).
Ludovic Courtès [Tue, 27 Nov 2012 21:04:57 +0000 (22:04 +0100)]
distro: linux-libre-headers: Move to (distro packages linux).

* distro/packages/base.scm (linux-libre-headers): Move to...
* distro/packages/linux.scm (linux-libre-headers): ... here.

5 years agodistro: Add Linux-PAM.
Ludovic Courtès [Tue, 27 Nov 2012 20:56:37 +0000 (21:56 +0100)]
distro: Add Linux-PAM.

* distro/packages/linux.scm: New file.
* Makefile.am (MODULES): Add it.

5 years agodownload: Add kernel.org mirrors.
Ludovic Courtès [Tue, 27 Nov 2012 20:55:53 +0000 (21:55 +0100)]
download: Add kernel.org mirrors.

* guix/download.scm (%mirrors): Add `kernel.org' mirrors.

5 years agodownload: Keep only one slash when concatenating URIs.
Ludovic Courtès [Tue, 27 Nov 2012 20:33:54 +0000 (21:33 +0100)]
download: Keep only one slash when concatenating URIs.

* guix/build/download.scm (url-fetch)[uri-vicinity]: New procedure.
  [maybe-expand-mirrors]: Use it.

5 years agodistro: flex: Fix module name.
Ludovic Courtès [Tue, 27 Nov 2012 20:33:00 +0000 (21:33 +0100)]
distro: flex: Fix module name.

* distro/packages/flex.scm: Change the module name to (distro packages
  flex).

5 years agodistro: Add GNU Cpio.
Nikita Karetnikov [Sun, 25 Nov 2012 21:45:42 +0000 (22:45 +0100)]
distro: Add GNU Cpio.

* distro/packages/cpio.scm,
  distro/packages/patches/cpio-gets-undeclared.patch: New files.
* Makefile.am (MODULES): Add 'cpio.scm'.
  (dist_patch_DATA): Add 'cpio-gets-undeclared.patch'.

5 years agodistro: Add GNU Time.
Nikita Karetnikov [Sun, 25 Nov 2012 17:41:21 +0000 (17:41 +0000)]
distro: Add GNU Time.

* distro/packages/time.scm: New file.
* Makefile.am (MODULES): Add it.

5 years agodistro: Add GNU Which.
Nikita Karetnikov [Sun, 25 Nov 2012 16:19:39 +0000 (16:19 +0000)]
distro: Add GNU Which.

* distro/packages/which.scm: New file.
* Makefile.am (MODULES): Add it.

5 years agobuild: Have `hydra.scm' return one job per package.
Ludovic Courtès [Sun, 25 Nov 2012 16:12:46 +0000 (17:12 +0100)]
build: Have `hydra.scm' return one job per package.

* hydra.scm (hydra-jobs): Return one job for each non-bootstrap package.

5 years agopackages: Add missing export.
Ludovic Courtès [Sun, 25 Nov 2012 15:55:35 +0000 (16:55 +0100)]
packages: Add missing export.

* guix/packages.scm: Export `package-home-page'.

5 years agodistro: Search bootstrap binaries and patches in %LOAD-PATH.
Ludovic Courtès [Sun, 25 Nov 2012 15:28:52 +0000 (16:28 +0100)]
distro: Search bootstrap binaries and patches in %LOAD-PATH.

* Makefile.am (patchdir, bootstrapdir): Change to be sub-directories of
  $(guilemoduledir).
  (.scm.go): Remove `DISTRO_' environment variables.
* distro.scm (not-colon): Remove.
  (%patch-path, %bootstrap-binaries-path): Default to sub-directories of
  the entries in %LOAD-PATH.
* pre-inst-env.in: Remove definition of `DISTRO_' environment variables.

5 years agodistro: Add GNU Less.
Nikita Karetnikov [Sun, 25 Nov 2012 04:04:13 +0000 (04:04 +0000)]
distro: Add GNU Less.

* distro/packages/less.scm: New file.
* Makefile.am (MODULES): Add it.

5 years agodistro: Add GNU Nano.
Nikita Karetnikov [Sun, 25 Nov 2012 03:14:01 +0000 (03:14 +0000)]
distro: Add GNU Nano.

* distro/packages/nano.scm: New file.
* Makefile.am (MODULES): Add it.

5 years agodoc: Mention the pronunciation of "Guix".
Ludovic Courtès [Sun, 25 Nov 2012 14:30:03 +0000 (15:30 +0100)]
doc: Mention the pronunciation of "Guix".

* README: Mention pronunciation of "Guix".
* doc/guix.texi (Introduction): Likewise.

5 years agodistro: Add GNU Wget.
Nikita Karetnikov [Sun, 25 Nov 2012 14:58:31 +0000 (15:58 +0100)]
distro: Add GNU Wget.

* distro/packages/wget.scm: New file; patch-shebang phase added by
  Ludovic Courtès.
* Makefile.am (MODULES): Add it.

5 years agodistro: Add GNU Ddrescue.
Nikita Karetnikov [Sat, 24 Nov 2012 00:20:46 +0000 (00:20 +0000)]
distro: Add GNU Ddrescue.

* distro/packages/ddrescue.scm: New file.
* Makefile.am (MODULES): Add it.

5 years agodoc: Update `README'.
Ludovic Courtès [Sat, 24 Nov 2012 14:20:05 +0000 (15:20 +0100)]
doc: Update `README'.

* README: Update introductory summary.  Point to Savannah instead of
  Gitorious.  Mention <bug-guix@gnu.org>.
  (Guix & Nix): New section.

5 years agodistro: Add GNU Gettext.
Nikita Karetnikov [Fri, 23 Nov 2012 23:31:26 +0000 (23:31 +0000)]
distro: Add GNU Gettext.

* distro/packages/gettext.scm,
  distro/packages/patches/gettext-gets-undeclared.patch: New files.
* Makefile.am (MODULES): Add 'gettext.scm'.
  (dist_patch_DATA): Add 'gettext-gets-undeclared.patch'.

5 years agobuild: Change bug-report address; add URL.
Ludovic Courtès [Fri, 23 Nov 2012 23:36:36 +0000 (00:36 +0100)]
build: Change bug-report address; add URL.

* configure.ac: Change bug-report address in `AC_INIT'; add URL.

5 years agodistro: Add GNU Shishi.
Nikita Karetnikov [Fri, 23 Nov 2012 22:00:50 +0000 (23:00 +0100)]
distro: Add GNU Shishi.

* distro/packages/shishi.scm,
  distro/packages/patches/shishi-gets-undeclared.patch: New files.
* Makefile.am (MODULES): Add 'shishi.scm'.
  (dist_patch_DATA): Add 'shishi-gets-undeclared.patch'.

5 years agodistro: Move (distro packages libtool) to (distro packages autotools).
Nikita Karetnikov [Thu, 22 Nov 2012 00:50:28 +0000 (00:50 +0000)]
distro: Move (distro packages libtool) to (distro packages autotools).

* distro/packages/autotools.scm (libtool): Add it.
* distro/packages/libtool.scm: Remove it.
* distro/packages/guile.scm (distro packages guile): Adjust accordingly.
* Makefile.am (MODULES): Adjust accordingly.

5 years agodistro: Add GNU Autoconf and GNU Automake.
Nikita Karetnikov [Thu, 22 Nov 2012 00:10:21 +0000 (00:10 +0000)]
distro: Add GNU Autoconf and GNU Automake.

* distro/packages/autotools.scm: New file.
* Makefile.am (MODULES): Add it.

5 years agodistro: Add Flex.
Ludovic Courtès [Thu, 22 Nov 2012 17:22:48 +0000 (18:22 +0100)]
distro: Add Flex.

* distro/packages/flex.scm,
  distro/packages/patches/flex-bison-tests.patch: New files.
* Makefile.am (MODULES): Add `flex.scm'.
  (dist_patch_DATA): Add `flex-bison-tests.patch'.

5 years agodistro: Add GNU Bison.
Ludovic Courtès [Thu, 22 Nov 2012 16:57:37 +0000 (17:57 +0100)]
distro: Add GNU Bison.

* distro/packages/bison.scm: New file.
* Makefile.am (MODULES): Add it.

5 years agodistro: Add GDBM.
Ludovic Courtès [Thu, 22 Nov 2012 16:56:35 +0000 (17:56 +0100)]
distro: Add GDBM.

* distro/packages/gdbm.scm: New file.
* Makefile.am (MODULES): Add it.

5 years agodistro: Add GNU Ed.
Nikita Karetnikov [Wed, 21 Nov 2012 12:24:14 +0000 (12:24 +0000)]
distro: Add GNU Ed.

* distro/packages/ed.scm: New file.
* Makefile.am (MODULES): Add it.

5 years agodoc: Document basic package definitions.
Ludovic Courtès [Wed, 21 Nov 2012 14:56:43 +0000 (15:56 +0100)]
doc: Document basic package definitions.

* doc/guix.texi (Programming Interface): Add introduction.
  (Defining Packages): Populate.

5 years agobuild: Fix `hydra.scm' recipe.
Ludovic Courtès [Tue, 20 Nov 2012 23:57:47 +0000 (00:57 +0100)]
build: Fix `hydra.scm' recipe.

* hydra.scm: Redirect the output port to the error port.
  (package-job): Return a name/thunk pair.
  (hydra-jobs)[system]: Use either the `system' key (a symbol) in
  ARGUMENTS, or (%current-system)'.

5 years agoguix-package: Extract version strings when installing a direct store path.
Ludovic Courtès [Mon, 19 Nov 2012 22:51:08 +0000 (23:51 +0100)]
guix-package: Extract version strings when installing a direct store path.

* guix-package.in (guix-package)[process-actions]: Extract the version
  string from store paths.
* tests/guix-package.sh: Adjust accordingly.

5 years agoguix-build: Use `location->string'.
Ludovic Courtès [Mon, 19 Nov 2012 22:41:17 +0000 (23:41 +0100)]
guix-build: Use `location->string'.

* guix-build.in (derivations-from-package-expressions): Use
  `location->string'.

5 years agoguix-package: Record the correct version string in manifests.
Ludovic Courtès [Mon, 19 Nov 2012 22:21:54 +0000 (23:21 +0100)]
guix-package: Record the correct version string in manifests.

* guix-package.in (guix-package)[find-package]: Return (package-version p),
  not VERSION.

5 years agoguix-package: Add `--list-available'.
Ludovic Courtès [Mon, 19 Nov 2012 22:02:59 +0000 (23:02 +0100)]
guix-package: Add `--list-available'.

* guix-package.in (show-help, %options): Add `--list-available'.
  (guix-package)[process-query]: Add support for `--list-available'.
* doc/guix.texi (Invoking guix-package): Document it.
* tests/guix-package.sh: Add test.

* guix/ui.scm (location->string): New procedure.
* guix/utils.scm: Export <location>.

5 years agodistro: Add `fold-packages'.
Ludovic Courtès [Mon, 19 Nov 2012 21:37:50 +0000 (22:37 +0100)]
distro: Add `fold-packages'.

* distro.scm (fold-packages): New procedure.
  (find-packages-by-name): Use it instead of hand-written traversal;
  remove `package?' checks from `right-package?'.
* tests/packages.scm ("fold-packages"): New test.

5 years agoguix-package: Add `--list-installed'.
Ludovic Courtès [Mon, 19 Nov 2012 21:39:45 +0000 (22:39 +0100)]
guix-package: Add `--list-installed'.

* guix-package.in (show-help, %options): Add `--list-installed'.
  (guix-package): Move main body to...
  [process-actions]: ... here.  New internal procedure.
  [process-query]: New procedure.
* tests/guix-package.sh: Add tests for `--list-installed'.
* doc/guix.texi (Invoking guix-package): Document it.

5 years agoguix-package: Fix typo.
Ludovic Courtès [Mon, 19 Nov 2012 21:19:26 +0000 (22:19 +0100)]
guix-package: Fix typo.

* guix-package.in (guix-package)[find-package]: Don't use `_' as the
  wildcard, to avoid collision with `gettext'.

5 years agodistro: Add GNU Zile.
Ludovic Courtès [Mon, 19 Nov 2012 20:46:31 +0000 (21:46 +0100)]
distro: Add GNU Zile.

* distro/packages/zile.scm: New file.
* Makefile.am (MODULES): Add it.

5 years agodistro: Add GNU help2man.
Ludovic Courtès [Mon, 19 Nov 2012 20:42:11 +0000 (21:42 +0100)]
distro: Add GNU help2man.

* distro/packages/help2man.scm: New file.
* Makefile.am (MODULES): Add it.

5 years agodistro: Add GNU Pies and GNU Inetutils.
Ludovic Courtès [Sun, 18 Nov 2012 17:42:29 +0000 (18:42 +0100)]
distro: Add GNU Pies and GNU Inetutils.

* distro/packages/system.scm: New file.
* Makefile.am (MODULES): Add it.

5 years agobuild: Add `hydra.scm'.
Ludovic Courtès [Sun, 18 Nov 2012 17:35:26 +0000 (18:35 +0100)]
build: Add `hydra.scm'.

* hydra.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.

5 years agodoc: Add `ROADMAP'.
Ludovic Courtès [Sun, 18 Nov 2012 16:46:55 +0000 (17:46 +0100)]
doc: Add `ROADMAP'.

* ROADMAP: New file.
* Makefile.am (EXTRA_DIST): Add it.

5 years agodoc: Add `TODO'.
Ludovic Courtès [Sun, 18 Nov 2012 16:10:47 +0000 (17:10 +0100)]
doc: Add `TODO'.

* TODO: New file.
* Makefile.am (EXTRA_DIST): Add it.

5 years agodoc: Add a "Related software" section to `README'.
Ludovic Courtès [Sun, 18 Nov 2012 14:25:01 +0000 (15:25 +0100)]
doc: Add a "Related software" section to `README'.

* README (Related software): New section.

5 years agoTurn Guix into "GNU Guix".
Ludovic Courtès [Sun, 18 Nov 2012 14:22:00 +0000 (15:22 +0100)]
Turn Guix into "GNU Guix".

* configure.ac: Change package name to "GNU Guix", and bug-report
  address to `gnu-system-discuss@gnu.org'.
* doc/guix.texi: Replace "Guix" by "GNU Guix" in some places.
  (Top, Introduction): Mention "for the GNU system".
* HACKING, README: Use "GNU Guix" instead of "Guix" in some places.

5 years agodistro: Rebuild bootstrap Binutils and GCC.
Ludovic Courtès [Thu, 15 Nov 2012 23:26:34 +0000 (00:26 +0100)]
distro: Rebuild bootstrap Binutils and GCC.

These new binaries are built with the `--with-lib-path' and
`--with-local-prefix' flags, respectively, as introduced in commit
01d4540.

* distro/packages/bootstrap.scm (%bootstrap-coreutils&co,
  %bootstrap-glibc): Update URL.
  (%bootstrap-binutils, %bootstrap-gcc): Update URL and hashes.
* build-aux/download.scm (file-name->uri): Update URL.

5 years agodistro: Configure ld and GCC to not look under /usr & co.
Ludovic Courtès [Thu, 15 Nov 2012 23:23:06 +0000 (00:23 +0100)]
distro: Configure ld and GCC to not look under /usr & co.

This fixes impurities with non-chroot builds on LFS-style distros.

* distro/packages/base.scm (binutils): Pass `--with-lib-path'.
  (gcc-4.7): Pass `--with-local-prefix'.
* distro/packages/make-bootstrap.scm (%binutils-static): Pass
  `--with-lib-path'.

5 years agoguix-download: Use code from (guix build download).
Ludovic Courtès [Tue, 13 Nov 2012 21:57:36 +0000 (22:57 +0100)]
guix-download: Use code from (guix build download).

* guix-download.in (http-fetch, ftp-fetch): Remove.
  (fetch-and-store): Replace `uri' parameter with `name', for the output
  file name.  Redirect the output of `fetch' to the error port.
  (guix-download): Call `url-fetch' for all URI schemes except `file'.
  Handle PATH equal to #f.
* guix/download.scm: Export `%mirrors'.
* tests/guix-download.sh: Change erroneous URL, because URLs at
  example.com are all valid redirections.

5 years agoguix-download: Add support for file:// URIs.
Ludovic Courtès [Tue, 13 Nov 2012 21:57:50 +0000 (22:57 +0100)]
guix-download: Add support for file:// URIs.

* guix-download.in (fetch-and-store): New procedure.
  (guix-download): Use it to compute PATH.  Call `add-to-store' when
  a `file' URI scheme is used.
* Makefile.am (AM_TESTS_ENVIRONMENT): New variable.
* tests/guix-download.sh: Add test.