summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* distro: Add tools to build a tarball of statically-linked Binutils programs.Ludovic Courtès2012-10-20
| | | | | * distro/packages/base.scm (%binutils-static, %binutils-static-stripped, %binutils-bootstrap-tarball): New variables.
* distro: Add a package to build a tarball of the bootstrap binaries.Ludovic Courtès2012-10-20
| | | | | | * distro/packages/base.scm (tarball-package): New procedure. (%bootstrap-binaries-tarball): New variable. (%guile-bootstrap-tarball): Define in terms of `tarball-package'.
* guix-build: Add `--system'.Ludovic Courtès2012-10-18
| | | | | | | | | | * guix-build.in (derivations-from-package-expressions): New `system' parameter. Pass it to `package-derivation'. (%default-options): Add `system' pair. (show-help): Describe `--system'. (%options): Add it. (guix-build): Check the `system' pair in OPTS; pass it to `derivations-from-package-expressions' and `package-derivation'.
* distro: Provide a more descriptive report when a bootstrap binary is missing.Ludovic Courtès2012-10-18
| | | | | * distro/packages/base.scm (%bootstrap-guile): Error out when `search-bootstrap-binary' returns #f.
* distro: Use the bootstrap Guile for the derivation of sources.Ludovic Courtès2012-10-18
| | | | | | | | | | | | * distro/packages/base.scm (bootstrap-origin, package-with-bootstrap-guile): New procedures. (gnu-make-boot0, diffutils-boot0, findutils-boot0, binutils-boot0, gcc-boot0, linux-libre-headers-boot0, glibc-final, bash-final, guile-final): Use `package-with-bootstrap-guile'. (gcc-boot0-wrapped): Clear `source'. * guix/ftp.scm (ftp-fetch): Add a #:guile keyword parameter. Honor it. * guix/http.scm (http-fetch): Likewise.
* http/ftp: Tweak to avoid depending on libc's NSS.Ludovic Courtès2012-10-18
| | | | | | | | | | | * guix/build/http.scm (open-connection-for-uri): New procedure. (http-fetch): Use it. Pass the result as a #:port argument to `http-get'. Add hack to modify the `set-port-encoding!' binding in (web response). * guix/ftp-client.scm (ftp-open): Add optional `port' parameter, defaulting to 21. When calling `getaddrinfo', convert PORT to a string and pass AI_NUMERICSERV when PORT is a number.
* guix-build: Add `--local-build'.Ludovic Courtès2012-10-18
| | | | | | | * guix-build.in (show-help): Add `--local-build'. (%options): Likewise. (guix-build): Pass `set-build-options' the #:use-substitutes? argument accordingly.
* distro: bzip2: Simplify installation phase with `find-files'.Ludovic Courtès2012-10-18
| | | | | * distro/packages/base.scm (bzip2): Use `find-files' instead of rolling our own with `file-system-fold'.
* distro: %static-binaries: Use (guix build utils).Ludovic Courtès2012-10-18
| | | | | * distro/packages/base.scm (%static-binaries): Add missing use of (guix build utils).
* distro: Fix bootstrapping regression recently introduced.Ludovic Courtès2012-10-18
| | | | | * distro/packages/base.scm (gcc-boot0-wrapped): Fix typo introduced in a52e429f76282080c58444ce2ac82a1968d5f29d ("distro: Add i686 support.")
* distro: Clear references to the store in static binaries.Ludovic Courtès2012-10-17
| | | | | * distro/packages/base.scm (%static-binaries): Clear references to the store path for files in $out/bin.
* utils: Add `find-files'.Ludovic Courtès2012-10-17
| | | | * guix/build/utils.scm (find-files): New procedure.
* utils: Add `copy-recursively'; use it.Ludovic Courtès2012-10-17
| | | | | | * guix/build/utils.scm (copy-recursively): New procedure. * distro/packages/base.scm (%guile-static-stripped): Use it.
* utils: Add `mkdir-p'; use it.Ludovic Courtès2012-10-17
| | | | | | | | * guix/build/utils.scm (mkdir-p): New procedure. * distro/packages/base.scm (gnu-make-boot0, gcc-boot0-wrapped, ld-wrapper-boot3, %static-binaries, %guile-static-stripped): Use it. * distro/packages/typesetting.scm (lout): Likewise.
* build-system/gnu: Pass the system type to the builder.Ludovic Courtès2012-10-17
| | | | | * guix/build-system/gnu.scm (gnu-build)[builder]: Pass SYSTEM to `gnu-build' as a keyword argument.
* distro: Add i686 support.Nikita Karetnikov2012-10-17
| | | | | * distro/packages/base.scm (gcc-4.7): Turn `arguments' into a lambda. Use `glibc-dynamic-linker' instead of the hard-coded linker name.
* distro: Switch to Linux-Libre.Ludovic Courtès2012-10-17
| | | | | | | | * distro/packages/base.scm (linux-headers): Rename to... (linux-libre-headers): ... this. Change `name', `source', and `description', and `home-page' accordingly. Update users. (linux-headers-boot0): Rename to... (linux-libre-headers-boot0): ... this. Update users.
* distro: Use our own pre-built Guile to bootstrap.Ludovic Courtès2012-10-17
| | | | | | | | | | | | | | | | | | | | | | | * distro/packages/base.scm (%bootstrap-guile): Build from a tarball containing a pre-built Guile. * distro.scm (%bootstrap-binaries-directory): New variable. (search-bootstrap-binary): New procedure. * Makefile.am (bootstrapdir, bootstrap_x86_64_linuxdir, dist_bootstrap_x86_64_linux_DATA, DISTCLEANFILES, DOWNLOAD_FILE): New variables. (distro/packages/bootstrap/x86_64-linux/guile-bootstrap-2.0.6.tar.xz): New rule. (EXTRA_DIST): Add `build-aux/download.scm'. (.scm.go): Define the `DISTRO_BOOTSTRAP_DIRECTORY' and `DISTRO_INSTALLED_BOOTSTRAP_DIRECTORY' environment variables. * pre-inst-env.in: Define `DISTRO_BOOTSTRAP_DIRECTORY'. * build-aux/download.scm: New file. * distro/packages/bootstrap/x86_64-linux/{bash, mkdir, tar, xz}: New files.
* distro: Add package that builds a tarball of the bootstrap Guile.Ludovic Courtès2012-10-17
| | | | * distro/packages/base.scm (%guile-static-stripped): New variable.
* distro: Add patch to allow the bootstrap Guile to work without iconv.Ludovic Courtès2012-10-17
| | | | | | | | * distro/patches/guile-default-utf8.patch: New file. * Makefile.am (dist_patch_DATA): Add it. * distro/packages/base.scm (%guile-static): Use it. (%guile-static-stripped): Add call to `remove-store-references'.
* distro: Change relocatable-Guile patch to work around broken argv[0].Ludovic Courtès2012-10-17
| | | | | | * distro/patches/guile-relocatable.patch: Change to use /proc/self/exe instead of PROGRAM_INVOCATION_NAME. Useful because Nix itself passes just the basename of builders that it executes.
* build: Use `pre-inst-env' to run tests.Ludovic Courtès2012-10-17
| | | | | * Makefile.am (TESTS_ENVIRONMENT): Remove. (LOG_COMPILER): Use `pre-inst-env'.
* release.nix: Add dependency on GNU Texinfo.Ludovic Courtès2012-10-17
| | | | * release.nix (tarball)[buildNativeInputs]: Add `texinfo'.
* utils: Add `fold-port-matches' and `remove-store-references'.Ludovic Courtès2012-10-16
| | | | | | | | * guix/build/utils.scm (fold-port-matches, remove-store-references): New procedures. * tests/build-utils.scm ("fold-port-matches", "fold-port-matches, trickier", "fold-port-matches, with unmatched chars"): New tests.
* utils: Add `with-atomic-file-replacement'.Ludovic Courtès2012-10-16
| | | | | * guix/build/utils.scm (with-atomic-file-replacement): New procedure. (substitute): Use it.
* distro: Add a statically-linked, relocatable Guile 2.0 package.Ludovic Courtès2012-10-13
| | | | | | | | * distro/packages/base.scm (%guile-static, %guile-static-stripped): New variables. * distro/patches/guile-relocatable.patch: New file. * Makefile.am (dist_patch_DATA): Add it.
* ftp-client: Try all the addresses returned by `getaddrinfo'.Ludovic Courtès2012-10-13
| | | | | * guix/ftp-client.scm (ftp-open): Upon connection failure, try the other addresses returned by `getaddrinfo'.
* doc: Add the stub of a manual.Ludovic Courtès2012-10-13
| | | | | | | | * doc/guix.texi: New file. * doc/fdl-1.3.texi: New file, copied from Gnulib. * Makefile.am (info_TEXINFOS): New variable. (EXTRA_DIST): Add `doc/fdl-1.3.texi'.
* distro: Add missing bits from previous commit.Ludovic Courtès2012-10-11
| | | | * distro/packages/base.scm (default-keyword-arguments): New procedure.
* distro: First stab at building statically-linked bootstrap binaries.Ludovic Courtès2012-10-11
| | | | | * distro/packages/base.scm (static-package): New procedure. (%bash-static, %static-inputs, %static-binaries): New variables.
* Remove non-existent module from (guix).Ludovic Courtès2012-10-08
| | | | | * guix.scm (%public-modules): Remove `snix', since that modules doesn't exist yet.
* packages: Fix and optimize memoization of `package-derivation'.Ludovic Courtès2012-10-08
| | | | | | * guix/packages.scm (%derivation-cache): Pass an initial size of 100. (cache): Use `hashq-set!', and use a SYSTEM/DRV pair as the value. (cached-derivation): Update accordingly.
* packages: Micro-optimize `package-derivation'.Ludovic Courtès2012-10-08
| | | | | * guix/packages.scm (package-derivation): Move `cache' call before the traversal of PACKAGE's inputs.
* derivations: Set input port to UTF-8 in `read-derivation'.Ludovic Courtès2012-10-07
| | | | | * guix/derivations.scm (read-derivation): Set DRV-PORT's encoding to UTF-8.
* Update the (guix) module.Ludovic Courtès2012-10-07
| | | | | * guix.scm (%public-modules): Update list of current second-level modules.
* tests: Use bootstrap and Nixpkgs inputs to be less costly.Ludovic Courtès2012-10-07
| | | | | | | | | | | | * tests/builders.scm (%bootstrap-inputs, %bootstrap-guile): New variables. ("gnu-build"): Use them, by setting `#:implicit-inputs? #f' and `#:guile'. * tests/packages.scm (%bootstrap-inputs, %bootstrap-guile): New variables. ("trivial"): Pass `#:guile %bootstrap-guile'. ("GNU Hello"): Use `package-with-explicit-inputs' to use %BOOTSTRAP-GUILE and %BOOTSTRAP-INPUTS.
* build-system/{gnu,trivial-build}: Fix handling of #:guile argument.Ludovic Courtès2012-10-07
| | | | | | | | * guix/build-system/gnu.scm (gnu-build)[guile-for-build]: Check whether GUILE matches string? before checking whether it matches derivation-path?. * guix/build-system/trivial.scm (trivial-build)[guile-for-build]: Likewise.
* distro: Specify use of the bootstrap Guile for the initial derivations.Ludovic Courtès2012-10-06
| | | | | | | | * distro/packages/base.scm (%bootstrap-guile): New variable. (gnu-make-boot0, diffutils-boot0, findutils-boot0, binutils-boot0, gcc-boot0, linux-headers-boot0, glibc-final, gcc-boot0-wrapped, gcc-final, ld-wrapper-boot3, bash-final, guile-final): Add `#:guile %bootstrap-guile' to the builder's arguments.
* build-system/{gnu,trivial}: Add a `#:guile' keyword parameter.Ludovic Courtès2012-10-06
| | | | | | | | | | | * guix/build-system/gnu.scm (package-with-explicit-inputs): New `guile' keyword parameter. Add it to P's arguments, and pass it in recursive calls. (gnu-build): New `guile' keyword parameter; new `guile-for-build' variable. Pass it as the `#:guile-for-build' parameter of `build-expression->derivation'. * guix/build-system/trivial.scm (trivial-build): Likewise.
* Support build-cores = 0; change `guix-build' to default to 0.Ludovic Courtès2012-10-05
| | | | | | | * guix/build/gnu-build-system.scm (%parallel-job-count): New variable. (build, check): Use it instead of $NIX_BUILD_CORES. * guix-build.in (guix-build): Default to 0 for the #:build-cores option.
* Augment `README'.Ludovic Courtès2012-10-05
| | | | | * README (Hacking): Mention `--with-nixpkgs'. List the autotools and Gettext, as suggested by Nikita Karetnikov <nikita.karetnikov@gmail.com>.
* distro: Fix typo in warning message.Ludovic Courtès2012-10-04
| | | | * distro.scm (package-files): Add missing newline in warning message.
* Add `pre-inst-env' script.Ludovic Courtès2012-10-04
| | | | | * pre-inst-env.in: New file. * configure.ac: Add it to `AC_CONFIG_FILES' and `AC_CONFIG_COMMANDS'.
* Fix and update `POTFILES.in'.Ludovic Courtès2012-10-04
| | | | * po/POTFILES.in: Update.
* distro: Add libgc.Ludovic Courtès2012-09-26
| | | | | * distro/packages/base.scm (libgc): New variable. (guile-2.0): Use it.
* distro: Add pkg-config.Ludovic Courtès2012-09-26
| | | | | | * distro/packages/base.scm (pkg-config): New variable. (guile-2.0): Use it. * distro/packages/guile.scm (guile-reader): Likewise.
* distro: Add the `guile', `typesetting', and `databases' package modules.Ludovic Courtès2012-09-26
| | | | | | | | | | | | | * distro.scm (package-files): Adjust PREFIX-LEN to use the top-level directory, not %DISTRO-MODULE-DIRECTORY. * distro/packages/base.scm (guile-reader, guile-reader/guile-1.8, guile-reader/guile-2.0, lout, recutils): Move to... * distro/packages/guile.scm, distro/packages/typesetting.scm, distro/packages/databases.scm: ... here. New files. * Makefile.am (MODULES): Add them. (EXTRA_DIST): Add `.dir-locals.el'. * .dir-locals.el: New file, with settings formerly in `base.scm'.
* distro: Rename (distro ...) to (distro packages ...).Ludovic Courtès2012-09-26
| | | | | | | | | | * distro/base.scm, distro/ld-wrapper.scm: Move to `distro/packages'. Adjust LD-WRAPPER-BOOT3 input file name accordingly. * Makefile.am (MODULES): Adjust accordingly. * distro.scm (%distro-module-directory): Change to "/distro/packages". * guix/build-system/gnu.scm (standard-inputs): Change module name to (distro packages base). * tests/packages.scm (test-packages): Likewise.
* distro: GCC: Upgrade to 4.7.2.Ludovic Courtès2012-09-26
| | | | * distro/base.scm (gcc-4.7): Upgrade to 4.7.2.
* distro: Add an `ld' wrapper, to pass missing `-rpath' flags.Ludovic Courtès2012-09-26
| | | | | | | | | | | * distro/ld-wrapper.scm: New file. * Makefile.am (MODULES): Add it. * distro/base.scm (ld-wrapper-boot3): New variable. (%boot3-inputs): Add LD-WRAPPER-BOOT3. (bash-final, guile-final, ld-wrapper): New final. (%final-inputs): Use BASH-FINAL; add LD-WRAPPER. (gcc-4.7): Remove the `-rpath' trick from the `lib' spec string.