Commit Graph

611 Commits

Author SHA1 Message Date
Ludovic Courtès 6005bd0700 build: Make sure the installed 'config.go' is newer than 'config.scm'.
Fixes <http://bugs.gnu.org/19317>.
Reported by rekado <rekado@elephly.net>.

* gnu-system.am (install-data-hook): Rename to...
  (set-bootstrap-executable-permissions): ... this.
* Makefile.am (install-data-hook): New target.
2014-12-09 11:44:21 +01:00
Ludovic Courtès d5d1668630 Add (guix elf).
* guix/elf.scm: New file.  Taken from Guile 'master', commit 3f826e3.
* Makefile.am (MODULES): Add it.
* THANKS: Thank Andy, who wrote this module.
2014-11-28 00:10:28 +01:00
Ludovic Courtès 37627ffa89 lint: Fold 'sync-descriptions' script as 'gnu-description' lint checker.
* build-aux/sync-descriptions.scm: Remove.  Move payload to...
* guix/scripts/lint.scm: ... here.
  (escape-quotes, official-gnu-packages*,
  check-gnu-synopsis+description): New procedures.
  (%checkers): Add 'gnu-descriptions'.
* Makefile.am (EXTRA_DIST): Remove build-aux/sync-descriptions.scm.
  (sync-descriptions): Use 'guix lint'.
2014-11-19 22:52:28 +01:00
Ludovic Courtès 02754a5e52 build: Add guix/tests.scm to the distribution.
* Makefile.am (noinst_DATA): Rename to...
  (dist_noinst_DATA): ... this.
2014-11-17 18:58:38 +01:00
Ludovic Courtès 7047133f07 import: Add GNU importer.
Suggested by Karl Berry <karl@gnu.org>
and Andreas Enge <andreas@enge.fr>.

* guix/import/gnu.scm, guix/scripts/import/gnu.scm: New files.
* Makefile.am (MODULES): Add them.
* guix/scripts/import.scm (importers): Add "gnu".
* guix/gnu-maintenance.scm (gnu-release-archive-types): New procedure.
  (download-tarball): Export.
2014-11-11 15:31:35 +01:00
Ludovic Courtès f81ac34dd9 pull: Use the build procedure provided by the newly-downloaded Guix.
Fixes <http://bugs.gnu.org/18534>.

* guix/scripts/pull.scm (with-environment-variable, with-PATH): New
  macros.
  (temporary-directory, first-directory, interned-then-deleted): New
  procedures.
  (unpack): Rewrite to do the unpacking in the current process rather
  than as a separate derivation.
  (%self-build-file): New variable.
  (build-from-source): New procedure.
  (build-and-install): Use it.
* guix/build/pull.scm (build-guix): Rename 'tarball' argument to
  'source'.  Remove #:tar and #:gzip parameters, as well as 'tar'
  invocation.  Remove 'scandir' invocation.  Wrap body in
  'with-directory-excursion'.
* build-aux/build-self.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2014-11-09 22:33:45 +01:00
Cyril Roelandt dd7c013d4b guix lint: add the --checkers option.
* guix/scripts/lint.scm: add the "--checkers" option.
* doc/guix.texi (Invoking guix lint): Document it.
* tests/guix-lint.sh: New file
* Makefile.am (SCM_TESTS): Add it.
2014-10-16 00:50:27 +02:00
David Thompson 372c4bbcbb scripts: Add 'environment' command.
* guix/scripts/environment.scm: New file.
* Makefile.am (MODULES): Add it.
* doc/guix.texi ("Invoking guix environment"): New node.
2014-10-10 18:14:40 -04:00
Federico Beffa be3425e5a9 gnu: Add the 'glib-or-gtk' build system.
* guix/build-system/glib-or-gtk.scm, guix/build/glib-or-gtk-build-system.scm:
  New files.
* Makefile.am (MODULES): Add them.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2014-10-08 12:01:50 +02:00
Ludovic Courtès fb59e275dd derivations: Add 'graft-derivation'.
* guix/derivations.scm (graft-derivation): New procedure.
* guix/build/graft.scm: New file.
* Makefile.am (MODULES): Add it.
* tests/derivations.scm ("graft-derivation"): New test.
2014-10-08 12:01:49 +02:00
Alex Kost 8505493266 build: Build pypi modules only if 'guile-json' is available.
* Makefile.am (MODULES): Wrap 'guix/import/pypi.scm' and
  'guix/scripts/import/pypi.scm' in 'if HAVE_GUILE_JSON'.
2014-09-30 09:41:59 +04:00
David Thompson 1b3e968512 import: Add PyPI importer.
* guix/snix.scm: Delete.
* guix/import/snix.scm: New file.
* guix/import/pypi.scm: New file.
* guix/import/utils.scm: New file.
* guix/scripts/import/nix.scm: New file.
* guix/scripts/import/pypi.scm: New file.
* tests/pypi.scm: New file.
* tests/snix.scm: Import (guix import snix) module.
* guix/scripts/import.scm (%default-options, %options): Delete.
  (%standard-import-options, importers): New variables.
  (show-help): List importers.
  (guix-import): Factor out Nix-specific logic.  Delegate to correct importer
  based upon first argument.
* configure.ac (HAVE_GUILE_JSON): New conditional.
* Makefile.am (MODULES): Add new files and remove 'guix/snix.scm'.
  (SCM_TESTS): Add 'tests/pypi.scm' if guile-json is installed.
2014-09-29 19:30:28 -04:00
David Thompson c08f9818f9 build: Add ruby build system.
* guix/build-system/ruby.scm: New file.
* guix/build/ruby-build-system: New file.
* Makefile.am (MODULES): Add new files.
* doc/guix.texi (Build Systems): Document ruby-build-system.
2014-09-28 15:09:24 -04:00
Ludovic Courtès 6fd1a79674 vm: Move store copy handling to (guix build store-copy).
* gnu/build/vm.scm (read-reference-graph, populate-store): Move to...
* guix/build/store-copy.scm: ... here.  New file.
* Makefile.am (MODULES): Add it.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Adjust default
  #:modules values accordingly.
* tests/gexp.scm ("gexp->derivation, store copy"): New test.
2014-09-04 23:24:54 +02:00
Alex Kost 457f60fa06 Add Emacs user interface.
* configure.ac (emacsuidir): New variable.
  (AC_CONFIG_FILES): Add 'emacs/guix-init.el', 'emacs/guix-helper.scm'.
* Makefile.am: Include 'emacs.am'.
* emacs.am: New file.
* doc/emacs.texi: New file.
* doc/guix.texi: Include 'emacs.texi'.
* emacs/guix-backend.el: New file.
* emacs/guix-base.el: New file.
* emacs/guix-helper.scm.in: New file.
* emacs/guix-history.el: New file.
* emacs/guix-info.el: New file.
* emacs/guix-init.el.in: New file.
* emacs/guix-list.el: New file.
* emacs/guix-main.scm: New file.
* emacs/guix-utils.el: New file.
* emacs/guix.el: New file.
2014-09-03 23:50:35 +04:00
Ludovic Courtès 548f7a8fa2 Move operating system helpers from (guix build …) to (gnu build …).
* guix/build/activation.scm, guix/build/install.scm,
  guix/build/linux-initrd.scm, guix/build/vm.scm: Move to...
* gnu/build: ... here.
* Makefile.am (MODULES): Remove the above guix/build/ files.
* gnu-system.am (GNU_SYSTEM_MODULES): Add the above gnu/build/ files
  here.
* gnu/services/base.scm, gnu/services/dmd.scm, gnu/system.scm,
  gnu/system/linux-initrd.scm, gnu/system/vm.scm,
  guix/scripts/system.scm: Adjust to the new module names.
2014-09-03 15:43:07 +02:00
Cyril Roelandt b4f5e0e87c scripts: add guix lint
* guix/scripts/lint.scm: New file. Defines a 'lint' tool for Guix packages.
* tests/lint.scm: New file.
* Makefile.am (MODULES, SCM_TESTS): Add them.
* po/guix/Makevars: Update appropriately.
* po/guix/POTFILES.in: Update appropriately.
* doc/guix.texi: Document "guix lint".
2014-09-03 02:07:07 +02:00
Ludovic Courtès c1bc358f29 Factorize test suite support in (guix tests).
* guix/tests.scm: New file.
* Makefile.am (noinst_DATA): New variable.
  (GOBJECTS): Add guix/tests.go.
* tests/builders.scm (%store): Use 'open-connection-for-tests'
  from (guix tests).
* tests/derivations.scm: Likewise.
* tests/monads.scm: Likewise.
* tests/packages.scm: Likewise.
* tests/profiles.scm: Likewise.
* tests/union.scm: Likewise.
* tests/gexp.scm: Likewise.
  (guile-for-build): Remove.  Use (%guile-for-build) instead.
* tests/nar.scm (make-random-bytevector, %seed, random-text): Remove.
  (populate-file): Change 'make-random-bytevector' to 'random-bytevector'.
  Use (guix tests).
* tests/store.scm (%seed, random-text): Remove.
  Use (guix tests).
2014-08-23 22:33:04 +02:00
Ludovic Courtès b9b8607824 Add (guix monad-repl).
* guix/monad-repl.scm: New file.
* guix.scm: Add it.
* Makefile.am (MODULES): Add it.
* doc/guix.texi (The Store Monad): Document it.
2014-08-15 16:26:28 +02:00
Mark H Weaver 75f3b1a12d Add (guix build emacs-utils).
* guix/build/emacs-utils.scm: New file.
* Makefile.am (MODULES): Add it.
* .dir-locals.el: Add indentation rules.
2014-08-14 23:53:04 -04:00
Ludovic Courtès ebc32b3110 build: 'make clean' doesn't delete os-config.tmpl.
Fixes <http://bugs.gnu.org/18243>.
Reported by Andreas Enge and Mark H. Weaver.

* Makefile.am (EXAMPLES): New variable.
  (nobase_dist_guilemodule_DATA): Add it.
* gnu-system.am (GNU_SYSTEM_MODULES): Remove gnu/system/os-config.tmpl.
2014-08-11 17:49:45 +02:00
Ludovic Courtès 931c132a58 doc: Make sure out-of-source-tree builds find os-config.tmpl.
* Makefile.am (BUILT_SOURCES): New variable.
* daemon.am (BUILT_SOURCES): Use +=.
* doc.am (BUILT_SOURCES, MAINTAINERCLEANFILES, EXTRA_DIST): Add
  doc/os-config.texi.
  (doc/os-config.texi): New target.
* doc/guix.texi (System Installation): Include os-config.texi.
2014-07-24 23:50:55 +02:00
Ludovic Courtès a94546ecc4 gnu: linux-libre: Add i686 and x86_64 full-blown configs.
Thanks to Jason Self <jself@gnu.org> for the kernel configs.

* gnu/packages/linux.scm (kernel-config): New procedure.
  (linux-libre)[build-phase]: Copy it to .config.  Reduce the list of
  things appended to .config.
  [native-inputs]: Add "kconfig" input.
* gnu/packages/linux-libre-i686.conf,
  gnu/packages/linux-libre-x86_64.conf: New files, from
  <http://jxself.org/x86-32.txt> and <http://jxself.org/x86-64.txt>.
* Makefile.am (KCONFIGS): New variable.
  (nobase_dist_guilemodule_DATA): Add it.
2014-07-10 00:35:27 +02:00
Ludovic Courtès c1202fb1f9 guix {system,offload}: Improve reporting of syntax errors.
* guix/scripts/system.scm (read-operating-system) <catch handler>: Add
  case for 'syntax-error'.  Correct message for default case.
* guix/scripts/offload.scm (build-machines) <catch handler>: Add case
  for 'syntax-error'.
* tests/guix-system.sh: New file.
* Makefile.am (SH_TESTS): Add it.
2014-06-27 00:12:40 +02:00
Ludovic Courtès 81f61c17c5 build: Add 'assert-final-inputs-self-contained' rule.
* build-aux/check-final-inputs-self-contained.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
  (assert-final-inputs-self-contained): New target.
  (distcheck-hook): Depend on it.
2014-06-18 15:03:13 +02:00
Ludovic Courtès ee76417972 Separate package description translations from string translations.
* po/packages/LINGUAS, po/packages/Makevars, po/packages/POTFILES.in:
  New files.
* po/guix/Makevars (DOMAIN): Change to "guix".
  (XGETTEXT_OPTIONS): Remove "--keyword=synopsis --keyword=description".
* po/guix/POTFILES.in: Remove gnu/packages/*.scm.
* configure.ac: Change to gettext 0.18.3.  Produce
  po/packages/Makefile.in.
* Makefile.am (SUBDIRS): Add po/packages.
* guix/ui.scm (%package-text-domain): New variable.
  (P_): New procedure.
  (package->recutils): Use 'P_' instead of '_'.
* guix/scripts/package.scm (find-packages-by-description): Use 'P_'
  instead of 'gettext'.
2014-06-13 17:30:40 +02:00
Ludovic Courtès ef1a9bb7d6 Move gettext files to 'po/guix'.
* po: Rename to...
* po/guix: ... this.
* po/guix/Makevars (subdir, top_builddir): Adjust accordingly.
* configure.ac: Change 'po/Makefile.in' to 'po/guix/Makefile.in'.
* Makefile.am (SUBDIRS): Change 'po' to 'po/guix'.
2014-06-13 16:31:18 +02:00
Ludovic Courtès 14af289ed9 build: Add --with-libgcrypt-libdir=DIR to support Debian's multi-arch layout.
* configure.ac: Remove 'LIBGCRYPT_PREFIX' and use 'LIBGCRYPT_LIBDIR'
  instead.  Add --with-libgcrypt-libdir=DIR option.
* Makefile.am (AM_DISTCHECK_CONFIGURE_FLAGS): Pass
  '--with-libgcrypt-libdir'.
* config-daemon.ac: Honor $LIBGCRYPT_LIBDIR when computing
  LIBGCRYPT_LIBS.
2014-05-17 16:23:01 +02:00
Ludovic Courtès 5ce3defed1 system: Add (guix build install) module.
* guix/build/vm.scm (install-grub, evaluate-populate-directive,
  reset-timestamps, register-closure): Move to...
* guix/build/install.scm: ... here.  New file.
* Makefile.am (MODULES): Add it.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Add (guix
  build install) to #:modules.
2014-05-15 23:37:46 +02:00
Ludovic Courtès 29fa45f45d Add (guix build syscalls).
* guix/build/syscalls.scm, tests/syscalls.scm: New files.
* Makefile.am (MODULES): Add guix/build/syscalls.scm.
  (SCM_TESTS): Add tests/syscalls.scm.
* guix/utils.scm (%libc-errno-pointer, errno): Remove; take from (guix
  build syscalls).
2014-05-10 22:55:34 +02:00
Ludovic Courtès 538cc2e016 Remove now unneeded (guix build gnome) module.
* guix/build/gnome.scm: Remove.
* Makefile.am (MODULES): Update accordingly.
2014-05-07 14:32:36 +02:00
Ludovic Courtès 4dfe6c58ee system: Add (guix build activation).
* gnu/services/dmd.scm (dmd-configuration-file): Remove 'etc'
  parameter.  Move /etc activation code to...
* guix/build/activation.scm: ... here; new file.
* gnu/system.scm (operating-system-boot-script): Augment script: add
  (guix build activation) to the load path; call 'activate-etc'.
* Makefile.am (MODULES): Add guix/build/activation.scm.
2014-04-30 23:16:22 +02:00
Ludovic Courtès 21b679f694 Add (guix gexp).
* guix/gexp.scm: New file.
* tests/gexp.scm: New file.
* Makefile.am (MODULES): Add guix/gexp.scm.
  (SCM_TESTS): Add tests/gexp.scm.
* doc/guix.texi (Derivations): Add #:inputs in 'derivation' example.
  Mark 'build-expression->derivation' as deprecated, refer to
  "G-Expressions".  Remove paragraph about code strata.
  (G-Expressions): New node.
2014-04-28 23:24:17 +02:00
Ludovic Courtès e1a87b904a vm: Add (guix build vm) module.
* guix/build/vm.scm: New file.
* Makefile.am (MODULES): Add it.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Use it.
2014-04-11 19:08:24 +02:00
Ludovic Courtès 6c1108330d build: Add 'hydra.gnu.org.pub' to the distribution.
* Makefile.am (pkgdata_DATA): Rename to...
  (dist_pkgdata_DATA): ... this.
2014-04-07 18:16:58 +02:00
Ludovic Courtès 731b996255 hydra: Add 'qemu-image' job.
* build-aux/hydra/demo-os.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
* build-aux/hydra/gnu-system.scm (qemu-jobs): New procedure.
  (hydra-jobs): Use it.
* guix/scripts/system.scm (read-operating-system): Export.
2014-04-05 22:40:16 +02:00
Ludovic Courtès bf59c06d36
Add hydra.gnu.org's narinfo signing public key.
* hydra.gnu.org.pub: New file.
* Makefile.am (pkgdata_DATA): New variable.
2014-03-30 23:36:00 +02:00
Nikita Karetnikov e9c6c58418 substitute-binary: Support the Signature field of a narinfo file.
* guix/scripts/substitute-binary.scm (<narinfo>): Add the 'signature'
  and 'contents' fields.
  (narinfo-signature->canonical-sexp): New function.
  (narinfo-maker): Add the 'signature' argument and use it.
  (assert-valid-signature): New function.
  (read-narinfo): Support the Signature field.
  (write-narinfo): Use 'narinfo-contents'.
  (%allow-unauthenticated-substitutes?): New variable.
* guix/base64.scm, tests/base64.scm, tests/substitute-binary.scm: New files.
* Makefile.am (SCM_TESTS): Add tests/base64.scm and
  tests/substitute-binary.scm.
  (MODULES): Add guix/base64.scm.
* test-env.in: Set 'GUIX_ALLOW_UNAUTHENTICATED_SUBSTITUTES'.
2014-03-30 12:02:10 +02:00
Sree Harsha Totakura b3acf3656e Add (guix svn-download).
* guix/svn-download.scm, guix/build/svn.scm: New files.
* Makefile.am (MODULES): Add them.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2014-03-27 00:21:44 +01:00
Ludovic Courtès 834129e0e2 Change the default store file name to /gnu/store.
* configure.ac: Change the default 'storedir' to /gnu/store.  Print
  $storedir.
* doc/guix.texi: Replace "/nix/store" by "/gnu/store", except where
  describing Nix compatibility.
* Makefile.am: Likewise.
2014-03-09 22:09:58 +01:00
Ludovic Courtès 9b5b5c1740 Add (guix git-download).
* guix/git-download.scm, guix/build/git.scm: New files.
* Makefile.am (MODULES): Add them.
* guix/packages.scm (<origin>): Fix comment for 'method' field.
2014-02-21 23:49:53 +01:00
Ludovic Courtès 523e48969b Add 'guix system'.
* guix/scripts/system.scm: New file.
* Makefile.am (MODULES): Add it.
* po/POTFILES.in: Likewise.
* doc/guix.texi (Using the Configuration System): Link to "Invoking guix
  system".
  (Invoking guix system): New node.
2014-02-18 23:47:49 +01:00
Ludovic Courtès 49e6291a7a Add 'guix offload' as a daemon build hook.
* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_NO_BUILD_HOOK): New macro.
  (options): Add '--no-build-hook'.
  (parse_opt): Handle it.
  (main)[HAVE_DAEMON_OFFLOAD_HOOK]: Set 'useBuildHook' by default.
  Set $NIX_BUILD_HOOK to our offload hook unless otherwise specified.
  [!HAVE_DAEMON_OFFLOAD_HOOK]: Clear 'useBuildHook'.
* pre-inst-env.in: Set and export NIX_BUILD_HOOK.
* nix/scripts/offload.in, guix/scripts/offload.scm: New files.
* guix/ui.scm (show-guix-help)[internal?]: Add "offload".
* config-daemon.ac: Call 'GUIX_CHECK_UNBUFFERED_CBIP'.
  Instantiate 'nix/scripts/offload'.  Set 'BUILD_DAEMON_OFFLOAD'
  conditional, and optionally define 'HAVE_DEAMON_OFFLOAD_HOOK' cpp
  macro.
* daemon.am (nodist_pkglibexec_SCRIPTS)[BUILD_DAEMON_OFFLOAD]: Add it.
* Makefile.am (MODULES)[BUILD_DAEMON_OFFLOAD]: Add
  'guix/scripts/offload.scm'.
  (EXTRA_DIST)[!BUILD_DAEMON_OFFLOAD]: Likewise.
* m4/guix.m4 (GUIX_CHECK_UNBUFFERED_CBIP): New macro.
* doc/guix.texi (Setting Up the Daemon): Move most of the body to...
  (Build Environment Setup): ... this.  New subsection.
  (Daemon Offload Setup): New subsection.
2014-01-24 00:01:50 +01:00
Ludovic Courtès 8b420f74e4 Add (guix pki).
* guix/pki.scm, tests/pki.scm: New files.
* Makefile.am (MODULES): Add 'guix/pki.scm'.
  (SCM_TESTS): Add 'tests/pki.scm'.
2013-12-29 15:57:24 +01:00
Ludovic Courtès 760c60d684 Add 'guix archive'.
* guix/scripts/archive.scm, tests/guix-archive.sh: New files.
* Makefile.am (MODULES): Add 'archive.scm'.
  (SH_TESTS): Add 'guix-archive.sh'.
* doc/guix.texi (Invoking guix archive): New section.
* guix/scripts/build.scm: Export 'derivation-from-expression'.
* guix/scripts/package.scm: Export 'specification->package+output'.
2013-12-22 01:08:21 +01:00
Ludovic Courtès 0820098d1c authenticate: Add test.
* tests/guix-authenticate.sh: New file.
* Makefile.am (SH_TESTS): Add it.
2013-12-21 21:47:17 +01:00
Ludovic Courtès 526382ff92 daemon: Implement signed archive import/export.
* guix/scripts/authenticate.scm, nix/scripts/guix-authenticate.in,
  tests/signing-key.pub, tests/signing-key.sec: New files.
* po/POTFILES.in: Add 'guix/scripts/authenticate.scm'.
* guix/store.scm (dump-port): New procedure.
  (process-stderr): Add 'user-port' optional parameter.  Handle
  the %STDERR-WRITE and %STDERR-READ cases as expected.
  (import-paths, export-path, export-paths): New procedures.
* tests/store.scm ("export/import several paths", "import corrupt
  path"): New tests.
* Makefile.am (MODULES): Add 'guix/scripts/authenticate.scm'.
  (EXTRA_DIST): Add 'tests/signing-key.{pub,sec}'.
* daemon.am (libstore_a_CPPFLAGS)[-DNIX_CONF_DIR]: Change 'NIX_CONF_DIR'
  to .../guix.  Change 'OPENSSL_PATH' to 'guix-authenticate'.
* config-daemon.ac: Instantiate 'nix/scripts/guix-authenticate'.
* nix/nix-daemon/guix-daemon.cc (main): Augment $PATH to include
  'settings.nixLibexecDir'.
* test-env.in: Export 'NIX_CONF_DIR' and 'NIX_LIBEXEC_DIR'.  Populate
  $NIX_CONF_DIR.
2013-12-20 17:17:42 +01:00
Ludovic Courtès 3476ded934 Add (guix pk-crypto).
* guix/pk-crypto.scm, tests/pk-crypto.scm: New files.
* Makefile.am (MODULES, SCM_TESTS): Add them.
2013-12-20 00:36:26 +01:00
Ludovic Courtès 3dbeecd2ff pull: Move build code to (guix build pull).
* guix/build/pull.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/scripts/pull.scm (unpack): Use it.
2013-12-16 23:26:48 +01:00
Cyril Roelandt af949e8ee7 gnu: gtk+: enable introspection.
* gnu/packages/gtk.scm (atk, gdk-pixbuf, gtk+, pango): enable introspection
* guix/build/gnome.scm: New file.
2013-12-15 23:39:43 +01:00
Ludovic Courtès de1355f186 build: Work around build problem on systems that lack (gnutls).
Reported at <https://lists.gnu.org/archive/html/guix-devel/2013-12/msg00002.html>.

* Makefile.am (MODULES): Shuffle modules to work around build failure
  on systems that lack the (gnutls) module.
2013-12-05 22:50:38 +01:00
Ludovic Courtès a20787706c guix package: Allow removal of a specific package output.
Fixes <http://bugs.gnu.org/15756>.

* guix/profiles.scm (<manifest-pattern>): New record type.
  (remove-manifest-entry): Remove.
  (entry-predicate, manifest-matching-entries): New procedures.
  (manifest-remove): Accept a list of <manifest-pattern>.
  (manifest-installed?): Replace 'name' parameter by 'pattern', a
  <manifest-pattern>.
* guix/scripts/package.scm (options->removable): Return a list of
  <manifest-pattern>.
  (guix-package)[process-action]: Use 'manifest-matching-entries' to
  compute the list of packages to remove.
* tests/profiles.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
2013-11-01 23:21:01 +01:00
Ludovic Courtès cc4ecc2d88 Add (guix profiles).
* guix/scripts/package.scm (show-what-to-remove/install): New procedure,
  moved from...
  (guix-package): ... here.
  (<manifest>, make-manifest, <manifest-entry>,
  profile-manifest, manifest->sexp, sexp->manifest, read-manifest,
  write-manifest, remove-manifest-entry, manifest-remove,
  manifest-installed?, manifest=?, profile-regexp, generation-numbers,
  previous-generation-number, profile-derivation, generation-number,
  generation-file-name, generation-time, lower-input): Move to...
* guix/profiles.scm: ... here.  New file.
* Makefile.am (MODULES): Add it.
2013-11-01 23:21:00 +01:00
Ludovic Courtès 70a9c72028 build: Add 'clean-go' target.
* Makefile.am (clean-go): New phony target.
2013-10-15 23:25:08 +02:00
Ludovic Courtès 668d48a684 build: 'sync-descriptions' now compares GNU package descriptions.
* build-aux/sync-synopses.scm: Rename to...
* build-aux/sync-descriptions.scm: ... this.  Compare the value of
  'gnu-package-doc-description' and 'package-description' and report any
  mismatch.
* Makefile.am (EXTRA_DIST): Adjust accordingly.
  (sync-synopses): Rename to...
  (sync-descriptions): ... this.
2013-10-09 16:13:02 +02:00
Ludovic Courtès b860f38244 Add (guix monads).
* guix/monads.scm: New file.
* tests/monads.scm: New file.
* Makefile.am (MODULES): Add guix/monads.scm.
  (SCM_TESTS): Add tests/monads.scm.
* doc/guix.texi (The Store Monad): New node.
  (The Store): Reference it.
2013-10-03 23:12:20 +02:00
Ludovic Courtès a7a4e6a4f7 Add 'guix-register'.
* nix/guix-register/guix-register.cc, tests/guix-register.sh: New
  files.
* Makefile.am (SH_TESTS)[BUILD_DAEMON]: Add tests/guix-register.sh.
* daemon.am (sbin_PROGRAMS, guix_register_SOURCES,
  guix_register_CPPFLAGS, guix_register_LDADD): New variables.
* test-env.in: Export 'storedir', 'prefix', 'datarootdir', 'datadir',
  and 'localstatedir'.
2013-09-23 00:33:50 +02:00
Ludovic Courtès a9424c0887 build: Build docs from the top-level Makefile.
This undoes commit 575ed8d ("doc: Create own Makefile.am in subdirectory."),
and fixes a bug whereby "make pdf" or "make ps" wouldn't do anything.

* doc/Makefile.am: Remove.
* doc.am: New file.  Use `-local' rules to build the image.
* Makefile.am: Include it.
* configure.ac: Use `-Woverride' to avoid undesired overridding of
  Automake rules.
2013-08-29 21:58:52 +02:00
Ludovic Courtès 88840f0246 gnu: linux-initrd: Add (guix build linux-initrd) and use it.
* gnu/packages/linux-initrd.scm (qemu-initrd): Add #:modules argument.
  Factorize and move some of the code to...
* guix/build/linux-initrd.scm: ... here.  New file.
* Makefile.am (MODULES): Add it.
2013-08-29 00:05:03 +02:00
Andreas Enge 575ed8d5b3 doc: Create own Makefile.am in subdirectory.
* doc/Makefile.am: New file.
* Makefile.am: Reference subdirectory doc.
2013-08-28 21:44:14 +02:00
Ludovic Courtès 59e6ae6cf1 hydra: Add job to run "make distcheck" on Guix.
* build-aux/hydra/guix.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2013-08-24 17:30:32 +02:00
Ludovic Courtès fe12c3458c build-system/gnu: Add `dist-package'.
* guix/build/gnu-dist.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/build-system/gnu.scm (%default-modules): New variable.
  (gnu-build): Use it.
  (dist-package): New procedure.
2013-08-24 17:30:31 +02:00
Ludovic Courtès 1959fb04dc build: Provide a replacement (srfi srfi-37) when the user's one is broken.
* srfi/srfi-37.scm.in: New file, taken from Guile 2.0.9.
* m4/guix.m4: New macro.
* configure.ac: Use it.  Define Automake conditional `INSTALL_SRFI_37'.
* Makefile.am (nobase_nodist_guilemodule_DATA)[INSTALL_SRFI_37]: Add
  srfi/srfi-37.scm.
  (GOBJECTS)[INSTALL_SRFI_37]: Add srfi/srfi-37.go.
  (srfi/srfi-37.scm)[INSTALL_SRFI_37]: New target.
  (EXTRA_DIST): Add srfi/srfi-37.scm.in.
2013-07-17 11:05:19 +02:00
Ludovic Courtès 56fbf2629f build: Check for the availability of binaries upon "distcheck".
* build-aux/check-available-binaries.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
  (distcheck-hook, assert-binaries-available): New target.
2013-07-15 23:51:28 +02:00
Ludovic Courtès 3b8258c569 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.
2013-07-14 16:44:15 +02:00
Ludovic Courtès b592f7113e Add `build-aux/list-packages.scm'.
* build-aux/list-packages.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2013-07-10 00:27:53 +02:00
Ludovic Courtès c769406010 Merge branch 'core-updates' 2013-07-09 22:17:18 +02:00
Ludovic Courtès 401c53c469 doc: Add a "Boostrapping" section.
* doc/guix.texi (Package Modules): New node, with material formerly
  under "GNU Distribution".
  (Bootstrapping): New node.
* Makefile.am (EXTRA_DIST): Add doc/images/bootstrap-graph.dot and
  doc/images/bootstrap-graph.eps.
  (infoimagedir, dist_infoimage_DATA, DOT_OPTIONS): New variable.
  (.dot.png, .dot.eps, doc/guix.pdf, doc/guix.info, doc/guix.ps): New
  targets.
* doc/images/bootstrap-graph.dot: New file.
2013-07-07 00:29:50 +02:00
Ludovic Courtès 69927e78de hash: Add `open-sha256-port'.
* guix/hash.scm (GCRY_MD_SHA256): New macro.
  (sha256): Use it.
  (open-sha256-md, md-write, md-read, md-close, open-sha256-port,
  port-sha256): New procedures.
* tests/hash.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
2013-07-02 22:38:03 +02:00
Ludovic Courtès 72626a71a9 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).
2013-07-01 23:28:21 +02:00
Ludovic Courtès 56c092ce94 build-system/gnu: Unify with (guix build-system gnu-cross-build).
* guix/build/gnu-build-system.scm (set-paths): Add `native-inputs' and
  `native-search-paths' keyword parameters.  Honor them.
  (configure): Add `target' and `native-inputs' keyword parameters.
  Look for Bash in NATIVE-INPUTS or INPUTS.  Pass `--host' when TARGET
  is true.
  (strip): Add `strip-command' keyword parameter.  Use it.
* guix/build/gnu-cross-build.scm: Remove.
* Makefile.am (MODULES): Adjust accordingly.
* gnu/packages/acl.scm, gnu/packages/attr.scm, gnu/packages/base.scm,
  gnu/packages/bash.scm, gnu/packages/gawk.scm,
  gnu/packages/gettext.scm, gnu/packages/guile.scm,
  gnu/packages/libffi.scm, gnu/packages/libsigsegv.scm,
  gnu/packages/linux.scm, gnu/packages/ncurses.scm,
  gnu/packages/readline.scm, guix/build-system/gnu.scm: Replace
  `%standard-cross-phases' by `%standard-phases'.  Remove references
  to (guix build gnu-cross-build).
2013-06-21 00:25:54 +02:00
Ludovic Courtès f3211ef386 build: Move Hydra recipe to build-aux/hydra.
* hydra.scm: Rename to...
* build-aux/hydra/gnu-system.scm: ... this.
* Makefile.am (EXTRA_DIST): Adjust accordingly.
2013-06-20 23:41:31 +02:00
Ludovic Courtès d516736c58 build: Split Makefile.am into two parts.
* Makefile.am (MODULES): Move gnu/* to gnu-system.am.
  (patchdir, dist_patch_DATA, bootstrapdir,
  bootstrap_x86_64_linuxdir, bootstrap_i686_linuxdir,
  dist_bootstrap_x86_64_linux_DATA, dist_bootstrap_i686_linux_DATA,
  nodist_bootstrap_x86_64_linux_DATA, nodist_bootstrap_i686_linux_DATA,
  install-data-hook, DISTCLEANFILES, DOWNLOAD_FILE,
  gnu/packages/bootstrap/x86_64-linux/guile-2.0.7.tar.xz,
  gnu/packages/bootstrap/i686-linux/guile-2.0.7.tar.xz): Move to...
* gnu-system.am: ... here.  New file.
2013-06-19 23:19:03 +02:00
Ludovic Courtès 7fa37abca0 gnu: Add ImageMagick.
* gnu/packages/imagemagick.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/download.scm (%mirrors): Add `imagemagick' entry.
2013-06-19 19:27:23 +02:00
Cyril Roelandt cf3fe3b071 gnu: Move subversion with the other version control systems.
* gnu/packages/subversion.scm: Remove file.
* gnu/packages/version-control.scm (subversion): New variable.
* Makefile.am (MODULES): remove subversion.scm.
2013-06-17 19:33:53 +02:00
Ludovic Courtès 5686807ee9 build: Remove non-existent git.scm from Makefile.am.
* Makefile.am (MODULES): Remove git.scm.
2013-06-17 01:18:09 +02:00
Ludovic Courtès b1b07d72c7 gnu: Add Graphviz.
* gnu/packages/graphviz.scm: New file.
* Makefile.am (MODULES): Add it.
2013-06-17 01:17:05 +02:00
Ludovic Courtès d517142b8e gnu: Add GD.
* gnu/packages/gd.scm: New file.
* Makefile.am (MODULES): Add it.
2013-06-16 23:57:34 +02:00
Andreas Enge 6131c43d45 gnu: Add cairo.
* gnu/packages/gtk.scm (cairo): New variable.
2013-06-14 21:43:04 +02:00
Ludovic Courtès cbe62e89d0 gnu: Add GNU gcal.
* gnu/packages/gcal.scm: New file.
* Makefile.am (MODULES): Add it.
2013-06-12 00:39:00 +02:00
Ludovic Courtès 7bc5cc2b96 gnu: glib: Update to 2.37.1.
* gnu/packages/glib.scm (glib): Update to 2.37.1.  Add Bash and tzdata
  as inputs.  Remove `glib-tests-timezone.patch'.  Augment `pre-build'
  phase to set `TZDIR', `XDG_CACHE_HOME', and to modify makefiles to
  honor $(TESTS_ENVIRONMENT).
* gnu/packages/patches/glib-tests-desktop.patch,
  gnu/packages/patches/glib-tests-homedir.patch: Update.
* gnu/packages/patches/glib-tests-timezone.patch: Remove.
* Makefile.am (dist_patch_DATA): Update accordingly.
2013-06-08 18:41:44 +02:00
Ludovic Courtès 7f4e4b77ee gnu: Add WordNet.
* gnu/packages/wordnet.scm: New file.
* Makefile.am (MODULES): Add it.
2013-06-04 16:51:06 +02:00
Nikita Karetnikov 94e4ddd508 gnu: Add Grue Hunter.
* gnu/packages/grue-hunter.scm: New file.
* Makefile.am (MODULES): Add it.
2013-06-03 11:55:43 +00:00
Ludovic Courtès 1890a149cc gnu: Add XLockMore.
* gnu/packages/xlockmore.scm: New file.
* Makefile.am (MODULES): Add it.
2013-06-01 00:14:13 +02:00
Ludovic Courtès 264218a47e build-system/gnu: Implement cross build.
* guix/build-system/gnu.scm (inputs-search-paths): New procedure.
  (standard-search-paths): Use it.
  (expand-inputs): New procedure.
  (standard-inputs): Use it.
  (standard-cross-packages, standard-cross-inputs,
  standard-cross-search-paths, gnu-cross-build): New procedures.
  (gnu-build-system): Set `cross-build' field to `gnu-cross-build'.
* gnu/packages/cross-base.scm: Export `cross-gcc', `cross-binutils', and
  `cross-libc'.
* guix/build/gnu-cross-build.scm: New file.
* Makefile.am (MODULES): Add it.
2013-05-24 22:44:15 +02:00
Ludovic Courtès 3ec7ad8e0f gnu: Add UnRTF.
* gnu/packages/unrtf.scm: New file.
* Makefile.am (MODULES): Add it.
2013-05-24 00:03:57 +02:00
Ludovic Courtès bb3fe7fcfe gnu: Add GNU Plotutils.
* gnu/packages/plotutils.scm: New file.
* Makefile.am (MODULES): Add it.
2013-05-22 00:33:14 +02:00
Ludovic Courtès a463ffd9e8 build: Make sure the distribution doesn't embed store file names.
* Makefile.am (assert-no-store-file-names): New target.
  (dist-hook): Depend on it.
2013-05-12 16:35:18 +02:00
Ludovic Courtès e793178adb build: Generate a ChangeLog file upon "make dist".
* Makefile.am (sync-synopses): New rule, formerly `dist-hook.
  (gen-ChangeLog): New rule.
  (dist-hook): Depend on these two targets.
2013-05-12 16:35:17 +02:00
Ludovic Courtès c0cd1b3ea7 Move record utilities to (guix records).
* guix/utils.scm (define-record-type*): Move to...
* guix/records.scm: ... here.  New file.
* guix/build-system.scm, guix/packages.scm: Use it.
* guix/gnu-maintenance.scm: Likewise.
  (official-gnu-packages)[alist->record]: Remove.
* guix/scripts/substitute-binary.scm: Likewise.
  (alist->record, object->fields): Remove.
* tests/utils.scm ("define-record-type*", "define-record-type* with
  letrec* behavior", "define-record-type* & inherit",
  "define-record-type* & inherit & letrec* behavior",
  "define-record-type* & thunked", "define-record-type* & thunked &
  default", "define-record-type* & thunked & inherited"): Move to...
* tests/records.scm: ... here.  New file.
2013-05-12 15:46:16 +02:00
Ludovic Courtès 1b1c335f5e gnu: Add GNU RCS.
* gnu/packages/bazaar.scm: Rename to...
* gnu/packages/version-control.scm: ... this.
  (rcs): New variable.
* Makefile.am (MODULES): Adjust accordingly.
2013-05-11 22:49:39 +02:00
Ludovic Courtès 9bff16b3f2 build: Really clean .log files from SRFI-64.
* Makefile.am (CLEANFILES): Really catch .log files from SRFI-64.
2013-05-11 22:42:38 +02:00
Ludovic Courtès 3a33730a86 build: Run `tests/guix-gc.sh' last to avoid test failures.
* Makefile.am (tests/guix-gc.log): New target.  This should fix failures
  that occurred with "make check -j" the first time.
2013-05-11 22:37:33 +02:00
Ludovic Courtès f7ce90e7b9 gnu: Add Scheme48.
* gnu/packages/scheme.scm (scheme48): New variable.
* gnu/packages/patches/scheme48-tests.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2013-05-11 22:13:59 +02:00
Ludovic Courtès ccbce84809 tests: Add `guix hash' test.
* guix/scripts/hash.scm (guix-hash)[eof->null]: New procedure.
  Use it to convert the EOF object to the empty bytevector.
* tests/guix-hash.sh: New file.
* Makefile.am (SH_TESTS): Add it.
2013-05-11 15:09:56 +02:00
Nikita Karetnikov dcee3fc5a9 gnu: Add GNU Bazaar.
* gnu/packages/bazaar.scm: New file.
* Makefile.am (MODULES): Add it.
2013-05-08 22:46:21 +00:00
Nikita Karetnikov 40506d5d92 Add 'python-build-system'.
* guix/build-system/python.scm, guix/build/python-build-system.scm: New files.
* Makefile.am (MODULES): Add them.
2013-05-08 22:46:12 +00:00
Ludovic Courtès 3309e3a103 Add (guix build rpath).
* guix/build/rpath.scm: New file.
* Makefile.am (MODULES): Add it.
* gnu/packages/python.scm (python): Use it; remove local copy of
  the *rpath* procedures.
* gnu/packages/samba.scm (samba): Likewise.
2013-05-08 23:45:02 +02:00
Andreas Enge e3c5f2934a gnu: Add cryptsetup.
* gnu/packages/cryptsetup.scm: New file.
* Makefile.am (MODULES): Add it.
2013-05-08 16:36:10 +02:00
Andreas Enge 88226a504f gnu: Add lvm2.
* gnu/packages/lvm.scm: New file.
* Makefile.am (MODULES): Add it.
2013-05-08 16:25:22 +02:00
Nikita Karetnikov a6b4d213db gnu: Add Hugs.
* gnu/packages/hugs.scm: New file.
* Makefile.am (MODULES): Add it.
2013-05-07 20:42:10 +00:00
Ludovic Courtès 39b33961e9 gnu: Add GNU FreeIPMI.
* gnu/packages/freeipmi.scm: New file.
* Makefile.am (MODULES): Add it.
2013-05-07 00:12:18 +02:00
Ludovic Courtès 6d267f0a5b gnu: gv: Move to a separate file.
* gnu/packages/ghostscript.scm (ghostscript): Remove libxext and libxt
  as inputs.
  (gv): Move to...
* gnu/packages/gv.scm (gv): ... here.  New file.
  (ghostscript/x): Variant of GHOSTSCRIPT with libxt and libxext as
  inputs.
2013-05-06 23:50:30 +02:00
Andreas Enge 3a08a41188 gnu: Add atk.
* gnu/packages/gtk.scm: New module.
* Makefile.am (MODULES): Add it.
2013-05-05 00:09:37 +02:00
Ludovic Courtès 0734a9a813 Merge branch 'core-updates' 2013-04-30 17:06:00 +02:00
Ludovic Courtès dab5d51be7 build: Add silent-rules machinery for `guild compile'.
* Makefile.am (AM_V_GUILEC, AM_V_GUILEC_, AM_V_GUILEC_0): New
  variables.
  (.scm.go): Use $(AM_V_GUILEC).
2013-04-29 22:00:24 +02:00
Ludovic Courtès 30dd831083 build: Replace *.log in `CLEANFILES' by the exact list of files.
* Makefile.am (SCM_TESTS, SH_TESTS): New variables.
  (TESTS): Use them.
  (CLEANFILES): Replace *.log by $(SCM_TESTS:%.scm=%.log).
2013-04-29 21:52:21 +02:00
Ludovic Courtès a9db7d10b6 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
2013-04-26 16:43:08 +02:00
Ludovic Courtès 1c9e7d65d4 web: Factorize `http-get' hackery.
This should fix `substitute-binary --query' on Guile 2.0.5.

* guix/web.scm: New file.
* Makefile.am (MODULES): Add it.
* po/POTFILES.in: Add it.
* guix/gnu-maintenance.scm (http-fetch): Remove.
  (%package-list-url): Turn into a URI.
  (official-gnu-packages): Add #:text? #t to `http-fetch' call.
* guix/scripts/substitute-binary.scm (fetch): Remove `http' case, and
  use `http-fetch' instead.
2013-04-25 22:14:51 +02:00
Ludovic Courtès 0fdd3bea58 Add `guix refresh' and related auto-update tools.
* guix/gnu-maintenance.scm (ftp-server/directory)[quirks]: Add glib.
  (package-update-path, download-tarball, package-update,
  update-package-source): New procedures.
* guix/gnupg.scm, guix/scripts/refresh.scm: New files.
* Makefile.am (MODULES): Add them.
* guix/utils.scm (file-extension): New procedure.
2013-04-25 00:13:56 +02:00
Nikita Karetnikov 6c365eca6d Add 'guix hash'.
* guix/scripts/hash.scm: New file.
* Makefile.am (MODULES): Add it.
* po/POTFILES.in: Add it.
* doc/guix.texi (Invoking guix hash): New node.
  (Defining Packages): Add a cross-reference to the 'Invoking guix
  hash' node.
2013-04-21 19:22:14 +00:00
Ludovic Courtès 0e993428ce build: Add `sync-synopses.scm'.
* build-aux/sync-synopses.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
  (dist-hook): New target.
2013-04-17 18:09:43 +02:00
Cyril Roelandt 0160536dcb gnu: Python: bump to version 2.7.4.
* gnu/packages/python.scm: bump to version 2.7.4, remove references to
python-fix-dbm.patch.
* Makefile.am: remove references to python-fix-dbm.patch
* gnu/packages/patches/python-fix-dbm.patch: remove it.
2013-04-16 23:12:29 +02:00
Ludovic Courtès c5c555b186 gnu: Add Ratpoison.
* gnu/packages/ratpoison.scm: New file.
* Makefile.am (MODULES): Add it.
2013-04-12 21:58:47 +02:00
Ludovic Courtès ca877f5a3a nar: Implement restoration from Nar.
* guix/nar.scm (&nar-error, &nar-read-error): New condition types.
  (dump): New procedure.
  (write-contents)[dump]: Remove.  Use the one above instead.
  (read-contents, write-file, restore-file): New procedures.
  (%archive-version-1): New variable.
2013-04-12 21:58:46 +02:00
Nikita Karetnikov 865c4ef33c gnu: shishi: Update to 1.0.2.
* gnu/packages/shishi.scm (shishi): Update to 1.0.2.
* gnu/packages/patches/shishi-gets-undeclared.patch: Remove it.
* Makefile.am (dist_patch_DATA): Adjust accordingly.
2013-04-12 21:58:46 +02:00
Cyril Roelandt 3fdc99da19 gnu: Python: fix the compilation of some modules from the standard library.
This commit enables the bz2, dbm, readline, ssl and zlib modules.

* gnu/packages/gdbm.scm: Enable the compatibility mode.
* gnu/packages/python.scm: Enable a few modules from the standard library.
* gnu/packages/patches/python-fix-dbm.patch: New file.
* Makefile.am: Add it.
2013-04-12 21:58:46 +02:00
Ludovic Courtès f0cd71f21e Add (guix nar) and (guix serialization).
* guix/store.scm (write-int, read-int, write-long-long, read-long-long,
  write-padding, write-string, read-string, read-latin1-string,
  write-string-list, read-string-list, write-store-path,
  read-store-path, write-store-path-list, read-store-path-list): Move to
  serialization.scm.
  (write-contents, write-file): Move to nar.scm.
* guix/nar.scm, guix/serialization.scm: New files.
* Makefile.am (MODULES): Add them.
2013-04-12 21:57:58 +02:00
Ludovic Courtès 419fffa2e8 Add preliminary binary substituter.
* guix/scripts/substitute-binary.scm: New file.
* Makefile.am (MODULES): Add it.
* nix/scripts/substitute-binary.in: New file.
* config-daemon.ac: Produce nix/scripts/substitute-binary.
* daemon.am (nodist_pkglibexec_SCRIPTS): Add
  nix/scripts/substitute-binary.
* guix/store.scm (substitutable-path-info): Use the
  `query-substitutable-path-infos' RPC.
* nix/nix-daemon/guix-daemon.cc (main): Honor `NIX_SUBSTITUTERS'.
* pre-inst-env.in: Set `NIX_SUBSTITUTERS'.
* test-env.in: Leave `NIX_SUBSTITUTERS' unchanged.  Set
  `GUIX_BINARY_SUBSTITUTE_URL, and create
  $NIX_STATE_DIR/substituter-data.
  Run `guix-daemon' within `./pre-inst-env'.
* tests/store.scm ("substitute query"): New test.
2013-04-12 21:57:58 +02:00
Ludovic Courtès f14d6b697e gnu: Add libphidget.
* gnu/packages/libphidget.scm: New file.
* Makefile.am (MODULES): Add it.
2013-04-12 21:57:57 +02:00
Cyril Roelandt 1010e530d3 gnu: Add dwm.
* gnu/packages/dwm.scm: New file.
* Makefile.am: Add it.
2013-04-11 21:08:31 +02:00
Ludovic Courtès 53c63ee937 nar: Implement restoration from Nar.
* guix/nar.scm (&nar-error, &nar-read-error): New condition types.
  (dump): New procedure.
  (write-contents)[dump]: Remove.  Use the one above instead.
  (read-contents, write-file, restore-file): New procedures.
  (%archive-version-1): New variable.
2013-04-08 23:21:38 +02:00
Nikita Karetnikov cbca6eb552 gnu: shishi: Update to 1.0.2.
* gnu/packages/shishi.scm (shishi): Update to 1.0.2.
* gnu/packages/patches/shishi-gets-undeclared.patch: Remove it.
* Makefile.am (dist_patch_DATA): Adjust accordingly.
2013-04-08 12:04:37 +00:00
Cyril Roelandt 4f7d8d7ee4 gnu: Python: fix the compilation of some modules from the standard library.
This commit enables the bz2, dbm, readline, ssl and zlib modules.

* gnu/packages/gdbm.scm: Enable the compatibility mode.
* gnu/packages/python.scm: Enable a few modules from the standard library.
* gnu/packages/patches/python-fix-dbm.patch: New file.
* Makefile.am: Add it.
2013-04-07 15:32:39 +02:00
Ludovic Courtès 0f41c26f9b Add (guix nar) and (guix serialization).
* guix/store.scm (write-int, read-int, write-long-long, read-long-long,
  write-padding, write-string, read-string, read-latin1-string,
  write-string-list, read-string-list, write-store-path,
  read-store-path, write-store-path-list, read-store-path-list): Move to
  serialization.scm.
  (write-contents, write-file): Move to nar.scm.
* guix/nar.scm, guix/serialization.scm: New files.
* Makefile.am (MODULES): Add them.
2013-04-04 22:29:08 +02:00
Andreas Enge 6be960c7f7 Merge branch 'xorg' into core-updates 2013-04-04 18:49:28 +02:00
Ludovic Courtès f65cf81a3c Add preliminary binary substituter.
* guix/scripts/substitute-binary.scm: New file.
* Makefile.am (MODULES): Add it.
* nix/scripts/substitute-binary.in: New file.
* config-daemon.ac: Produce nix/scripts/substitute-binary.
* daemon.am (nodist_pkglibexec_SCRIPTS): Add
  nix/scripts/substitute-binary.
* guix/store.scm (substitutable-path-info): Use the
  `query-substitutable-path-infos' RPC.
* nix/nix-daemon/guix-daemon.cc (main): Honor `NIX_SUBSTITUTERS'.
* pre-inst-env.in: Set `NIX_SUBSTITUTERS'.
* test-env.in: Leave `NIX_SUBSTITUTERS' unchanged.  Set
  `GUIX_BINARY_SUBSTITUTE_URL, and create
  $NIX_STATE_DIR/substituter-data.
  Run `guix-daemon' within `./pre-inst-env'.
* tests/store.scm ("substitute query"): New test.
2013-04-03 22:44:39 +02:00
Ludovic Courtès adb5f46940 gnu: Add libphidget.
* gnu/packages/libphidget.scm: New file.
* Makefile.am (MODULES): Add it.
2013-04-02 10:59:27 +02:00
Andreas Enge 14ecc0effc gnu: Add xpdf.
* gnu/packages/pdf.scm (xpdf): New variable.
* gnu/packages/patches/xpdf-constchar.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2013-03-31 17:27:37 +02:00
Ludovic Courtès 4928e50033 Merge branch 'master' into core-updates
Conflicts:
	Makefile.am
	gnu/packages/base.scm
2013-03-29 21:44:31 +01:00
Andreas Enge 73274a8ae7 gnu: Really add lesstif.
* Makefile.am (MODULES): Commit the module addition.
2013-03-29 10:51:41 +01:00
Cyril Roelandt c6bded8a29 Add (guix build-system cmake).
* guix/build/cmake-build-system.scm, guix/build-system/cmake.scm: New files.
* Makefile.am (MODULES): Add them.
2013-03-28 21:04:54 +01:00
Ludovic Courtès e9c0b9446b gnu: Move GCC to its own module.
* gnu/packages/base.scm (gcc-4.7): Move to...
* gnu/packages/gcc.scm: ... here.  New file.
* Makefile.am (MODULES): Add it.
2013-03-27 15:13:25 +01:00
Ludovic Courtès 785db4d877 glib: Patch around prlimit(2) failure.
* gnu/packages/glib.scm (glib)[source]: Switch to mirror://gnome.
  [inputs]: Add `patch/tests-prlimit'.
  [arguments]: Add it.
* gnu/packages/patches/glib-tests-prlimit.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2013-03-27 15:01:30 +01:00
Ludovic Courtès 7bf569186c gnu: Add GNU cflow.
* gnu/packages/cflow.scm: New file.
* Makefile.am (MODULES): Add it.
2013-03-26 22:43:41 +01:00
Ludovic Courtès 47a9cb950a gnu: Add GNU cppi.
* gnu/packages/cppi.scm: New file.
* Makefile.am (MODULES): Add it.
2013-03-26 22:32:18 +01:00
Cyril Roelandt b6a64843c6 gnu: Add cmake.
* gnu/packages/cmake.scm: New file.
* gnu/packages/patches/cmake-fix-tests.patch: New file.
* Makefile.am: Add them.
2013-03-21 19:53:29 +01:00
Cyril Roelandt 712e6e684c gnu: Add lua.
* gnu/packages/lua.scm: New file.
* Makefile.am: add it.
2013-03-19 23:27:04 +01:00
Nikita Karetnikov 563e8b3920 gnu: Add GNU Fdisk.
* gnu/packages/fdisk.scm: New file.
* Makefile.am (MODULES): Add it.
2013-03-06 20:58:48 +00:00
Nikita Karetnikov bd5ecea637 gnu: Add w3m.
* gnu/packages/w3m.scm,
  gnu/packages/patches/w3m-fix-compile.patch: New files.
* Makefile.am (MODULES): Add 'w3m.scm'.
  (dist_patch_DATA): Add 'w3m-fix-compile.patch'.
2013-03-06 20:52:04 +00:00
Andreas Enge 9aea24b608 gnu: xorg: Initial import from nix.
* gnu/packages/xorg.scm: New module.
* Makefile.am: Add it.
2013-03-06 13:28:00 +01:00
Ludovic Courtès c50cbfd61a gnu: Add Avahi.
* gnu/packages/avahi.scm: New file.
* Makefile.am (MODULES): Add it.
2013-03-05 20:26:24 +01:00
Andreas Enge 938081b9ce gnu: Add lsof.
* gnu/packages/lsof.scm: New file.
* Makefile.am (MODULES): Add it.
2013-03-05 00:14:44 +01:00
Ludovic Courtès 81eec00cb2 Merge branch 'master' into core-updates
Conflicts:
	Makefile.am
	guix/scripts/gc.scm
	guix/scripts/package.scm
	guix/ui.scm
	tests/guix-package.sh
2013-03-04 23:27:24 +01:00
Ludovic Courtès 08fd1ebefd Add (guix build-system perl).
* guix/build-system/perl.scm, guix/build/perl-build-system.scm: New files.
* Makefile.am (MODULES): Add them.
* guix/build-system/gnu.scm (standard-inputs): Make public.
2013-03-04 00:48:00 +01:00
Andreas Enge 49f24f41e3 gnu: Add vpnc.
* gnu/packages/vpn.scm: New file.
* Makefile.am (MODULES): Add it.
* gnu/packages/patches/vpnc-script.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2013-03-03 14:12:57 +01:00
Ludovic Courtès 4cdbdd4439 gnu: Add libdaemon.
* gnu/packages/libdaemon.scm: New file.
* Makefile.am (MODULES): Add it.
2013-03-02 17:00:33 +01:00
Ludovic Courtès 827d28914a gnu: Add cross tool chain.
* gnu/packages/cross-base.scm: New file.
* gnu/packages/patches/gcc-cross-environment-variables.patch: New file.
* Makefile.am (MODULES): Add cross-base.scm.
  (dist_patch_DATA): Add gcc-cross-environment-variables.patch.
* gnu/packages/base.scm (gcc-4.7): Use `LDFLAGS_FOR_TARGET' instead of
  `LDFLAGS_FOR_BUILD', and use `-B' instead of `-L'.
* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add case for
  "mips64el-linux".
2013-02-27 20:55:42 +01:00
Ludovic Courtès 69ce1ffc7d Add "guix pull".
* guix/scripts/pull.scm: New file.
* Makefile.am (MODULES): Add it.
* doc/guix.texi (Invoking guix pull): New node.
  (Invoking guix package): Add cross-ref to it.
* guix/ui.scm (config-directory): New procedure.
* scripts/guix.in: When `GUIX_UNINSTALLED' is undefined, add
  $XDG_CONFIG_HOME/guix/latest to the search path.
* po/POTFILES.in: Add guix/scripts/pull.scm.
2013-02-27 20:55:42 +01:00
Ludovic Courtès 02d94dab8d build: Build guix/scripts/download.go after guix/build/download.go.
* Makefile.am (guix/scripts/download.go): Add dependency on
  `guix/build/download.go'.
  Reported by Nikita Karetnikov <nikita@karetnikov.org>.
2013-02-27 20:55:40 +01:00
Mark H Weaver 868c923f13 Replace individual scripts with master 'guix' script.
* scripts/guix.in: New script.

* Makefile.am (bin_SCRIPTS): Add 'scripts/guix'.  Remove 'guix-build',
  'guix-download', 'guix-import', 'guix-package', and 'guix-gc'.

  (MODULES): Add 'guix/scripts/build.scm', 'guix/scripts/download.scm',
  'guix/scripts/import.scm', 'guix/scripts/package.scm', and
  'guix/scripts/gc.scm'.

* configure.ac (AC_CONFIG_FILES): Add 'scripts/guix'.  Remove 'guix-build',
  'guix-download', 'guix-import', 'guix-package', and 'guix-gc'.

* guix-build.in, guix-download.in, guix-gc.in, guix-import.in,
  guix-package.in: Remove shell script boilerplate.  Move to guix-COMMAND.in
  to guix/scripts/COMMAND.scm.  Rename module from (guix-COMMAND) to
  (guix scripts COMMAND).  Change "guix-COMMAND" to "guix COMMAND" in
  usage help string.

* pre-inst-env.in: Add "@abs_top_builddir@/scripts" to the front of $PATH.
  Export $GUIX_UNINSTALLED.

* tests/guix-build.sh, tests/guix-daemon.sh, tests/guix-download.sh,
  tests/guix-gc.sh, tests/guix-package.sh: Use "guix COMMAND" instead of
  "guix-COMMAND".

* doc/guix.texi: Replace all occurrences of "guix-COMMAND" with
  "guix COMMAND".

* po/POTFILES.in: Update.
2013-02-27 20:55:40 +01:00
Ludovic Courtès d2474c2620 Add (gnu system vm).
* gnu/system/vm.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-27 20:55:40 +01:00
Ludovic Courtès 3855e242a2 gnu: Add support for Guile in Linux initrd.
* gnu/packages/linux-initrd.scm: New file.
2013-02-27 20:55:40 +01:00
Ludovic Courtès 106ca9d0c1 gnu: qemu-kvm: Add patch to have multiple SMB shares.
* gnu/packages/qemu.scm (qemu-kvm/smb-shares): New variable.
* gnu/packages/patches/qemu-multiple-smb-shares.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2013-02-27 20:55:40 +01:00
Nikita Karetnikov 52e6e2461f gnu: Add GNU Parted.
* gnu/packages/parted.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-27 20:55:39 +01:00
Ludovic Courtès e70a28b87e gnu: guile-static: Add bindings for low-level Linux syscalls.
* gnu/packages/make-bootstrap.scm (%guile-static): Add
  `guile-linux-syscalls.patch' as an input, and use it.
* gnu/packages/patches/guile-linux-syscalls.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2013-02-27 20:55:39 +01:00
Cyril Roelandt f9c3648329 gnu: Add vim.
* gnu/packages/vim.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-27 20:55:39 +01:00
Ludovic Courtès ab744c1af5 gnu: Add missing patch for mcron.
* gnu/packages/patches/mcron-install.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2013-02-27 20:55:38 +01:00
Nikita Karetnikov 922f11ad22 gnu: Add GNU Wdiff.
* gnu/packages/wdiff.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-27 20:55:38 +01:00
Ludovic Courtès f651b477b7 Add "guix pull".
* guix/scripts/pull.scm: New file.
* Makefile.am (MODULES): Add it.
* doc/guix.texi (Invoking guix pull): New node.
  (Invoking guix package): Add cross-ref to it.
* guix/ui.scm (config-directory): New procedure.
* scripts/guix.in: When `GUIX_UNINSTALLED' is undefined, add
  $XDG_CONFIG_HOME/guix/latest to the search path.
* po/POTFILES.in: Add guix/scripts/pull.scm.
2013-02-20 23:47:16 +01:00
Ludovic Courtès 855a8ad71d build: Build guix/scripts/download.go after guix/build/download.go.
* Makefile.am (guix/scripts/download.go): Add dependency on
  `guix/build/download.go'.
  Reported by Nikita Karetnikov <nikita@karetnikov.org>.
2013-02-17 22:19:32 +01:00
Mark H Weaver e49951eb3e Replace individual scripts with master 'guix' script.
* scripts/guix.in: New script.

* Makefile.am (bin_SCRIPTS): Add 'scripts/guix'.  Remove 'guix-build',
  'guix-download', 'guix-import', 'guix-package', and 'guix-gc'.

  (MODULES): Add 'guix/scripts/build.scm', 'guix/scripts/download.scm',
  'guix/scripts/import.scm', 'guix/scripts/package.scm', and
  'guix/scripts/gc.scm'.

* configure.ac (AC_CONFIG_FILES): Add 'scripts/guix'.  Remove 'guix-build',
  'guix-download', 'guix-import', 'guix-package', and 'guix-gc'.

* guix-build.in, guix-download.in, guix-gc.in, guix-import.in,
  guix-package.in: Remove shell script boilerplate.  Move to guix-COMMAND.in
  to guix/scripts/COMMAND.scm.  Rename module from (guix-COMMAND) to
  (guix scripts COMMAND).  Change "guix-COMMAND" to "guix COMMAND" in
  usage help string.

* pre-inst-env.in: Add "@abs_top_builddir@/scripts" to the front of $PATH.
  Export $GUIX_UNINSTALLED.

* tests/guix-build.sh, tests/guix-daemon.sh, tests/guix-download.sh,
  tests/guix-gc.sh, tests/guix-package.sh: Use "guix COMMAND" instead of
  "guix-COMMAND".

* doc/guix.texi: Replace all occurrences of "guix-COMMAND" with
  "guix COMMAND".

* po/POTFILES.in: Update.
2013-02-16 22:17:37 -05:00
Ludovic Courtès 040860152e Add (gnu system vm).
* gnu/system/vm.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-16 03:28:26 +01:00
Ludovic Courtès f09d925b16 gnu: Add support for Guile in Linux initrd.
* gnu/packages/linux-initrd.scm: New file.
2013-02-16 03:25:59 +01:00
Ludovic Courtès 161ed5476d gnu: qemu-kvm: Add patch to have multiple SMB shares.
* gnu/packages/qemu.scm (qemu-kvm/smb-shares): New variable.
* gnu/packages/patches/qemu-multiple-smb-shares.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2013-02-16 02:09:10 +01:00
Nikita Karetnikov e04f30e023 gnu: Add GNU Parted.
* gnu/packages/parted.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-15 15:30:20 +01:00
Ludovic Courtès 6956067b04 gnu: guile-static: Add bindings for low-level Linux syscalls.
* gnu/packages/make-bootstrap.scm (%guile-static): Add
  `guile-linux-syscalls.patch' as an input, and use it.
* gnu/packages/patches/guile-linux-syscalls.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2013-02-15 00:52:54 +01:00
Cyril Roelandt eb4908581c gnu: Add vim.
* gnu/packages/vim.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-14 11:26:04 +01:00
Ludovic Courtès 250b0404d7 gnu: Add missing patch for mcron.
* gnu/packages/patches/mcron-install.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2013-02-14 01:12:24 +01:00
Nikita Karetnikov 8c3c896dbe gnu: Add GNU Wdiff.
* gnu/packages/wdiff.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-13 02:18:46 +00:00
Mark H Weaver 58867ae728 Add pre-inst-env and test-env to nodist_noinst_SCRIPTS in Makefile.am.
* Makefile.am: Add nodist_noinst_SCRIPTS = pre-inst-env test-env.
2013-02-12 13:37:25 -05:00
Ludovic Courtès a40f1543c0 gnu: Add Samba and iniparser.
* gnu/packages/samba.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-12 19:36:14 +01:00
Andreas Enge a86177d61c gnu: Rename module 'freetype' to the more general 'fontutils'.
* gnu/packages/freetype.scm: Rename file to...
* gnu/packages/fontutils.scm: ...this.
* Makefile.am (MODULES): Rename module.
* gnu/packages/{ghostscript,grub,pdf,texlive}.scm: Rename dependency.
2013-02-12 13:19:26 +01:00
Ludovic Courtès df77a46273 gnu: Add popt.
* gnu/packages/popt.scm (popt): New file.
* Makefile.am (MODULES): Add it.
2013-02-12 00:14:32 +01:00
Ludovic Courtès 57f662ad30 gnu: Add libunwind.
* gnu/packages/libunwind.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-12 00:14:32 +01:00
Cyril Roelandt b1426f1785 gnu: Add tmux. licenses: add ISC.
* gnu/packages/tmux.scm: New file.
* Makefile.am (MODULES): Use it.
* guix/licenses.scm: add ISC.
2013-02-11 22:23:29 +01:00
Cyril Roelandt 16fd1db547 gnu: Add tcsh.
* gnu/packages/tcsh.scm: New file.
* gnu/packages/patches/tcsh-fix-autotest.patch: New file
* Makefile.am: Add them.
2013-02-10 23:43:46 +01:00
Ludovic Courtès 65d8b777c0 gnu: Add GNU GRUB.
* gnu/packages/grub.scm,
  gnu/packages/patches/grub-gets-undeclared.patch: New files.
* Makefile.am (MODULES): Add grub.scm.
  (dist_patch_DATA): Add grub-gets-undeclared.patch.
2013-02-10 18:48:23 +01:00
Ludovic Courtès 6064c4cdf0 gnu: Add libcddb, GNU libcdio, and GNU xorriso.
* gnu/packages/cdrom.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-10 16:51:46 +01:00
Ludovic Courtès b15fcf9ec2 gnu: Add QEMU-KVM.
* gnu/packages/qemu.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-09 23:21:00 +01:00
Ludovic Courtès a69b7ad2d6 build: Run `guild compile' under the C locale.
* Makefile.am (.scm.go): Set LC_ALL=C.
2013-02-09 23:21:00 +01:00
Nikita Karetnikov 54845460ee gnu: Add GNU Smalltalk.
* gnu/packages/smalltalk.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-09 12:05:01 +00:00
Ludovic Courtès 2d73db7a05 gnu: Add PatchELF.
* gnu/packages/patchelf.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-08 15:44:24 +01:00
Andreas Enge eb0119efde gnu: Add TeXLive.
* gnu/packages/texlive.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-06 00:01:44 +01:00
Andreas Enge 10d1822b8e gnu: Add PCRE (Perl Compatible Regular Expression).
* gnu/packages/pcre.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-05 23:41:38 +01:00
Andreas Enge d464e72566 gnu: Add libmad.
* gnu/packages/mp3.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-04 11:12:32 +01:00
Nikita Karetnikov 9c63fe6c1f gnu: Add GNU Prolog.
* gnu/packages/gprolog.scm: New file.
* Makefile.am (MODULES): Add it.
2013-02-02 12:48:58 +00:00
Ludovic Courtès 299112d36e guix-package: Report `--search' matches in recutils format.
* guix/ui.scm (fill-paragraph, string->recutils, package->recutils): New
  procedures.
* guix-package.in (guix-package)[process-query]: Use `package->recutils'
  to display package meta-data.
* tests/guix-package.sh: Adjust test.
* tests/ui.scm: New file.
* Makefile.am (TESTS): Add it.
* doc/guix.texi (Invoking guix-package): Adjust `--search'
  documentation, and give an example.
2013-02-01 13:16:41 +01:00
Andreas Enge 9ae7865e97 gnu: Add flac.
* gnu/packages/oggvorbis.scm (flac): New variable.
* gnu/packages/oggvorbis.scm (vorbis-tools): Add flac input.
* gnu/packages/patches/flac-fix-memcmp-not-declared.patch: New file.
2013-01-31 22:19:56 +01:00
Andreas Enge 6b9105e557 gnu: Add curl.
* gnu/packages/curl.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-30 23:07:13 +01:00
Andreas Enge 2fbf053b7b gnu: Add libssh2.
* gnu/packages/ssh.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-29 23:05:35 +01:00
Andreas Enge 2a75d4e664 gnu: Add openldap.
* gnu/packages/openldap.scm: New file.
* Makefile.am (MODULE): Add it.
2013-01-29 19:52:00 +01:00
Cyril Roelandt f1d2872c82 gnu: Add irssi.
* gnu/packages/irssi.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-26 23:40:43 +01:00
Andreas Enge b8d3511ad5 gnu: Add zip, unzip and zziplib.
* gnu/packages/zip.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-26 14:40:49 +01:00
Andreas Enge e5c0701f9c gnu: Add TECkit.
* gnu/packages/freetype.scm (teckit): New variable.
* gnu/packages/patches/teckit-cstdio.patch: New file.
* Makefile.am (dist_patch_DATA): Add patch.
2013-01-26 00:43:03 +01:00
Cyril Roelandt 59db01942b gnu: Add Subversion.
* gnu/packages/subversion.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-25 21:52:08 +01:00
Ludovic Courtès 97715602cb gnu: Add SQLite.
* gnu/packages/sqlite.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-25 21:52:08 +01:00
Cyril Roelandt df84950e44 gnu: Add libapr.
* gnu/packages/libapr.scm: New file.
* gnu/packages/patches/libapr-skip-getservbyname-test.patch: New file
* Makefile.am: Add them
2013-01-25 21:52:08 +01:00
Andreas Enge 135eb524b3 gnu: Add poppler.
* gnu/packages/pdf.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-24 23:51:41 +01:00
Cyril Roelandt d192efae07 gnu: Add OCaml. licenses: Add QPL.
* gnu/packages/ocaml.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/licenses.scm: New variable.
2013-01-24 00:03:43 +01:00
Ludovic Courtès 7cd1d7bd0c gnu: automake: Adjust test suite to lack of /bin/sh.
* gnu/packages/autotools.scm (autoconf-wrapper): New variable.
  (automake): Use AUTOCONF-WRAPPER instead of AUTOCONF.
  Add `automake-skip-amhello-tests.patch' as an input.
  Add #:patches and #:phases arguments.
* gnu/packages/patches/automake-skip-amhello-tests.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2013-01-22 00:17:42 +01:00
Andreas Enge 23180bebff gnu: Add groff.
* gnu/packages/groff.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-21 23:23:02 +01:00
Andreas Enge 05bf6f8289 gnu: Add netpbm.
* gnu/packages/netpbm.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-21 21:46:46 +01:00
Ludovic Courtès eb39051936 gnu: Add missing libevent patch.
* gnu/packages/patches/libevent-dns-tests.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2013-01-21 08:53:44 +01:00
Ludovic Courtès 7f08437bd8 gnu: Add Tor.
* gnu/packages/tor.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-20 23:21:04 +01:00
Ludovic Courtès 6b32a64a4d gnu: Add libevent.
* gnu/packages/libevent.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-20 22:54:36 +01:00
Cyril Roelandt 6c3a720481 Add GNU Screen.
* gnu/packages/screen.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-20 12:22:14 +01:00
Ludovic Courtès 943f33a326 distro: glib: Run the test suite; add DBus.
* distro/packages/glib.scm: Rename to...
* gnu/packages/glib.scm: ... this.  Update module declaration
  accordingly.
  (dbus): New variable.
  (glib): Change version number to 2.34.3, and adjust URL accordingly.
  Add a "doc" output.  Add #:configure-flags, #:patches, and #:phases
  arguments. Add DBUS as an input, as well a three patches.
* Makefile.am (MODULES): Adjust to file renaming.
  (dist_patch_DATA): Add `glib-tests-timezone.patch',
  `glib-tests-homedir.patch', and `glib-tests-desktop.patch'.
2013-01-19 22:20:47 +01:00
Nikita Karetnikov 3889a82ef8 distro: Add GLib.
* distro/packages/glib.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-19 22:20:47 +01:00
Andreas Enge bf4018fb15 gnu: Add GNU Ghostscript and its dependencies libpaper and lcms.
* gnu/packages/ghostscrip.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-19 13:44:42 +01:00
Andreas Enge b387a1c5b2 gnu: Add Freetype.
licenses: Add freetype license.

* gnu/packages/freetype.scm: New file.
* guix/licenses.scm (freetype): New variable.
* Makefile.am (MODULES): Add freetype.scm.
2013-01-19 12:28:55 +01:00
Andreas Enge 23f339dd7f gnu: Amended previous patch.
* Makefile.am (MODULES): Add libpng.scm.
2013-01-18 23:55:07 +01:00
Andreas Enge 6a06172b65 gnu: Add libogg, libvorbis and vorbis-tools.
* gnu/packages/oggvorbis.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-18 20:27:33 +01:00
Ludovic Courtès 59a43334a9 distro: Rename (distro) to (gnu packages).
* distro.scm: Rename to...
* gnu/packages.scm: ... this.  Update all users accordingly.
* Makefile.am (MODULES): Adjust accordingly.
* po/POTFILES.in: Likewise.
2013-01-18 01:07:53 +01:00
Ludovic Courtès 1ffa7090b9 distro: Change the module name space to (gnu ...).
* distro: Rename to...
* gnu: ... this.  Update module names accordingly.
* Makefile.am: Adjust accordingly.
* po/POTFILES.in: Likewise.
* distro.scm: Search for files under /gnu/packages instead of
  /distro/packages.
* gnu/packages/base.scm (ld-wrapper-boot3): Likewise.
2013-01-18 01:07:31 +01:00
Andreas Enge 082b3c6a6c distro: Add libtiff.
* distro/packages/libtiff.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-18 00:14:42 +01:00
Andreas Enge f24996724c distro: Add file.
* distro/packages/file.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-17 23:15:21 +01:00
Andreas Enge 4b5f8cde38 distro: Add Libjpeg.
* distro/packages/libjpeg.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-17 23:12:22 +01:00
Andreas Enge c1e628f6ce distro: Add Indent.
* distro/packages/indent.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-17 23:09:24 +01:00
Ludovic Courtès d041488307 distro: Add Expat.
* distro/packages/xml.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-16 23:40:02 +01:00
Andreas Enge 4c9e797577 distro: Add icu4c (International Components for Unicode).
* distro/packages/icu4c.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-16 17:39:47 +01:00
Nikita Karetnikov a01b6da792 distro: Add Python 2.7.3.
* distro/packages/python.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-16 04:23:27 +00:00
Ludovic Courtès 727afa3be8 distro: Add patches forgotten in previous commits.
* distro/packages/patches/bigloo-gc-shebangs.patch,
  distro/packages/patches/emacs-configure-sh.patch,
  distro/packages/patches/procps-make-3.82.patch: New files.
* Makefile.am (dist_patch_DATA): Add them.
2013-01-15 22:56:52 +01:00
Andreas Enge acf60b26bd distro: Add Cyrus SASL.
* distro/packages/cyrus-sasl.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-15 17:11:51 +01:00
Andreas Enge 0dd7a135b2 Test commit.
* Makefile.am: alphabetical ordering
2013-01-15 16:12:33 +01:00
Ludovic Courtès e117772ddd distro: Add MIT/GNU Scheme and Bigloo.
* distro/packages/scheme.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-15 01:08:00 +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 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 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 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 01e354eb83 Merge branch 'core-updates'
Conflicts:
	guix/build/union.scm
2013-01-11 16:01:49 +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 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 4050e5d6cf Merge branch 'master' into core-updates
Conflicts:
	build-aux/download.scm
	distro/packages/autotools.scm
	distro/packages/base.scm
	distro/packages/bootstrap.scm
	distro/packages/lsh.scm
	distro/packages/make-bootstrap.scm
	distro/packages/ncurses.scm
	distro/packages/perl.scm
	tests/derivations.scm
	tests/union.scm
2013-01-06 17:33:02 +01:00
Ludovic Courtès 79580eb698 distro: Update bootstrap binaries to an nscd-less libc.
Update bootstrap binaries following changes in commit d3b5972 ("Build
glibc without nscd, and with static NSS modules.")

* Makefile.am (distro/packages/bootstrap/x86_64-linux/guile-2.0.7.tar.xz,
  distro/packages/bootstrap/i686-linux/guile-2.0.7.tar.xz): Update hashes.
* build-aux/download.scm (file-name->uri): Update URL.
* distro/packages/bootstrap.scm (%bootstrap-coreutils&co,
  %bootstrap-binutils, %bootstrap-glibc, %bootstrap-gcc): Update URLs
  and hashes.
2013-01-06 01:16:14 +01:00
Ludovic Courtès 233e76769a Update license headers.
Change all license headers, except guix/build/* and ld-wrapper.scm, with
this code:

  (use-modules (guix build utils)
	       (srfi srfi-1))

  (fluid-set! %default-port-encoding "UTF-8")

  (substitute* (remove (lambda (f)
			 (or (string-contains f ".tar.")
			     (string-contains f ".git/")
			     (string-contains f ".so")
			     (string-suffix? ".o" f)
			     (string-suffix? ".a" f)
			     (string-suffix? ".go" f)
			     (string-suffix? ".pdf" f)
			     (string-suffix? ".png" f)
			     (string-suffix? ".info" f)
			     (equal? (basename f) "guix-daemon")
			     (equal? (basename f) "nix-setuid-helper")
			     (string-contains f "nix-upstream/")
			     (string-contains f "distro/packages/bootstrap/")))
		       (find-files "." "\\.[a-z]+$"))
    (("^([[:graph:]]+) This file is part of Guix." _ comment-start)
     (string-append comment-start " This file is part of GNU Guix."))
    (("^([[:graph:]]+) Guix --- Nix package management.*" _ comment-start)
     (string-append comment-start
		    " GNU Guix --- Functional package management for GNU\n"))
    (("^([[:graph:]]+) Guix is " _ comment-start)
     (string-append comment-start " GNU Guix is "))
    (("^([[:graph:]]+) along with Guix." _ comment-start)
     (string-append comment-start " along with GNU Guix."))
    (("^([[:graph:]]+) Copyright \\(C\\)" _ comment-start)
     (string-append comment-start " Copyright ©")))

Change headers using C-style comments manually.
2013-01-06 00:47:50 +01:00
Ludovic Courtès fe8ff02827 Add `guix-gc'.
* guix-gc.in, tests/guix-gc.sh: New files.
* configure.ac: Output `guix-gc', and make it executable.
* Makefile.am (bin_SCRIPTS): Add `guix-gc'.
  (TESTS): Add `tests/guix-gc.sh'.
* doc/guix.texi (Features): Add xref to "Invoking guix-gc".
  (Invoking guix-gc): New node.
* po/POTFILES.in: Add `guix-gc.in'.
2013-01-06 00:28:06 +01:00
Andreas Enge 60a290926b distro: Add Berkeley DB.
* distro/packages/bdb.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-02 18:13:07 +01:00
Andreas Enge f9975b5a49 distro: Add OpenSSL.
* distro/packages/openssl.scm: New file.  `patch-tests' phase added by
  Ludovic Courtès.
* Makefile.am (MODULES): Add it.
2013-01-02 13:31:13 +01:00
Andreas Enge 9dc6f288bf distro: Add MIT Kerberos 5.
* distro/packages/mit-krb5.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-02 01:08:51 +01:00
Andreas Enge 3aa6fab83b distro: Add Libntlm, GNU GSS and GNU SASL.
* distro/packages/gsasl.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-30 17:25:37 +01:00
Andreas Enge 2ee8edc450 distro: Add GNU Libidn.
* distro/packages/libidn.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-30 17:00:59 +01:00
Ludovic Courtès 5a8fd06d01 distro: Add GNU idutils.
* distro/packages/idutils.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-21 22:50:44 +01:00
Andreas Enge c8911fa395 distro: Add rsync.
* distro/packages/rsync.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-21 22:39:05 +01:00
Andreas Enge 2ed139c42c distro: Add mpfrcx and fplll.
* distro/packages/algebra.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-20 01:43:38 +01:00
Ludovic Courtès 0f09955213 distro: Update bootstrap binaries.
Use bootstrap binaries that were generated with the `make-bootstrap'
changes introduced in previous commit.

* Makefile.am (nodist_bootstrap_x86_64_linux_DATA,
  nodist_bootstrap_i686_linux_DATA): Change Guile tarball name.
  (distro/packages/bootstrap/x86_64-linux/guile-2.0.7.tar.xz,
  distro/packages/bootstrap/i686-linux/guile-2.0.7.tar.xz): New targets.
  (distro/packages/bootstrap/x86_64-linux/guile-bootstrap-2.0.6.tar.xz,
  distro/packages/bootstrap/i686-linux/guile-bootstrap-2.0.6.tar.xz):
  Remove.
* build-aux/download.scm (file-name->uri): Use "20121219" directory.
* distro/packages/bootstrap.scm (%bootstrap-guile): Update file name.
  (%bootstrap-coreutils&co, %bootstrap-binutils, %bootstrap-glibc,
  %bootstrap-gcc): Update directory name and hashes.
2012-12-20 01:38:56 +01:00
Ludovic Courtès 5d4fd2671a distro: make-bootstrap: Have libc's functions search for `sh' in $PATH.
* distro/packages/make-bootstrap.scm (%glibc-with-relocatable-system,
  %standard-inputs-with-relocatable-glibc): New variables.
  (%static-inputs)[gawk]: Apply `gawk-shell.patch'.
  [finalize]: New procedure.
  Build all the packages against %STANDARD-INPUTS-WITH-RELOCATABLE-GLIBC.
  (%glibc-stripped): Inherit from %GLIBC-WITH-RELOCATABLE-SYSTEM.
  (%gcc-static, %guile-static): Build against
  %STANDARD-INPUTS-WITH-RELOCATABLE-GLIBC.
* distro/packages/patches/gawk-shell.patch,
  distro/packages/patches/glibc-bootstrap-system.patch: New files.
* Makefile.am (dist_patch_DATA): Add them.
2012-12-20 01:38:56 +01:00
Nikita Karetnikov 3b48f78c85 distro: Add Libusb.
* distro/packages/libusb.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-18 22:44:18 +00:00
Nikita Karetnikov d8989c2394 distro: Add Check.
* distro/packages/check.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-17 15:26:58 +00:00
Ludovic Courtès 4d152bf1d9 Merge branch 'master' into nix-integration
Conflicts:
	guix/store.scm
2012-12-09 23:54:37 +01:00
Ludovic Courtès 3259877d35 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.
2012-12-09 23:52:59 +01:00
Nikita Karetnikov 838d78e3e0 Add (guix licenses).
* guix/licenses.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-08 19:17:02 +01:00
Nikita Karetnikov 6ad2697d23 distro: Add ACL.
* distro/packages/acl.scm: New file.  Dependency on Perl added by
  Ludovic.
* Makefile.am (MODULES): Add it.
2012-12-07 22:32:00 +01:00
Nikita Karetnikov 3d282f90f8 distro: Add Attr.
* distro/packages/attr.scm: New file.  Dependency on Perl and
  `patch-shebang' added by Ludovic.
* Makefile.am (MODULES): Add it.
2012-12-07 22:30:32 +01:00
Ludovic Courtès aca54b395e build: Run `distcheck' with `--enable-daemon'.
* Makefile.am (AM_DISTCHECK_CONFIGURE_FLAGS): Add `--enable-daemon'.
2012-12-06 00:07:17 +01:00
Ludovic Courtès 69cfce50db 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'.
2012-12-06 00:07:08 +01:00
Nikita Karetnikov 22189ed117 Add (guix gnu-maintenance).
* guix/gnu-maintenance.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-05 14:56:25 +01:00
Ludovic Courtès 5f25049e9c Merge branch 'master' into nix-integration 2012-12-04 23:51:31 +01:00
Ludovic Courtès 18d50d7621 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.
2012-12-04 22:03:21 +01:00
Ludovic Courtès b49ffe2d67 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'.
2012-12-03 23:05:11 +01:00
Ludovic Courtès c2033df432 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.
2012-12-03 23:05:08 +01:00
Ludovic Courtès fd76c904c7 distro: Add Linux-PAM.
* distro/packages/linux.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-27 21:56:37 +01:00
Nikita Karetnikov 501b16750a 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'.
2012-11-25 22:45:55 +01:00
Nikita Karetnikov b147f59f41 distro: Add GNU Time.
* distro/packages/time.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-25 22:42:34 +01:00
Nikita Karetnikov 6e6979c6f1 distro: Add GNU Which.
* distro/packages/which.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-25 22:41:38 +01:00
Ludovic Courtès 0b3651bc93 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.
2012-11-25 16:28:52 +01:00
Nikita Karetnikov fe7777c14b distro: Add GNU Less.
* distro/packages/less.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-25 16:08:10 +01:00
Nikita Karetnikov 7f40d97d88 distro: Add GNU Nano.
* distro/packages/nano.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-25 16:08:10 +01:00
Nikita Karetnikov da7b042dd9 distro: Add GNU Wget.
* distro/packages/wget.scm: New file; patch-shebang phase added by
  Ludovic Courtès.
* Makefile.am (MODULES): Add it.
2012-11-25 16:08:06 +01:00
Nikita Karetnikov 034cb8e781 distro: Add GNU Ddrescue.
* distro/packages/ddrescue.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-24 16:14:39 +01:00
Nikita Karetnikov f190f92f91 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'.
2012-11-24 00:52:16 +01:00
Nikita Karetnikov 5b2fd61868 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'.
2012-11-24 00:35:33 +01:00
Nikita Karetnikov 36d4d49e69 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.
2012-11-22 22:37:20 +01:00
Nikita Karetnikov 80ffc7082c distro: Add GNU Autoconf and GNU Automake.
* distro/packages/autotools.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-22 22:30:50 +01:00
Ludovic Courtès e2b2c46693 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'.
2012-11-22 18:22:48 +01:00
Ludovic Courtès cf153fc472 distro: Add GNU Bison.
* distro/packages/bison.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-22 17:57:37 +01:00
Ludovic Courtès 30c40755fc distro: Add GDBM.
* distro/packages/gdbm.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-22 17:56:35 +01:00
Nikita Karetnikov 0aa94f0ca4 distro: Add GNU Ed.
* distro/packages/ed.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-21 17:02:17 +01:00
Ludovic Courtès fb9821f023 distro: Add GNU Zile.
* distro/packages/zile.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-19 21:46:31 +01:00
Ludovic Courtès cc8e5e25b4 distro: Add GNU help2man.
* distro/packages/help2man.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-19 21:42:11 +01:00
Ludovic Courtès 1df895b00b distro: Add GNU Pies and GNU Inetutils.
* distro/packages/system.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-18 18:42:29 +01:00
Ludovic Courtès 8c0e5b1e87 build: Add `hydra.scm'.
* hydra.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2012-11-18 18:35:26 +01:00
Ludovic Courtès b6dd891c1c doc: Add `ROADMAP'.
* ROADMAP: New file.
* Makefile.am (EXTRA_DIST): Add it.
2012-11-18 17:56:02 +01:00
Ludovic Courtès 6b8875c838 doc: Add `TODO'.
* TODO: New file.
* Makefile.am (EXTRA_DIST): Add it.
2012-11-18 17:45:48 +01:00
Ludovic Courtès 352ec143de 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.
2012-11-13 22:58:43 +01:00
Ludovic Courtès db32c281dd distro: Add GNU Texinfo.
* distro/packages/texinfo.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-13 21:46:10 +01:00
Ludovic Courtès 7543f8653b distro: Add GNU Libtasn1 and GnuTLS.
* distro/packages/gnutls.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-13 21:44:57 +01:00
Ludovic Courtès 2e65982725 distro: Add GNU Nettle.
* distro/packages/nettle.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-13 21:43:30 +01:00
Ludovic Courtès 671d8f5e6f build: Add $(top_builddir) to the load path.
* Makefile.am (DOWNLOAD_FILE): Add $(top_builddir) to the search path,
  since that's where guix/config.scm is.
  (.scm.go): Likewise.
2012-11-13 00:33:43 +01:00
Ludovic Courtès 25608d640a distro: Patch libc to avoid accessing /etc/ld.so.cache and friends.
* distro/packages/base.scm (glibc): Apply `glibc-no-ld-so-cache.patch'.
  (glibc-final): Inherit GLIBC's inputs.
* distro/packages/patches/glibc-no-ld-so-cache.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2012-11-13 00:23:43 +01:00
Ludovic Courtès 87f5d36630 Remove (guix http) and (guix ftp).
* guix/ftp.scm, guix/http.scm, guix/build/ftp.scm, guix/build/http.scm:
  Remove.
* Makefile.am (MODULES): Likewise.
* tests/builders.scm, distro/packages/base.scm,
  distro/packages/bash.scm, distro/packages/bdw-gc.scm,
  distro/packages/compression.scm, distro/packages/gawk.scm,
  distro/packages/gnupg.scm, distro/packages/gperf.scm,
  distro/packages/guile.scm, distro/packages/libffi.scm,
  distro/packages/libsigsegv.scm, distro/packages/libtool.scm,
  distro/packages/libunistring.scm, distro/packages/lout.scm,
  distro/packages/m4.scm, distro/packages/multiprecision.scm,
  distro/packages/ncurses.scm, distro/packages/perl.scm,
  distro/packages/pkg-config.scm, distro/packages/pth.scm,
  distro/packages/readline.scm, distro/packages/recutils.scm: Use
  `url-fetch' instead of `http-fetch' and `ftp-fetch'.
* distro/packages/bootstrap.scm: Likewise
  (bootstrap-origin): Remove references to `http-fetch' and
  `ftp-fetch'.
* guix.scm (%public-modules): Remove `http' and `ftp'; add `download'.
2012-11-13 00:23:39 +01:00
Ludovic Courtès 62cab99c32 Add (guix download) and (guix build download).
* guix/download.scm, guix/build/download.scm: New files.
* Makefile.am (MODULES): Add them.
* tests/builders.scm ("url-fetch"): New test.
* distro/packages/bootstrap.scm (bootstrap-origin): Support
  `url-fetch'.
* guix/snix.scm (snix-derivation->guix-package): Use `url-fetch' instead
  of `http-fetch'.
2012-11-12 23:35:04 +01:00
Ludovic Courtès ddc29a782e Move base32 code to (guix base32).
* guix/utils.scm (bytevector-quintet-ref, bytevector-quintet-ref-right,
  bytevector-quintet-length, bytevector-quintet-fold,
  bytevector-quintet-fold-right, make-bytevector->base32-string,
  %nix-base32-chars, %rfc4648-base32-chars, bytevector->base32-string,
  bytevector->nix-base32-string, bytevector-quintet-set!,
  bytevector-quintet-set-right!, base32-string-unfold,
  base32-string-unfold-right, make-base32-string->bytevector,
  base32-string->bytevector, nix-base32-string->bytevector): Move to...
* guix/base32.scm: ... here.  New file.

* tests/utils.scm (%nix-hash, "bytevector->base32-string",
  "base32-string->bytevector", "nix-base32-string->bytevector", "sha256
  & bytevector->base32-string"): Move to...
* tests/base32.scm: ... here.  New file

* guix-download.in, guix/derivations.scm, guix/packages.scm,
  guix/snix.scm, tests/builders.scm, tests/derivations.scm: Adjust
  accordingly.
* guix.scm (%public-modules): Add `base32'.
2012-11-11 22:33:28 +01:00
Ludovic Courtès 37d19403e7 guix-download: Error out when the HTTP response code is not 200.
* guix-download.in (http-fetch): Leave with an error message when
  RESPONSE's code is not 200.

* tests/guix-download.sh: New file.
* Makefile.am (TESTS): Add it.
2012-11-08 00:13:25 +01:00
Ludovic Courtès 74fe2df2ad build: Remove now unnecessary dependency of downloads on guix/utils.go.
* Makefile.am (distro/packages/bootstrap/x86_64-linux/guile-bootstrap-2.0.6.tar.xz,
  distro/packages/bootstrap/i686-linux/guile-bootstrap-2.0.6.tar.xz):
  Remove dependency on guix/utils.go.
2012-11-07 18:00:16 +01:00
Ludovic Courtès 8ba60d7b65 distro: Move bootstrap tarball packages to (distro packages make-bootstrap).
* distro/packages/base.scm (binutils-final): Make public.
  (static-package, %bash-static, %static-inputs, %static-binaries,
  %binutils-static, %binutils-static-stripped, %glibc-stripped,
  %gcc-static, %gcc-stripped, %guile-static, %guile-static-stripped,
  tarball-package, %bootstrap-binaries-tarball,
  %binutils-bootstrap-tarball, %glibc-bootstrap-tarball,
  %guile-bootstrap-tarball): Move to...
* distro/packages/make-bootstrap.scm: ... here.  New file.
* Makefile.am (MODULES): Add it.
2012-11-06 22:55:44 +01:00
Ludovic Courtès 8d1939e4d0 distro: Add GnuPG and companion libraries.
* distro/packages/gnupg.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-05 00:28:41 +01:00
Ludovic Courtès a268f085db distro: Add (distro packages compression).
* distro/packages/base.scm (gzip, bzip2, xz): Move to...
* distro/packages/compression.scm: ... here.  New file.
* Makefile.am (MODULES): Add it.
2012-11-04 23:16:58 +01:00
Ludovic Courtès d373e57ea3 distro: Add GNU Pth.
* distro/packages/pth.scm: New file.
* Makefile.am (MODULES): Add it.
2012-11-04 23:08:44 +01:00