Age | Commit message (Expand) | Author |
2012-11-04 | doc: Add "Adding new packages" in `HACKING'....* HACKING (Adding new packages): New section.
| Ludovic Courtès |
2012-11-04 | 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ès |
2012-11-04 | guix-package: Remove extraneous procedures....* guix-package.in (_, N_): Remove.
| Ludovic Courtès |
2012-11-04 | 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ès |
2012-11-04 | release.nix: Pass `--with-libgcrypt-prefix' in the `tarball' job....* release.nix (jobs.tarball)[configureFlags]: Pass
`--with-libgcrypt-prefix'.
| Ludovic Courtès |
2012-11-04 | 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ès |
2012-11-03 | 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ès |
2012-11-03 | guix-package: Use more (guix ui) features....* guix-package.in (leave): Remove.
(guix-package): Wrap body in `with-error-handling'.
| Ludovic Courtès |
2012-11-03 | 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ès |
2012-11-03 | 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ès |
2012-11-03 | 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ès |
2012-11-02 | tests: Run without substitutes....* tests/builders.scm, tests/derivations.scm, tests/packages.scm: Set
#:use-substitutes? #f for %STORE.
| Ludovic Courtès |
2012-11-01 | 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ès |
2012-11-01 | 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ès |
2012-11-01 | 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ès |
2012-11-01 | 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ès |
2012-11-01 | 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ès |
2012-10-31 | 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ès |
2012-10-31 | 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ès |
2012-10-30 | 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ès |
2012-10-29 | 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ès |
2012-10-28 | 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ès |
2012-10-28 | distro: Build Bash sequentially....* distro/packages/base.scm (bash): Set `#:parallel-build?' and
`#:parallel-tests?' to #f.
| Ludovic Courtès |
2012-10-28 | tests: Use our own bootstrap tools....* tests/builders.scm (%bootstrap-inputs): Use %BOOT0-INPUTS from the distro.
* tests/packages.scm (%bootstrap-inputs): Likewise.
* tests/derivations.scm (%coreutils): Alias for %BOOTSTRAP-COREUTILS&CO.
| Ludovic Courtès |
2012-10-27 | release.nix: Add a `distro.hello' job....* release.nix (distro.hello): New job.
| Ludovic Courtès |
2012-10-27 | build: Preserve the executable bit of bootstrap binaries....* Makefile.am (install-data-hook): New target.
| Ludovic Courtès |
2012-10-27 | build: Make sure scripts know where to find their modules....* guix-build.in, guix-download.in: Define `prefix' and `datarootdir', so
that `guilemoduledir' expands to something meaningful.
| Ludovic Courtès |
2012-10-27 | release.nix: Pre-download the Guile bootstrap tarball....* release.nix (bootstrap_guile): New variable.
(build)[preBuild]: New attribute.
| Ludovic Courtès |
2012-10-27 | build: Fix out-of-source-tree builds....* 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):
Make the target's parent directory.
* pre-inst-env.in (DISTRO_BOOTSTRAP_PATH): Add the builddir-relative
directory.
| Ludovic Courtès |
2012-10-27 | distro: Change $DISTRO_{PATCH,BOOTSTRAP}_DIRECTORY to search paths....* distro.scm (not-colon): New variable.
(%patch-directory): Rename to...
(%patch-path): ... this. Turn into a list. Expect $DISTRO_PATCH_PATH
to be a colon-separated search path.
(%bootstrap-binaries-directory): Rename to...
(%bootstrap-binaries-path): ... this. Likewise.
(search-patch, search-bootstrap-binary): Adjust accordingly.
* pre-inst-env.in: Change to use `DISTRO_PATCH_PATH' and
`DISTRO_BOOTSTRAP_PATH'.
| Ludovic Courtès |
2012-10-27 | release.nix: Set succeed-on-failure and build-out-source-tree....* release.nix: Define `succeedOnFailure', `keepBuildDirectory', and
`buildOutOfSourceTree'.
(build): Inherit them.
| Ludovic Courtès |
2012-10-27 | build: Move `distro/patches' to `distro/packages/patches'....* distro/patches: Move directory to...
* distro/packages/patches: ... here.
* Makefile.am (dist_patch_DATA): Adjust accordingly.
* pre-inst-env.in (DISTRO_PATCH_DIRECTORY): Likewise.
| Ludovic Courtès |
2012-10-27 | build: Use `pre-inst-env' to compile the source....* Makefile.am (.scm.go): Use `pre-inst-env' instead of re-defining the
environment variables, except for `DISTRO_INSTALLED_PATCH_DIRECTORY'
and `DISTRO_INSTALLED_BOOTSTRAP_DIRECTORY'.
| Ludovic Courtès |
2012-10-27 | guix-build: Gracefully handle `&package-input-error' conditions....* guix/packages.scm: Export `package-error?' and `package-input-error?'.
* guix-build.in (guix-build): Catch `&package-input-error' conditions,
print a human-readable message, and exit.
| Ludovic Courtès |
2012-10-27 | location: Start column numbers at 1....* guix/utils.scm (source-properties->location): Use COL + 1.
| Ludovic Courtès |
2012-10-26 | distro: Add i686-linux port....* distro/packages/bootstrap/i686-linux/bash,
distro/packages/bootstrap/i686-linux/mkdir,
distro/packages/bootstrap/i686-linux/tar,
distro/packages/bootstrap/i686-linux/xz: New files.
* distro/packages/base.scm (%bootstrap-coreutils&co,
%bootstrap-binutils, %bootstrap-glibc, %bootstrap-gcc): Add hashes of
the i686-linux tarballs.
* Makefile.am (bootstrap_i686_linuxdir, dist_bootstrap_i686_linux_DATA,
nodist_bootstrap_i686_linux_DATA): New variables
(DISTCLEANFILES): Add $(nodist_bootstrap_i686_linux_DATA).
(distro/packages/bootstrap/i686-linux/guile-bootstrap-2.0.6.tar.xz):
New rule.
| Ludovic Courtès |
2012-10-26 | distro: gcc: Adjust to support non-x86_64 architectures....* distro/packages/base.scm (gcc-4.7)[arguments]: In the `pre-configure'
phase, patch all the relevant gcc/config files, not just those for
x86_64-linux-gnu.
| Ludovic Courtès |
2012-10-26 | utils: Remove special `substitute*' syntax for lists of files....* guix/build/utils.scm (substitute*): Remove special syntax for
list-of-files; instead, check whether FILE is `list?' at run time.
* distro/packages/base.scm (gcc-4.7, %binutils-static): Adjust
accordingly.
| Ludovic Courtès |
2012-10-25 | doc: Add `HACKING'....* HACKING: New file.
* Makefile.am (EXTRA_DIST): Add it.
| Ludovic Courtès |
2012-10-25 | Add a `system' parameter to `nixpkgs-derivation'....* guix/utils.scm (nixpkgs-derivation): Add a `system' parameter. Pass
it in the `nix-instantiate' invocation.
| Ludovic Courtès |
2012-10-25 | packages: Pass `system' around....* guix/packages.scm (package-source-derivation): Add `system'
parameter. Pass it to METHOD.
(package-derivation)[expand-input]: Pass SYSTEM to
`package-derivation' and `package-source-derivation'.
* distro/packages/base.scm (package-with-bootstrap-guile)[boot]: Pass
SYSTEM to FETCH.
| Ludovic Courtès |
2012-10-25 | derivations: Make sure `build-expression->derivation' & co. pass `system'....* guix/derivations.scm (imported-files): Call
`build-expression->derivation' with SYSTEM, not (%current-system).
(build-expression->derivation): Pass SYSTEM to `imported-modules' and
`compiled-modules'.
| Ludovic Courtès |
2012-10-25 | derivations: Pass the derivation of guile-for-build to `imported-files' & co....* guix/derivations.scm (%guile-for-build): Initialize to #f.
(imported-files, imported-modules, compiled-modules): Add `guile'
keyword parameter. Pass it down to `build-expression->derivation'.
(build-expression->derivation)[guile-drv]: New variable. Pass it as
the #:guile parameter for `imported-modules' and `compiled-modules'.
* tests/derivations.scm: Set %GUILE-FOR-BUILD to the derivation of
%BOOTSTRAP-GUILE.
| Ludovic Courtès |
2012-10-25 | distro: Build the final inputs against the final Bash, not the bootstrap Bash....* distro/packages/base.scm (%boot4-inputs): New variable.
(guile-final): Use it.
(%final-inputs): Build with %BOOT4-INPUTS, not %BOOT3-INPUTS.
| Ludovic Courtès |
2012-10-25 | distro: ncurses: Don't patch shebangs....* distro/packages/base.scm (ncurses): Pass #:patch-shebangs? #f.
| Ludovic Courtès |
2012-10-25 | distro: Bootstrap using our own binaries instead of those from Nixpkgs....* distro/packages/base.scm (%bootstrap-inputs): Switch to using our own
bootstrap binaries instead of those from Nixpkgs.
| Ludovic Courtès |
2012-10-25 | distro: Build glibc with `--enable-obsolete-rpc'....* distro/packages/base.scm (glibc-final): Pass `--enable-obsolete-rpc'.
(%bootstrap-glibc): Update hash accordingly.
| Ludovic Courtès |
2012-10-25 | distro: Add missing Linux-Libre headers to the bootstrap glibc....* distro/packages/base.scm (%glibc-stripped): Copy all of Linux-Libre's
`include/asm' directory; copy a few linux/ headers too.
(%bootstrap-glibc): Update tarball hash.
| Ludovic Courtès |
2012-10-25 | distro: Add a bootstrap GCC that uses binaries from the tarball....* distro/packages/base.scm (%bootstrap-gcc): New variable.
| Ludovic Courtès |
2012-10-25 | Add `guix-download'....* guix-download.in: New file.
* configure.ac: Emit `guix-download' and make it executable.
* Makefile.am (bin_SCRIPTS): Add `guix-download'.
* po/POTFILES.in: Add `guix-download.in'.
| Ludovic Courtès |