summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-01-09derivations: Fix `derivation-prerequisites-to-build' when outputs are there.Ludovic Courtès
Before it would list inputs not built, even if the outputs of the given derivation were already available. * guix/derivations.scm (derivation-prerequisites-to-build): Add `outputs' keyword parameter. [built?, derivation-built?]: New procedures. [loop]: Add `sub-drvs' parameter. Use `derivation-built?' to check if the SUB-DRVS of DRV are built before checking its inputs.
2013-01-08doc: Update porting instructions in `HACKING'.Ludovic Courtès
* HACKING (When the platform is supported by Nixpkgs): Update instructions.
2013-01-08gnu-maintenance: Add `latest-release' and related tools.Ludovic Courtès
* guix/gnu-maintenance.scm (ftp-server/directory, releases, version-string>?, latest-release, gnu-package-name->name+version): New procedures. (%package-name-rx): New variable.
2013-01-08guix-package: Use `guile-final', not `guile-2.0' to build the environment.Ludovic Courtès
* guix-package.in (guix-package): Use either %BOOTSTRAP-GUILE or GUILE-FINAL.
2013-01-08guix-package: Be verbose when Guile itself needs to be built.Ludovic Courtès
* guix-package.in (guix-package)[guile-missing?]: New procedure. (guix-package): Always redirect `current-build-output-port' to `current-error-port' when (guile-missing?).
2013-01-07guix-package: Remove `-b' shorthand for `--bootstrap'.Ludovic Courtès
* guix-package.in (%options): Remove #\b as an alternate for "bootstrap". (show-help): Adjust accordingly. * tests/guix-package.sh: Use `--bootstrap' instead of `-b'.
2013-01-07snix: Update `license' check in unit test.Ludovic Courtès
* tests/snix.scm ("nixpkgs->guix-package"): Expect `license' to be a symbol. This is a follow-up to commit e7aa73e.
2013-01-07snix: Use (guix licenses) variables.Ludovic Courtès
* guix/snix.scm (snix-derivation->guix-package)[license-variable]: New procedure. Use it to determine the variable name for the license.
2013-01-07snix: Gracefully handle `null' in Nix build inputs.Ludovic Courtès
* guix/snix.scm (snix-derivation->guix-package)[convert-inputs]: Gracefully handle `null' as an input.
2013-01-07distro: Add GNU Aspell.Ludovic Courtès
* distro/packages/aspell.scm: New file. * Makefile.am (MODULES): Add it.
2013-01-07distro: Add GSL.Ludovic Courtès
* distro/packages/algebra.scm (gsl): New variable.
2013-01-07distro: Add GNU GLOBAL.Ludovic Courtès
* distro/packages/global.scm: New file. * Makefile.am (MODULES): Add it.
2013-01-07distro: Add Tcl, Expect, and DejaGNU.Ludovic Courtès
* distro/packages/dejagnu.scm, distro/packages/tcl.scm: New files. * Makefile.am (MODULES): Add them.
2013-01-06distro: bdb: Adjust to lack of /bin/sh.Ludovic Courtès
* distro/packages/bdb.scm (bdb): Pass `CONFIG_SHELL' and `SHELL' to the `configure' script.
2013-01-06Update a few more license headers.Ludovic Courtès
* distro/packages/openssl.scm, m4/guix.m4, nix/sync-with-upstream: Update headers.
2013-01-06download: Report the progress of HTTP downloads.Ludovic Courtès
* guix/build/download.scm (http-fetch): Rename `bv' to `bv-or-port'. Use `http-get*' followed by `dump-port' when the former is available, and pass a progress procedure to `dump-port'.
2013-01-06download: Report the progress of FTP downloads.Ludovic Courtès
* guix/build/download.scm (progress-proc): New procedure. (ftp-fetch): Call `ftp-size' on URI. Use `progress-proc', and pass the result to `dump-port', along with #:buffer-size.
2013-01-06ftp-client: Add `ftp-size'.Ludovic Courtès
* guix/ftp-client.scm (ftp-size): New procedure.
2013-01-06distro: time: Adjust `configure' phase to old `configure' script.Ludovic Courtès
* distro/packages/time.scm (time): Add `arguments'.
2013-01-06Merge branch 'master' into core-updatesLudovic Courtès
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-06distro: Update bootstrap binaries to an nscd-less libc.Ludovic Courtès
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-06Update license headers.Ludovic Courtès
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-06Add `guix-gc'.Ludovic Courtès
* 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-06guix-build: Make `--root' effective for .drv files too.Ludovic Courtès
* guix-build.in (guix-build)[register-root]: Change first argument to `paths', which should be a list of store paths. Update caller to call `derivation-path->output-paths' on DRV. When `derivations-only?', also register root for .drv files.
2013-01-05derivations: Add `derivation-path->output-paths'.Ludovic Courtès
* guix/derivations.scm (derivation-path->output-paths): New procedure. * tests/derivations.scm ("multiple-output derivation"): Test it.
2013-01-05Update license headers of builder-side code.Ludovic Courtès
Change license headers with this script: (use-modules (guix build utils)) (fluid-set! %default-port-encoding "UTF-8") (substitute* (cons "distro/packages/ld-wrapper.scm" (find-files "guix/build" "\\.scm$")) (("^([[: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 ©"))) * distro/packages/ld-wrapper.scm, guix/build/download.scm, guix/build/gnu-build-system.scm, guix/build/union.scm, guix/build/utils.scm: Update license headers.
2013-01-05utils: Add `which'.Ludovic Courtès
* guix/build/utils.scm (which): New procedure. * distro/packages/lsh.scm (lsh): Use `which' instead of `search-path'. * distro/packages/perl.scm (perl): Likewise. * distro/packages/attr.scm (attr): Likewise.
2013-01-05ui: Factorize bug-report information in `--help'.Ludovic Courtès
* guix/config.scm.in (%guix-home-page-url): New variable. * guix/ui.scm (show-bug-report-information): New procedure. * guix-build.in (show-help): Use it. * guix-download.in (show-help): Likewise. * guix-import.in (show-help): Likewise. * guix-package.in (show-help): Likewise.
2013-01-05distro: make-bootstrap: Add `%bootstrap-tarballs' package.Ludovic Courtès
* distro/packages/make-bootstrap.scm (%bootstrap-tarballs): New variable.
2013-01-05distro: make-bootstrap: Build glibc without nscd, and with static NSS modules.Ludovic Courtès
* distro/packages/make-bootstrap.scm (%glibc-with-relocatable-system): Rename to... (%glibc-for-bootstrap): ... this. Add new configure flags.
2013-01-04distro: make-bootstrap: Make the Coreutils smaller.Ludovic Courtès
* distro/packages/make-bootstrap.scm (%static-inputs)[coreutils]: Remove optional dependencies, except Perl; build with "-Os -g0"; disable tests.
2013-01-04distro: make-bootstrap: Fix arguments to gawk.Ludovic Courtès
* distro/packages/make-bootstrap.scm (%static-inputs)[gawk]: Use `substitute-keyword-arguments' to preserve the #:phases argument of GAWK.
2013-01-02distro: libtool: Add a "bin" output.Ludovic Courtès
* distro/packages/autotools.scm (libtool): Add a "bin" output. * distro/packages/base.scm (guile-final): Remove comment about retained dependency.
2013-01-02distro: ncurses: Don't retain a reference to the bootstrap Bash.Ludovic Courtès
* distro/packages/ncurses.scm (ncurses): Remove #:patch-shebangs? argument since it now has no effect. Simplify PATCH-MAKEFILE-PHASE. Add `configure-phase', and use it.
2013-01-02distro: coreutils: Enable tests; add dependency on ACL and GMP.Ludovic Courtès
* distro/packages/base.scm (coreutils): Set #:parallel-build? #f. Add `patch-shell-references' phase. Add 'acl', 'gmp', and 'perl' as inputs, as suggested by Nikita Karetnikov.
2013-01-02distro: acl: Patch references to /bin/sh.Ludovic Courtès
* distro/packages/acl.scm (acl): Add `patch-makefile-SHELL' phase.
2013-01-02distro: gettext: Fix references to /bin/sh.Ludovic Courtès
* distro/packages/gettext.scm (gettext): Add `patch-tests' phase.
2013-01-02daemon: Show the chroot contents upon `--debug'.Ludovic Courtès
* nix/nix-daemon/guix-daemon.cc (main)[HAVE_CHROOT]: Display the contents of `settings.dirsInChroot' at `lvlDebug'.
2013-01-02distro: Add Berkeley DB.Andreas Enge
* distro/packages/bdb.scm: New file. * Makefile.am (MODULES): Add it.
2013-01-02distro: openssl: Build shared libraries.Ludovic Courtès
* distro/packages/openssl.scm (openssl): `configure' phase: pass "shared --libdir=lib".
2013-01-02distro: Add OpenSSL.Andreas Enge
* distro/packages/openssl.scm: New file. `patch-tests' phase added by Ludovic Courtès. * Makefile.am (MODULES): Add it.
2013-01-02release.nix: Update to new bootstrap Guile tarball.Ludovic Courtès
* release.nix (bootstrap_guile): Update URLs and SHA256. (build)[preBuild]: Adjust tarball name.
2013-01-02distro: Add MIT Kerberos 5.Andreas Enge
* distro/packages/mit-krb5.scm: New file. * Makefile.am (MODULES): Add it.
2013-01-02daemon: Properly initialize libgcrypt.Ludovic Courtès
* nix/nix-daemon/guix-daemon.cc (main): Call `gcry_check_version'.
2013-01-02tests: Adjust to not rely on /bin/sh.Ludovic Courtès
* tests/derivations.scm (%bash): New variable. Replace occurrences of "/bin/sh" by %BASH. * tests/union.scm ("union-build"): Delete duplicates from %BOOTSTRAP-INPUTS.
2013-01-02distro: sed: Patch references to /bin/sh in the test suite.Ludovic Courtès
* distro/packages/base.scm (sed): Add `patch-test-suite' phase.
2013-01-01distro: glibc: Build the statically-linked Bash embedded in glibc.Ludovic Courtès
* distro/packages/base.scm (glibc): Expect "static-bash" to be a directory, not a single file. Call `remove-store-references' on the "bash" binary that is copied. Add an `sh' -> `bash' symlink. Change the "static-bash" input to (static-package bash-light). (glibc-final): Rename to... (glibc-final-with-bootstrap-bash): ... this. Change `name' to "glibc-intermediate". Remove #:patch-shebangs? setting. (cross-gcc-wrapper): New procedure, with code formerly in GCC-BOOT0-WRAPPED. (gcc-boot0-wrapped): Use it. (static-bash-for-glibc): New variable. (glibc-final): Inherit from GLIBC-FINAL-WITH-BOOTSTRAP-BASH, and use STATIC-BASH-FOR-GLIBC as the "static-bash" input.
2013-01-01distro: glibc: Fix contradicting settings of `BASH_SHELL'.Ludovic Courtès
* distro/packages/base.scm (glibc-final): Remove `ac_cv_path_BASH_SHELL' setting. (glibc): Set `BASH_SHELL' instead of `ac_cv_path_BASH_SHELL'.
2013-01-01utils: Use binary I/O primitives for `remove-store-references'.Ludovic Courtès
* guix/build/utils.scm (fold-port-matches)[get-char]: New procedure. (remove-store-references): Use `put-u8' and `put-bytevector'.
2013-01-01build-system/gnu: Add `static-package'.Ludovic Courtès
* distro/packages/make-bootstrap.scm (static-package): Move to... * guix/build-system/gnu.scm (static-package): ... here. New procedure.