summaryrefslogtreecommitdiff
Commit message (Expand)AuthorAgeFilesLines
* Turn Guix into "GNU Guix".•••* configure.ac: Change package name to "GNU Guix", and bug-report address to `gnu-system-discuss@gnu.org'. * doc/guix.texi: Replace "Guix" by "GNU Guix" in some places. (Top, Introduction): Mention "for the GNU system". * HACKING, README: Use "GNU Guix" instead of "Guix" in some places. Ludovic Courtès2012-11-184-16/+17
* distro: Rebuild bootstrap Binutils and GCC.•••These new binaries are built with the `--with-lib-path' and `--with-local-prefix' flags, respectively, as introduced in commit 01d4540. * distro/packages/bootstrap.scm (%bootstrap-coreutils&co, %bootstrap-glibc): Update URL. (%bootstrap-binutils, %bootstrap-gcc): Update URL and hashes. * build-aux/download.scm (file-name->uri): Update URL. Ludovic Courtès2012-11-162-11/+12
* distro: Configure ld and GCC to not look under /usr & co.•••This fixes impurities with non-chroot builds on LFS-style distros. * distro/packages/base.scm (binutils): Pass `--with-lib-path'. (gcc-4.7): Pass `--with-local-prefix'. * distro/packages/make-bootstrap.scm (%binutils-static): Pass `--with-lib-path'. Ludovic Courtès2012-11-162-4/+9
* guix-download: Use code from (guix build download).•••* guix-download.in (http-fetch, ftp-fetch): Remove. (fetch-and-store): Replace `uri' parameter with `name', for the output file name. Redirect the output of `fetch' to the error port. (guix-download): Call `url-fetch' for all URI schemes except `file'. Handle PATH equal to #f. * guix/download.scm: Export `%mirrors'. * tests/guix-download.sh: Change erroneous URL, because URLs at example.com are all valid redirections. Ludovic Courtès2012-11-133-50/+29
* 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. Ludovic Courtès2012-11-133-9/+20
* guix-download: Gracefully handle invalid URIs.•••* guix-download.in (guix-download): Error out when `string->uri' returns #f. Use `leave' when the scheme is unknown. * tests/guix-download.sh: Add tests. Ludovic Courtès2012-11-132-6/+11
* distro: Add GNU Texinfo.•••* distro/packages/texinfo.scm: New file. * Makefile.am (MODULES): Add it. Ludovic Courtès2012-11-132-1/+62
* distro: Add GNU Libtasn1 and GnuTLS.•••* distro/packages/gnutls.scm: New file. * Makefile.am (MODULES): Add it. Ludovic Courtès2012-11-132-0/+89
* distro: Add GNU Nettle.•••* distro/packages/nettle.scm: New file. * Makefile.am (MODULES): Add it. Ludovic Courtès2012-11-132-0/+64
* distro: Add LZO.•••* distro/packages/compression.scm (lzo): New variable. Ludovic Courtès2012-11-131-0/+25
* tests: Make sure to use the bootstrap Guile.•••* tests/builders.scm ("url-fetch", "gnu-build"): Pass `url-fetch' #:guile %BOOTSTRAP-GUILE. Ludovic Courtès2012-11-131-2/+4
* tests: Remove extraneous test.•••* tests/derivations.scm ("build-expression->derivation for fixed-output derivation"): Remove test. It is redundant with that in builders.scm, and doesn't work out of the box with the statically-linked %BOOTSTRAP-GUILE. Ludovic Courtès2012-11-131-24/+0
* 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. Ludovic Courtès2012-11-131-7/+7
* 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. Ludovic Courtès2012-11-133-1/+59
* distro: Use `mirror://' URLs.•••* distro/packages/base.scm, distro/packages/bash.scm, distro/packages/compression.scm, distro/packages/gawk.scm, distro/packages/gperf.scm, distro/packages/guile.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/pth.scm, distro/packages/readline.scm, distro/packages/recutils.scm: Use `mirror://gnu' URLs. * distro/packages/gnupg.scm: Use `mirror://gnupg' URLs. Ludovic Courtès2012-11-1316-35/+34
* download: Add support for mirror:// URLs.•••* guix/download.scm (%mirrors): New variable. Mirror lists taken from Nixpkgs. (url-fetch): New `mirrors' keyword parameter. [builder]: Pass it. * guix/build/download.scm (url-fetch): New `mirrors' keyword parameter. [maybe-expand-mirrors]: New procedure. [uri]: Use it. Ludovic Courtès2012-11-132-7/+86
* download: Follow HTTP redirections.•••* guix/build/download.scm (http-fetch): Follow the redirection when CODE is 302. Ludovic Courtès2012-11-131-8/+16
* 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'. Ludovic Courtès2012-11-1329-371/+72
* 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'. Ludovic Courtès2012-11-126-1/+248
* 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'. Ludovic Courtès2012-11-1112-322/+392
* tests: Choose a less expensive test for packages.•••* tests/packages.scm (%bootstrap-inputs): Remove. ("GNU Hello"): Rename to... ("GNU Make, bootstrap"): ... this. Build GNU-MAKE-BOOT0 instead of HELLO. Ludovic Courtès2012-11-091-13/+9
* http: Add informative output.•••* guix/build/http.scm (http-fetch): Emit message indicating the download. Ludovic Courtès2012-11-091-0/+3
* http: Check the HTTP response code, and bail if not 200.•••* guix/build/http.scm (http-fetch): Check RESP's code; error out when it's not 200. Ludovic Courtès2012-11-091-6/+13
* derivations: build-expression->derivation: Builder only refers to sources.•••* guix/derivations.scm (build-expression->derivation)[source-path]: New procedure. [builder]: Pass only sources as references. This fixes a bug whereby changing a fixed-output drv referred to by a builder would cause the builder's hash to change, thereby leading to a full rebuild. * tests/derivations.scm ("build-expression->derivation with a fixed-output input"): New test. Ludovic Courtès2012-11-092-1/+54
* 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