summaryrefslogtreecommitdiff
Commit message (Expand)AuthorAgeFilesLines
...
* derivations: Add tests relative to fixed-output derivations.•••* tests/derivations.scm ("fixed-output derivation"): Add comment that the reference to BUILDER is optional. ("fixed-output derivation: output paths are equal", "derivation with a fixed-output input", "build-expression->derivation: same fixed-output path"): New tests. Ludovic Courtès2012-11-081-2/+83
* store: Document `add-to-store' hack for `fixed?'.•••* guix/store.scm (add-to-store): Document that `fixed?' must be #t. Ludovic Courtès2012-11-081-1/+2
* guix-download: Print the hash of the file's contents, no that of the path.•••* guix-download.in (guix-download): Display the hash of the contents of PATH, not the path hash. Also, call `add-to-store' with FIXED? = #t. Ludovic Courtès2012-11-081-5/+5
* 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. Ludovic Courtès2012-11-083-2/+36
* guix-build: Error out when `-S' used for source-less package.•••* guix-build.in (derivations-from-package-expressions): Leave with an error message when SOURCE? is #t and P has no source. * tests/guix-build.sh: Add test. Ludovic Courtès2012-11-072-7/+15
* doc: Document the features and `guix-package'.•••* doc/guix.texi: Change the category to "Package management". Add an @direntry for "Invoking guix-package". (Package Management): New chapter. Ludovic Courtès2012-11-071-2/+132
* guix-package: Fix handling of the PACKAGE:OUTPUT syntax.•••* guix-package.in (guix-package)[find-package]: Return the correct NAME and SUB-DRV when NAME contains #\:. * tests/guix-package.sh (profile): Add test. Ludovic Courtès2012-11-072-2/+5
* guix-package: Fix invalid module use.•••* guix-package.in: Use (distro packages guile), not (... base). Ludovic Courtès2012-11-071-1/+1
* 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. Ludovic Courtès2012-11-071-2/+2
* doc: Document `guix-build'.•••* doc/guix.texi (Invoking guix-build): Populate. Ludovic Courtès2012-11-071-0/+80
* doc: Remove unnecessary @ifinfo.•••* doc/guix.texi: Remove @ifinfo around @dir{category,entry}. Suggested by Karl Berry <karl@freefriends.org>. Ludovic Courtès2012-11-071-2/+0
* 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. Ludovic Courtès2012-11-063-475/+513
* distro: bash-final: Link with `-static-libgcc'.•••* distro/packages/base.scm (bash-final): Pass through `static-libgcc-package'. Ludovic Courtès2012-11-051-1/+4
* build-system/gnu: Add `static-libgcc-package' & supporting procedure.•••* guix/build-system/gnu.scm (package-with-extra-configure-variable, static-libgcc-package): New procedures. Ludovic Courtès2012-11-051-1/+42
* distro: gcc: Don't add a RUNPATH to GCC when using `-static-libgcc'.•••* distro/packages/base.scm (gcc-4.7)[LIB_SPEC]: Add a `-rpath' to GCC only when !static and !static-libgcc. Ludovic Courtès2012-11-051-2/+5
* distro: readline: Allow stripping of the libraires.•••* distro/packages/readline.scm (readline)[arguments]: Add `post-install' phase to make libraries writable. Ludovic Courtès2012-11-051-1/+15
* utils: Add `default-keyword-arguments' and `substitute-keyword-arguments'.•••* distro/packages/base.scm (default-keyword-arguments, substitute-keyword-arguments): Move to... * guix/utils.scm: ... here. Ludovic Courtès2012-11-052-31/+33
* distro: Add missing `package-with-bootstrap-guile'.•••* distro/packages/base.scm (binutils-final): Add missing `package-with-bootstrap-guile'. Ludovic Courtès2012-11-051-7/+8
* distro: recutils: Comment out optional dependencies.•••* distro/packages/recutils.scm (recutils): Comment out optional dependencies not packaged here. Ludovic Courtès2012-11-051-4/+5
* distro: Add GnuPG and companion libraries.•••* distro/packages/gnupg.scm: New file. * Makefile.am (MODULES): Add it. Ludovic Courtès2012-11-052-0/+168
* distro: Add zlib.•••* distro/packages/compression.scm (zlib): New variable. Ludovic Courtès2012-11-051-0/+40
* 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. Ludovic Courtès2012-11-043-111/+135
* distro: Add GNU Pth.•••* distro/packages/pth.scm: New file. * Makefile.am (MODULES): Add it. Ludovic Courtès2012-11-042-0/+61
* distro: Add GNU gperf.•••* distro/packages/gperf.scm: New file. * Makefile.am (MODULES): Add it. * distro/packages/guile.scm (guile-reader): Use it. Ludovic Courtès2012-11-043-3/+57
* distro: Split (distro packages base) into several files.•••* distro/packages/base.scm (libsigsegv, gawk, perl, m4, gmp, mpfr, mpc, ncurses, readline, bash, libtool, libunistring, libffi, pkg-config, libgc): Move to modules of their own. (guile-1.8, guile-2.0): Move to... * distro/packages/guile.scm: ... here. * distro/packages/bash.scm, distro/packages/bdw-gc.scm, distro/packages/gawk.scm, distro/packages/libffi.scm, distro/packages/libsigsegv.scm, distro/packages/libtool.scm, distro/packages/libunistring.scm, distro/packages/m4.scm, distro/packages/multiprecision.scm, distro/packages/ncurses.scm, distro/packages/perl.scm, distro/packages/pkg-config.scm, distro/packages/readline.scm: New files. Ludovic Courtès2012-11-0416-703/+1049
* distro: Move bootstrap packages to (distro packages bootstrap).•••* distro/packages/base.scm (glibc-dynamic-linker, %bootstrap-guile, bootstrap-origin, package-from-tarball, %bootstrap-base-url, %bootstrap-coreutils&co, %bootstrap-binutils, %bootstrap-glibc, %bootstrap-gcc, %bootstrap-inputs, package-with-bootstrap-guile): Move to ... * distro/packages/bootstrap.scm: ... here. New file. * Makefile.am (MODULES): Add it. * tests/builders.scm: Use (distro packages bootstrap). (%bootstrap-guile): Remove. * tests/packages.scm: Likewise. * tests/union.scm: Likewise, and remove @@ to access %bootstrap-inputs. * tests/derivations.scm: Use (distro packages bootstrap) and remove @@ to access %bootstrap-coreutils&co. * HACKING (When the platform is supported by Nixpkgs): Update accordingly. Ludovic Courtès2012-11-048-329/+383
* distro: Go for one module per package.•••The alternative, which was to use one module per category, would probably not scale well. First, because many packages could fall into several categories (does GnuTLS go into "networking", "security", or "libraries"?). Second, because that could easily lead to circular dependencies among modules ("security" and "networking" depend on each other, etc.) * distro/packages/databases.scm: Rename to... * distro/packages/recutils.scm: ... this. * distro/packages/typesetting.scm: Rename to... * distro/packages/lout.scm: ... this. * Makefile.am (MODULES): Adjust accordingly. * po/POTFILES.in: Likewise. Ludovic Courtès2012-11-044-22/+6
* doc: Add "Adding new packages" in `HACKING'.•••* HACKING (Adding new packages): New section. Ludovic Courtès2012-11-041-0/+44
* Add (guix snix) and the `guix-import' command.•••* guix/snix.scm, tests/snix.scm, guix-import.in: New files. * configure.ac: Output `guix-import' and make it executable. * Makefile.am (bin_SCRIPTS): Add `guix-import'. (MODULES): Add `guix/snix.scm'. (TESTS): Add `tests/snix.scm'. Ludovic Courtès2012-11-046-1/+662
* guix-package: Remove extraneous procedures.•••* guix-package.in (_, N_): Remove. Ludovic Courtès2012-11-041-3/+0
* packages: `description' → `synopsis', `long-description' → `description'.•••* guix/packages.scm (<package>): Rename `description' to `synopsis', and `long-description' to `description'. * tests/packages.scm, distro/packages/base.scm, distro/packages/databases.scm, distro/packages/guile.scm, distro/packages/typesetting.scm: Update accordingly. * po/Makevars (XGETTEXT_OPTIONS): Update `--keyword' flags accordingly. Ludovic Courtès2012-11-047-89/+89
* release.nix: Pass `--with-libgcrypt-prefix' in the `tarball' job.•••* release.nix (jobs.tarball)[configureFlags]: Pass `--with-libgcrypt-prefix'. Ludovic Courtès2012-11-041-1/+3
* utils: Add `package-name->name+version'.•••* guix/utils.scm (package-name->name+version): New procedure. * guix-package.in (guix-package)[find-package]: Use it. * tests/utils.scm ("package-name->name+version"): New test. Ludovic Courtès2012-11-043-7/+42
* build: Require GNU libgcrypt.•••* guix/utils.scm (sha256): Remove Coreutils- and libchop-based implementations. * README: Update accordingly. * m4/guix.m4: New file. * configure.ac: Use `GUIX_ASSERT_LIBGCRYPT_USABLE'. Set and substitute `LIBGCRYPT_PREFIX'. * Makefile.am (AM_DISTCHECK_CONFIGURE_FLAGS): Pass `--with-libgcrypt-prefix=$(LIBGCRYPT_PREFIX)'. Ludovic Courtès2012-11-035-51/+52
* guix-package: Use more (guix ui) features.•••* guix-package.in (leave): Remove. (guix-package): Wrap body in `with-error-handling'. Ludovic Courtès2012-11-031-67/+64
* ui: Factorize `--version'.•••* guix/ui.scm (show-version-and-exit): New procedure. * guix-build.in (show-version): Remove. (%options)["version"]: Use `show-version-and-exit'. * guix-download.in: Likewise. * guix-package.in: Likewise. Ludovic Courtès2012-11-034-15/+12
* build: Produce (guix config) instead of using compile-time tricks.•••* guix/config.scm.in: New file. * guix/utils.scm: Use it. (%libgcrypt): Remove. (%nixpkgs-directory): Don't capture the compile-time $NIXPKGS; use %NIXPKGS instead. (nixpkgs-derivation): Use %NIX-INSTANTIATE. * pre-inst-env.in (NIX_INSTANTIATE, NIXPKGS, LIBGCRYPT): Remove. * configure.ac: Emit `guix/config.scm'. * Makefile.am (GOBJECTS): Add `guix/config.go'. (nobase_nodist_guilemodule_DATA): Add `guix/config.scm'. Ludovic Courtès2012-11-036-13/+61
* build: Clearly mark Nixpkgs as optional.•••* configure.ac: Always show the result of checking for Nixpkgs. Don't warn when Nixpkgs is not found. * Makefile.am (AM_DISTCHECK_CONFIGURE_FLAGS): Remove `--with-nixpkgs' flag. * guix/utils.scm (%nixpkgs-directory): Use either the compile-time or the run-time `NIXPKGS' environment variable. * release.nix (jobs.tarball, jobs.build): Remove `--with-nixpkgs' configure flag. * README: Mark Nixpkgs as optional. * distro/packages/databases.scm, distro/packages/guile.scm, distro/packages/typesetting.scm: Change uses of `nixpkgs-derivation*' to `nixpkgs-derivation', to avoid failing at compile-time. Ludovic Courtès2012-11-038-15/+15
* tests: Run without substitutes.•••* tests/builders.scm, tests/derivations.scm, tests/packages.scm: Set #:use-substitutes? #f for %STORE. Ludovic Courtès2012-11-023-0/+11
* Add a preliminary `guix-package' command-line tool.•••* guix-package.in, tests/guix-package.sh: New files. * configure.ac: Output `guix-package'. * Makefile.am (TESTS): Add `tests/guix-package.sh'. (bin_SCRIPTS): Add `guix-package'. Ludovic Courtès2012-11-015-3/+442
* store: Add `store-path-package-name'.•••* guix/store.scm (store-path-package-name): New procedure. * tests/utils.scm ("store-path-package-name"): New test. Ludovic Courtès2012-11-012-1/+19
* utils: Remove stuff committed by error.•••This was wrongfully committed in df1fab58. * guix/utils.scm (hash-set-proc, hash-ref*, memoizing-lambda): Remove. Ludovic Courtès2012-11-011-20/+0
* build: Add unit test for the `guix-build' command.•••* tests/guix-build.sh: New file. * Makefile.am (TESTS): Add it. (LOG_COMPILER): Rename to... (SCM_LOG_COMPILER): ... this. Move flags to... (AM_SCM_LOG_FLAGS): ... this. (TEST_EXTENSIONS, SH_LOG_COMPILER, AM_SH_LOG_FLAGS): New variables. Ludovic Courtès2012-11-012-4/+56
* Add (guix ui).•••* guix/ui.scm: New file. * Makefile.am (MODULES): Add it. * po/POTFILES.in: Add it. * guix-build.in: Use it. (_, N_, leave): Remove. (guix-build): Use `with-error-handling' instead of the `guard' form. * guix-download.in: Use it. (_, N_, leave): Remove. Ludovic Courtès2012-11-016-29/+82
* build-system/gnu: Distinguish between imported modules and used modules.•••* guix/build-system/gnu.scm (gnu-build): Add the `imported-modules' keyword parameter. Pass it to `build-expression->derivation'. Ludovic Courtès2012-10-311-2/+11
* release.nix: Use `--no-substitutes' in `distro.hello'.•••* release.nix (distro.hello): Use `guix-build --no-substitutes', to avoid failures due to unavailable stale substitutes on hydra.nixos.org. Ludovic Courtès2012-10-311-2/+2
* guix-build: Add `--root'.•••* guix/store.scm (add-indirect-root): New operation. * guix-build.in (show-help): Document `--root'. (%options): Add `--root'. (guix-build)[register-root]: New procedure. Call it when `--root' is passed. Ludovic Courtès2012-10-302-2/+52
* Add (guix build union).•••* guix/build/union.scm, tests/union.scm: New files. * Makefile.am (MODULES): Add `guix/build/union.scm'. (TESTS): Add `tests/union.scm'. Ludovic Courtès2012-10-293-1/+222
* release.nix: Change `distro.hello' to produce something.•••* release.nix (distro.hello)[buildPhase]: Tee the log to $out. Add a `name' attribute; remove `buildInputs' and instead use the full path to `guix-build'. Ludovic Courtès2012-10-281-2/+2
* distro: Build Bash sequentially.•••* distro/packages/base.scm (bash): Set `#:parallel-build?' and `#:parallel-tests?' to #f. Ludovic Courtès2012-10-281-0/+6