me
/
guix
Archived
1
0
Fork 0
Commit Graph

347 Commits (bb1e7ed066e97fff06fd10a70be1a582daa97217)

Author SHA1 Message Date
Ludovic Courtès cd295fbe17
Revert "Add (guix self) and use it when pulling."
This reverts commit 5f93d97005.

'guix pull' would fail because (guix self) needs 'scheme-files'
from (guix discovery), which was not exported until now.
2017-11-21 23:53:10 +01:00
Ludovic Courtès 11a54b3d6e
hydra: Add jobs for the modular Guix.
* build-aux/hydra/guix-modular.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2017-11-21 23:09:17 +01:00
Ludovic Courtès 49961951c5
hydra: 'evaluate' passes an alist to the entry point.
* build-aux/hydra/evaluate.scm (%top-srcdir): New variable.
<top level>: Pass it to 'hydra-jobs'.
2017-11-21 23:09:16 +01:00
Ludovic Courtès 5f93d97005
Add (guix self) and use it when pulling.
This mitigates <https://bugs.gnu.org/27284>.

* guix/self.scm: New file.
* Makefile.am (MODULES): Add it.
* build-aux/build-self.scm (libgcrypt, zlib, gzip, bzip2, xz)
(false-if-wrong-guile, package-for-current-guile, guile-json)
(guile-ssh, guile-git, guile-bytestructures): Remove.
(build): Rewrite to simply delegate to 'compiled-guix'.
* gnu/packages.scm (%distro-root-directory): Rewrite to try different
directories.
* guix/discovery.scm (guix): Export 'scheme-files'.
* guix/scripts/pull.scm (build-and-install): Split into...
(install-latest): ... this.  New procedure.  And...
(build-and-install): ... this, which now takes a monadic value argument.
(indirect-root-added): Remove.
(guix-pull): Call 'add-indirect-root'.  Call 'build-from-source' and
pass the result to 'build-and-install'.
2017-11-21 23:09:16 +01:00
Marius Bakke 2dd12924cf
Merge branch 'master' into core-updates 2017-11-19 15:01:00 +01:00
Ludovic Courtès b574cee361
hydra: Add jobs for all of '%final-inputs'.
* build-aux/hydra/gnu-system.scm (package->job): Create a 'base.' job
when PACKAGE is a member of BASE-PACKAGES.
(all-packages)[adjust]: New procedure.
Fold over %FINAL-INPUTS and add it to the result.
2017-11-07 18:09:13 +01:00
Ludovic Courtès 25a5b187e8
hydra: Build hidden packages.
* build-aux/hydra/gnu-system.scm (all-packages): Pass #:select? to
'fold-packages'.
2017-11-07 18:09:12 +01:00
Ludovic Courtès b5033c5a9e
hydra: Factorize package list creation.
* build-aux/hydra/gnu-system.scm (all-packages): New procedure, with
body taken from...
(hydra-jobs): ... here.  Use it.
2017-11-07 18:09:12 +01:00
Marius Bakke ca4fd41de8
Merge branch 'master' into core-updates 2017-10-24 22:00:23 +02:00
Ludovic Courtès ce33c3af76
pull: Add (guix build compile) to the mix.
Fixes <https://bugs.gnu.org/28956>.
Reported by Leo Famulari <leo@famulari.name>.

* build-aux/build-self.scm (build): Add (guix build compile) to
 #:modules.
* guix/build/pull.scm (build-guix): Wrap 'compile-files' call in
'with-directory-excursion'.  Strip "./" from FILES when passing it to
'compile-files'.
2017-10-23 17:08:50 -07:00
Ludovic Courtès 3a9976bfcd
build: Honor make's '-j' flag.
* build-aux/compile-all.scm (parallel-job-count): New procedure.
<top level>: Pass it to 'compile-files' as #:workers.
2017-10-22 22:09:00 -07:00
Ludovic Courtès 2890ad332f
build: Factorize module compilation in (guix build compile).
* guix/build/compile.scm: New file.
* Makefile.am (MODULES): Add it.
* build-aux/compile-all.scm: Use it.
(warnings, file->module, load-module-file)
(%default-optimizations, %lightweight-optimizations)
(optimization-options, compile-file*): Remove.
<top level>: Use 'compile-files'.
* guix/build/pull.scm (%default-optimizations)
(%lightweight-optimizations, optimization-options): Remove.
(build-guix): Rewrite as a call to 'compile-files'.
* guix/discovery.scm (file-name->module-name): Export.
2017-10-22 22:09:00 -07:00
Thomas Danckaert 8cff2e7aed
Merge 'master' into core-updates 2017-10-16 19:52:30 +02:00
Eric Bavier 7740228e35
build: Set 'NIX_BUILD_HOOK' only if offloading is configured.
This prevents libstore/build.cc from executing nix/scripts/offload, which is
always created by config.status, when offload support is not enabled.

* build-aux/pre-inst-env.in: Export 'NIX_BUILD_HOOK' only when
configured; unset it otherwise.
2017-10-10 23:16:07 -05:00
Efraim Flashner 64df08f0cf
Merge remote-tracking branch 'origin/master' into core-updates 2017-10-01 22:16:22 +03:00
Jan Nieuwenhuizen 454caca8e6
cuirass: Add 'cuirass-jobs.scm' target to compute the Cuirass jobs.
* build-aux/hydra/evaluate.scm: Support "cuirass" command line option.
* Makefile.am (cuirass-jobs.scm): New target.
2017-09-28 17:39:54 +02:00
Jan Nieuwenhuizen 516b53828e
cuirass: Support subset with list of package[@version].
* build-aux/hydra/gnu-system.scm (hydra-jobs): Support subset of
packages: ("name[@version" ...).
2017-09-27 22:19:28 +02:00
Jan Nieuwenhuizen 66bc1d2aaf
cuirass: Add gnu-system build spec.
* build-aux/hydra/gnu-system.scm (hydra-jobs): Support subset "hello".
* build-aux/cuirass/gnu-system.scm: New file.
* doc/guix.texi (Continuous Integration): Update example spec.
2017-09-27 22:19:28 +02:00
Ludovic Courtès 1b58f1c8ba
build: Use -Wmacro-use-before-definition.
* build-aux/compile-all.scm (warnings): Add 'macro-use-before-definition'.
2017-09-08 12:48:08 +02:00
Ludovic Courtès 4f024ef318
build: Remove code to download the Guile bootstrap tarball.
* build-aux/download.scm: Remove.
* Makefile.am (EXTRA_DIST): Remove it.
(check-system): Remove dependency on $(BOOTSTRAP_GUILE_TARBALLS).
* gnu/local.mk (nodist_bootstrap_x86_64_linux_DATA)
(nodist_bootstrap_i686_linux_DATA, nodist_bootstrap_armhf_linux_DATA)
(nodist_bootstrap_aarch64_linux_DATA, nodist_bootstrap_mips64el_linux_DATA)
(BOOTSTRAP_GUILE_TARBALLS, DISTCLEANFILES, DOWNLOAD_FILE)
(%D%/packages/bootstrap/x86_64-linux/guile-2.0.9.tar.xz)
(%D%/packages/bootstrap/i686-linux/guile-2.0.9.tar.xz)
(%D%/packages/bootstrap/armhf-linux/guile-2.0.11.tar.xz)
(%D%/packages/bootstrap/aarch64-linux/guile-2.0.14.tar.xz)
(%D%/packages/bootstrap/mips64el-linux/guile-2.0.9.tar.xz): Remove.
* build-aux/test-env.in: Add "guix download" invocation when
gnu/packages/bootstrap/guile* exists.
2017-08-28 23:51:16 +02:00
Ludovic Courtès 59a1627518
pull: Fetch source code from Git.
* guix/scripts/pull.scm (%snapshot-url, with-environment-variable)
(with-PATH): Remove.
(ensure-guile-git!): New procedure.
(%repository-url): New variable.
(%default-options): Add 'repository-url' and 'ref'.
(show-help, %options): Add '--commit' and '--url'.
(temporary-directory, first-directory, interned-then-deleted)
(unpack): Remove.
(build-from-source): Rename 'tarball' to 'source'.  Remove call to
'unpack'.
(build-and-install): Rename 'tarball' to 'source'.
(honor-lets-encrypt-certificates!, report-git-error): New procedures.
(with-git-error-handling): New macro.
(guix-pull)[fetch-tarball]: Remove.
Wrap body in 'with-git-error-handling'.  Rewrite to use
'latest-repository-commit'.
* build-aux/build-self.scm (build): Print an error message and exit when
GUILE-GIT is #f.
* doc/guix.texi (Invoking guix pull): Mention Git.  Document '--commit'
and '--branch'.
2017-08-02 00:04:00 +02:00
Ludovic Courtès 386f541556
hydra: Add 'guix.SYSTEM' jobs.
* build-aux/hydra/guix.scm (package->alist): Disable grafting.
(hydra-jobs): Return 'guix.SYSTEM' jobs in addition to 'tarball'.
2017-07-25 17:46:17 +02:00
Ludovic Courtès 06ce8e5680
hydra: Simplify 'tarball' job.
* build-aux/hydra/guix.scm (tarball-package): Remove.
(hydra-jobs): Use 'dist-package' instead of 'tarball-package'.
2017-07-25 17:46:17 +02:00
Danny Milosavljevic be1033a334
build: Add iso9660 system image generator.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Add 'iso9660-image .
* gnu/build/vm.scm (make-iso9660-image): New variable.  Export it.
* gnu/system/vm.scm (iso9660-image): New variable.  Use make-iso9660-image.
(system-disk-image): Use iso9660-image.
2017-07-03 10:07:59 +02:00
Ludovic Courtès 82c955c0a5
hydra: Don't build non-substitutable packages.
* build-aux/hydra/gnu-system.scm (package->job): Compute PACKAGE's
derivation; return #f if 'substitutable-derivation?' returns #f.
2017-06-15 23:07:47 +02:00
Mathieu Othacehe 19c90e5f69
pull: Add a dependency to guile-git.
* build-aux/build-self.scm (guile-git, guile-bytestructures): New
  variables.
  (build): Add guile-git and guile-bytestructures to %load-path and
  %load-compiled-path.
2017-06-09 09:48:26 +02:00
Ludovic Courtès 920803fbf4
maint: Add 'update-NEWS' target.
* build-aux/update-NEWS.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
(GUIX_MAINTENANCE_DIRECTORY): New variable.
(update-NEWS): New target.
(.PHONY): Add it.
2017-05-18 16:24:02 +02:00
Ludovic Courtès d116695b31
hydra: Cross-build Guile 2.2.
* build-aux/hydra/gnu-system.scm (%core-packages): Add GUILE-2.2.
2017-05-16 14:16:56 +02:00
Ludovic Courtès 838ba73d6e
pull: Build with the matching Guile major version.
Previously, 'guix pull' would always build with Guile 2.0.
Now it builds with the Guile that matches (effective-version).

* build-aux/build-self.scm (false-if-wrong-guile)
(package-for-current-guile): New procedures.
(guile-json, guile-ssh): Use it.
(guile-for-build): New procedure.
(build): Use (effective-version) instead of the hard-coded "/2.0".
Add (guix modules) closure to #:modules argument.  Pass
\#:guile-for-build argument to 'gexp->derivation'.
* guix/build/pull.scm (depends-on-guile-ssh?, all-scheme-files): New
procedures.
(build-guix): Show the output of (version).  Use the above procedures.
Filter out files that match 'depends-on-guile-ssh?' when (ssh session)
is missing.
2017-05-09 18:08:24 +02:00
Ludovic Courtès aa1c3a0000
maint: update-guix-package: Protect the checkout from GC.
* build-aux/update-guix-package.scm (main): Define 'root', and call
'add-indirect-root' to protect SOURCE from GC.
2017-05-09 12:58:42 +02:00
Ludovic Courtès a7e5944e9c
maint: Check whether binaries cross-built to "arm-linux-gnueabihf" are available.
* build-aux/check-available-binaries.scm: Add "arm-linux-gnueabihf" as a
cross target.
2017-05-08 16:29:24 +02:00
Ludovic Courtès 8872fc0e09
maint: 'check-available-binaries' forces use of the official servers.
* build-aux/check-available-binaries.scm: Pass #:substitute-urls to
'set-build-options'.
2017-05-08 16:29:24 +02:00
Ludovic Courtès c8ba269c26
maint: Use 'G_' in build-aux/ scripts.
This is a followup to 69daee23af.

* build-aux/check-final-inputs-self-contained.scm (assert-valid-substitute):
Use 'G_' instead of '_'.
2017-05-08 16:29:23 +02:00
Ludovic Courtès 7f4da8ff6b
maint: Add 'time-monotonic' bug workaround in build-aux/hydra/evaluate.scm.
* build-aux/hydra/evaluate.scm: Add 'time-monotonic' workaround for
Guile 2.2.
2017-05-07 00:18:36 +02:00
Ludovic Courtès 94fa8d7616
maint: Add 'update-guix-package' target.
* build-aux/update-guix-package.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
(update-guix-package): New target.
(.PHONY): Add it.
* gnu/packages/package-management.scm (guix): Mention it.
2017-05-07 00:18:36 +02:00
Ludovic Courtès e6860b5e7f
build: Use Gnulib's 'git-version-gen'.
* Makefile.am (EXTRA_DIST, BUILT_SOURCES): Add $(top_srcdir)/.version.
($(top_srcdir)/.version, gen-tarball-version): New targets.
(dist-hook): Depend on 'gen-tarball-version'.
(.PHONY): Add 'gen-tarball-version'.
* build-aux/git-version-gen: New file, from Gnulib v0.1-1312-ga87d5e5c6.
* configure.ac: Use it in 'AC_INIT'.  Use 'https' for the URL.
2017-05-04 23:51:45 +02:00
Ludovic Courtès 69daee23af
ui: Rename '_' to 'G_'.
This avoids collisions with '_' when the latter is used as a 'match'
pattern for instance.  See
<https://lists.gnu.org/archive/html/guix-devel/2017-04/msg00464.html>.

* guix/ui.scm: Rename '_' to 'G_'.
* po/guix/Makevars (XGETTEXT_OPTIONS): Adjust accordingly.
* build-aux/compile-all.scm (warnings): Remove 'format'.
* gnu/packages.scm,
gnu/services.scm,
gnu/services/shepherd.scm,
gnu/system.scm,
gnu/system/shadow.scm,
guix/gnupg.scm,
guix/http-client.scm,
guix/import/cpan.scm,
guix/import/elpa.scm,
guix/import/pypi.scm,
guix/nar.scm,
guix/scripts.scm,
guix/scripts/archive.scm,
guix/scripts/authenticate.scm,
guix/scripts/build.scm,
guix/scripts/challenge.scm,
guix/scripts/container.scm,
guix/scripts/container/exec.scm,
guix/scripts/copy.scm,
guix/scripts/download.scm,
guix/scripts/edit.scm,
guix/scripts/environment.scm,
guix/scripts/gc.scm,
guix/scripts/graph.scm,
guix/scripts/hash.scm,
guix/scripts/import.scm,
guix/scripts/import/cpan.scm,
guix/scripts/import/cran.scm,
guix/scripts/import/crate.scm,
guix/scripts/import/elpa.scm,
guix/scripts/import/gem.scm,
guix/scripts/import/gnu.scm,
guix/scripts/import/hackage.scm,
guix/scripts/import/nix.scm,
guix/scripts/import/pypi.scm,
guix/scripts/import/stackage.scm,
guix/scripts/lint.scm,
guix/scripts/offload.scm,
guix/scripts/pack.scm,
guix/scripts/package.scm,
guix/scripts/perform-download.scm,
guix/scripts/publish.scm,
guix/scripts/pull.scm,
guix/scripts/refresh.scm,
guix/scripts/size.scm,
guix/scripts/substitute.scm,
guix/scripts/system.scm,
guix/ssh.scm,
guix/upstream.scm: Use 'G_' instead of '_'.  Most of this change was
obtained by running: "sed -i -e's/(_ "/(G_ "/g' `find -name \*.scm`".
2017-05-03 16:16:17 +02:00
Ludovic Courtès b31b0155ea
build: Download aarch64 bootstrap binaries from alpha.gnu.org.
* build-aux/download.scm (file-name->uri): Remove flashner.co.il URL.
* gnu/packages/package-management.scm (boot-guile-uri): Likewise.
2017-04-14 18:17:58 +02:00
Ludovic Courtès 6f9f01fbf6
hydra: Don't build deprecated packages.
* build-aux/hydra/gnu-system.scm (hydra-jobs): When iterating over the
packages, exclude those that match 'package-superseded'.
2017-03-30 23:46:07 +02:00
Marius Bakke 84157bb8bf
Merge branch 'master' into core-updates
Most conflicts are from 6fd52309b8.
2017-03-30 22:59:53 +02:00
Ludovic Courtès 32e18d3754
hydra: Include the localstatedir in the binary tarball.
This is a followup to 6b63c43e06.

* build-aux/hydra/gnu-system.scm (tarball-jobs): Pass #:localstatedir? #t
to 'self-contained-tarball'.
2017-03-30 11:15:16 +02:00
Efraim Flashner 0371b345e8
Merge remote-tracking branch 'origin/master' into core-updates 2017-03-23 14:53:33 +02:00
Ludovic Courtès 73a46451af
build: 'test-driver.scm' prints Scheme values with 'write'.
Previously it would print them with 'display', which was inconvenient.

* build-aux/test-driver.scm (test-display): Use ~S for VALUE.
(test-runner-gnu): Use 'format' instead of 'test-display' for the test
name, location, and result kind.
2017-03-22 15:02:33 +01:00
Mark H Weaver f67337e23e
Merge branch 'master' into core-updates 2017-03-19 18:52:12 -04:00
Ludovic Courtès 36626c556e
build: Require Guile >= 2.0.9.
* configure.ac: Bump requirement to 2.0.9.
* doc/guix.texi (Requirements): Adjust accordingly.
* README (Requirements): Likewise.
* build-aux/download.scm: Remove workaround for <http://bugs.gnu.org/13095>.
* guix/build/download.scm: Likewise.
(http-fetch)[post-2.0.7?]: Remove.  Remove conditional code for not
POST-2.0.7?.
* guix/http-client.scm:  Remove workaround for <http://bugs.gnu.org/13095>.
(http-fetch)[post-2.0.7?]: Remove.  Remove conditional code for not
POST-2.0.7?.
* guix/serialization.scm (read-latin1-string): Remove mention of 2.0.9.
* tests/nar.scm: Use (ice-9 control).
(let/ec): Remove.
2017-03-18 00:39:49 +01:00
Ludovic Courtès 4c0c4db070
utils: Move base16 procedures to (guix base16).
* guix/utils.scm (bytevector->base16-string, base16-string->bytevector):
Move to...
* guix/base16.scm: ... here.  New file.
* tests/utils.scm ("bytevector->base16-string->bytevector"): Move to...
* tests/base16.scm: ... here.  New file.
* Makefile.am (MODULES): Add guix/base16.scm.
(SCM_TESTS): Add tests/base16.scm.
* build-aux/download.scm, guix/derivations.scm,
guix/docker.scm, guix/import/snix.scm, guix/pk-crypto.scm,
guix/scripts/authenticate.scm, guix/scripts/download.scm,
guix/scripts/hash.scm, guix/store.scm, tests/hash.scm,
tests/pk-crypto.scm: Adjust imports accordingly.
2017-03-16 22:50:14 +01:00
Marius Bakke 4b7e5c1131
Merge branch 'master' into core-updates 2017-03-15 17:52:26 +01:00
Ludovic Courtès ae196fa349
build: On 2.2, build package files with almost no optimizations.
* build-aux/compile-all.scm (%default-optimizations)
(%lightweight-optimizations): New variables.
(optimization-options): New procedure.
(compile-file*): Use it.
2017-03-14 10:28:57 +01:00
Efraim Flashner 3f9543aee1
Merge remote-tracking branch 'origin/master' into core-updates 2017-03-13 23:08:49 +02:00
Ludovic Courtès 239c22663a
Add 'guix pack'.
* gnu/system/install.scm (self-contained-tarball): Move to...
* guix/scripts/pack.scm: ... here.  New file.
* doc/guix.texi (Binary Installation): Mention 'guix pack'.
(Invoking guix pack): New node.
* build-aux/make-binary-tarball.scm: Remove.
* Makefile.am (MODULES): Add guix/scripts/pack.scm.
(EXTRA_DIST): Remove build-aux/make-binary-tarball.scm.
(guix-binary.%.tar.xz): Rewrite using 'guix pack'.
* build-aux/hydra/gnu-system.scm (tarball-jobs): Adjust accordingly.
2017-03-12 17:47:25 +01:00
Ludovic Courtès e90e0fad1b
Merge branch 'master' into core-updates 2017-03-09 16:35:41 +01:00
Ludovic Courtès 9ec2a4d3fe
hydra: Really disable 32-to-64-bit cross-builds.
Fixes <http://bugs.gnu.org/26022>.
Reported by Efraim Flashner <efraim@flashner.co.il>.

* build-aux/hydra/gnu-system.scm (hydra-jobs)[cross-jobs](from-32-to-64?):
Check whether TARGET contains "64" rather than checking whether TARGET
ends in "64", which is rarely the case.
(same?): Add special case for armhf-linux.
2017-03-09 16:28:36 +01:00
Ludovic Courtès 19c1ac8d88
build: Unset 'NIX_BUILD_HOOK' when offloading support is missing.
* build-aux/pre-inst-env.in: Export 'NIX_BUILD_HOOK' only when
nix/scripts/offload is executable; unset it otherwise.
2017-03-08 23:42:52 +01:00
Efraim Flashner 3b88f3767d
gnu: Add bootstrap-binaries for 'aarch64-linux'.
These bootstrap-binaries were built against commit
8f8f250bdc.

* gnu/packages/bootstrap/aarch64-linux/bash,
gnu/packages/bootstrap/aarch64-linux/mkdir,
gnu/packages/bootstrap/aarch64-linux/xz,
gnu/packages/bootstrap/aarch64-linux/tar: New files.

* gnu/local.mk (bootstrap_aarch64_linuxdir)
(dist_bootstrap_aarch64_linux_DATA)
(nodist_bootstrap_aarch64_linux_DATA): New variables.
(DISTCLEANFILES): Add $(nodist_bootstrap_aarch64_linux_DATA).
(gnu/packages/bootstrap/aarch64-linux/guile-2.0.14.tar.xz): New target.
* build-aux/download.scm (filename->uri): Add aarch64-linux entry.
* gnu/packages/bootstrap.scm (raw-build): Use guile-2.0.14.tar.xz on
aarch64-linux.
(glibc-dynamic-linker, %bootstrap-coreutils&co, %boostrap-binutils)
(%bootstrap-glibc, %bootstrap-gcc): Add aarch64-linux cases.
* m4/guix.m4 (GUIX_SYSTEM_TYPE): Add aarch64 case.
(GUIX_ASSERT_SUPPORTED_SYSTEM): Add aarch64-linux to supported list.
* doc/guix.texi (GNU Distribution): Add aarch64-linux to the list of
supported systems.
* tests/packages.scm (package-search-derivation, snippet): Add aarch64
case.
2017-02-20 12:58:07 +02:00
Efraim Flashner ac16cf3ece
hydra: Add "aarch64-linux-gnu" as a cross-compilation target.
* build-aux/hydra/gnu-system.scm (%cross-targets): Add
"aarch64-linux-gnu".
2017-02-17 12:33:55 +02:00
Efraim Flashner 300211e349
hydra: Add "aarch64-linux-gnu" as a cross-compilation target.
* build-aux/hydra/gnu-system.scm (%cross-targets): Add
"aarch64-linux-gnu".
2017-02-14 23:40:22 +02:00
Ludovic Courtès 677b30221b
hydra: Add "i586-pc-gnu" as a cross-compilation target.
* build-aux/hydra/gnu-system.scm (%cross-targets): Add "i586-pc-gnu".
2017-01-20 22:32:47 +01:00
Leo Famulari 74288230ea
Merge branch 'master' into core-updates 2017-01-06 17:14:41 -05:00
Ludovic Courtès 9410a5aa91
hydra: Add "powerpc-linux-gnu" as a cross-compilation target.
* build-aux/hydra/gnu-system.scm (%cross-targets): Add
"powerpc-linux-gnu".
2017-01-05 00:00:59 +01:00
Ludovic Courtès a3a2774501
hydra: Remove 'qemu-image' job.
As per the discussion at
<https://lists.gnu.org/archive/html/guix-devel/2016-12/msg01098.html>.

* build-aux/hydra/gnu-system.scm (demo-os): Remove.
(qemu-jobs): Remove 'qemu-image' job.
* build-aux/hydra/demo-os.scm: Remove.
2016-12-31 01:44:04 +01:00
Ludovic Courtès 8a4c988892
build: check-final-inputs-self-contained has an exception for 'bash:include'.
Currently 'bash:include' of the final Bash depends on bootstrap stuff.

* build-aux/check-final-inputs-self-contained.scm (final-inputs): Add
clause for 'bash:include'.
* gnu/packages/commencement.scm (bash-final): Add FIXME comment.
2016-12-18 12:37:26 +01:00
Ludovic Courtès a69bc7071e
hydra: Fix wrong-num-args error when computing the cross jobs.
Fixes a regression introduced in
dea91108cf.

* build-aux/hydra/gnu-system.scm (hydra-jobs)[cross-jobs](either): Add
third parameter and honor it.
2016-12-08 00:28:48 +01:00
Ludovic Courtès 530b8bda1f
hydra: Adjust to make-bootstrap.scm change.
This is a followup to commit f13f60cb26.

* build-aux/hydra/gnu-system.scm (%core-packages): Call
'%glibc-bootstrap-tarball' since it's now a thunk, not a package.
2016-12-08 00:28:48 +01:00
Ludovic Courtès 0a050ebc35
hydra: Use '%final-inputs' from base.scm, not commencement.scm.
* build-aux/hydra/gnu-system.scm (package->job): Use the '%final-inputs'
procedure from (gnu packages base).
2016-12-08 00:28:47 +01:00
Ludovic Courtès dea91108cf
hydra: Add "i686-w64-mingw32" as a cross-compilation target.
* build-aux/hydra/gnu-system.scm (%cross-targets): Add "i686-w64-mingw32".
(hydra-jobs)[cross-jobs?](pointless?): New procedure.
Use it.
2016-12-07 10:23:18 +01:00
Ludovic Courtès aa28ecc40a
pull: Hack to allow compilation with older Guile-SSH packages.
Reported by iyzsong@member.fsf.org (宋文武)
at <https://lists.gnu.org/archive/html/guix-devel/2016-11/msg01045.html>.

* build-aux/build-self.scm (build): Set 'LTDL_LIBRARY_PATH' when
GUILE-SSH has a "0.9." version prefix.
2016-11-27 23:06:09 +01:00
宋文武 5aed7f10f3
pull: Add guile-ssh to the dependencies.
Fix regression introduced in 9e76eed.

* build-aux/build-self.scm (guile-ssh): New variable.
(build)[builder]: Add 'guile-ssh' to %load-path and %load-compiled-path.
2016-11-26 22:03:23 +08:00
Ludovic Courtès 6cb02e6e00
tests: 'make check-system' prints the "build trace".
* build-aux/run-system-tests.scm (run-system-tests): Pass
  #:print-build-trace to 'set-build-options*'.
2016-11-03 15:44:49 +01:00
Ludovic Courtès d88767a399
tests: Use #:fallback? #t when building system tests.
* build-aux/run-system-tests.scm (run-system-tests): Pass #:fallback? #t
to 'set-build-options*'.
2016-10-27 01:00:41 +02:00
Ludovic Courtès 6ef6246cfc
hydra: Add "arm-linux-gnueabihf" as a cross-compilation target.
* build-aux/hydra/gnu-system.scm (%cross-targets): Add
"arm-linux-gnueabihf".
2016-10-20 15:43:59 +02:00
Ludovic Courtès 402bb3b9f7
build: Arrange so temporary .go files are deleted upon SIGINT.
* build-aux/compile-all.scm: Install SIGINT handler.
2016-10-12 23:35:41 +02:00
Taylan Ulrich Bayırlı/Kammer 5a88b2d130
build: Improve Guile 2.2 compatibility.
* build-aux/compile-all.scm (compile-file*): Ensure loading of
  compilation related modules before going parallel.
* guix/build/pull.scm (build-guix): Ditto.
2016-09-29 23:59:06 +02:00
Ludovic Courtès b006ba5038
pull: Update the version string.
Fixes <http://bugs.gnu.org/19278>.
Reported by Tomáš Čech <tcech@suse.cz>.

This allows 'guix --version' to return something that better represents
what version is being used.

* build-aux/build-self.scm (date-version-string): New procedure.
(build): Add #:version.
[builder]: Pass it to 'build-guix' as #:package-version.
2016-07-20 22:53:02 +02:00
Ludovic Courtès 13cee334f1
pull: Install (guix config) module to override the user's one.
* build-aux/build-self.scm (zlib, gzip, bzip2, xz): New variables.
(build)[storedir, localstatedir, sysconfdir, sbindir]: New variables.
[builder]: Pass them to 'build-guix'.
* guix/build/pull.scm (build-guix): Add #:system, #:storedir,
  #:localstatedir, #:sysconfdir, #:sbindir, #:package-name,
  #:package-version, #:bug-report-address, #:home-page-url, #:libgcrypt,
  #:zlib, #:gzip, #:bzip2, and #:xz.  Remove #:gcrypt.
  Instantiate all the substitution variables in (guix config).  Remove
  code to delete OUT/guix/config.{scm,go}.
* guix/config.scm.in: Add note about (guix script pull).
2016-07-20 22:53:02 +02:00
David Craven 9dd674db01
daemon: Rename 'NIX_CONF_DIR' to 'GUIX_CONFIGURATION_DIRECTORY'.
Partly fixes <http://bugs.gnu.org/22459>.
Reported by Jeff Mickey <j@codemac.net> and David Craven <david@craven.ch>.

* nix/libstore/globals.cc (Settings::processEnvironment()): Change
'NIX_CONF_DIR' to 'GUIX_CONFIGURATION_DIRECTORY'.
* nix/local.mk (libstore_a_CPPFLAGS): Likewise.
* guix/config.scm.in (%config-directory): Likewise.
* build-aux/test-env.in: Likewise.
* gnu/packages/patches/hydra-automake-1.15.patch: Likewise.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-06-26 23:11:07 +02:00
Ludovic Courtès ab23fb83c2
hydra: Fix the construction of system test jobs.
* build-aux/hydra/gnu-system.scm (system-test-jobs)[test->thunk]: New
procedure.
[->job]: Use it.
2016-06-21 15:59:06 +02:00
Ludovic Courtès 4c9243b688
hydra: 'evaluate' now validates job alists.
* build-aux/hydra/evaluate.scm (assert-valid-job): New procedure.
<top level>: Use it.
2016-06-21 15:59:06 +02:00
Ludovic Courtès 5c310940ed
hydra: Set the guile-for-build for the test jobs.
* build-aux/hydra/gnu-system.scm (system-test-jobs): Call
'set-guile-for-build'.
2016-06-21 00:20:50 +02:00
Ludovic Courtès e702e26a38
hydra: Add jobs for the system tests.
* build-aux/hydra/gnu-system.scm (%guixsd-supported-systems): New
variable.
(qemu-jobs): Use it.
(system-test-jobs): New procedure.
(hydra-jobs): Use it.
2016-06-20 23:50:46 +02:00
Ludovic Courtès de7e0e8ee0
build: 'make check-system' now honors $TESTS.
* build-aux/run-system-tests.scm (run-system-tests)[tests]: Honor the
'TESTS' environment variable.
2016-06-20 23:50:46 +02:00
Ludovic Courtès 98b65b5ff6
tests: Add a mechanism to describe and discover system tests.
* gnu/tests.scm (<system-test>): New record type.
(write-system-test, test-modules, fold-system-tests)
(all-system-tests): New procedures.
* gnu/tests/base.scm (%test-basic-os): Turn into a <system-test>.
* gnu/tests/install.scm (%test-installed-os): Likewise.
* build-aux/run-system-tests.scm (%system-tests): Remove.
(run-system-tests): Use 'all-system-tests'.
2016-06-20 23:50:46 +02:00
Ludovic Courtès 94b4274d0d
tests: Add system installation test.
* gnu/tests.scm (define-os-with-source): New macro.
* gnu/tests/install.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* build-aux/run-system-tests.scm (%system-tests): Likewise.
2016-06-20 23:50:46 +02:00
Ludovic Courtès 41c569d9b9
build: Add 'run-system-tests.scm'.
This file was meant to be added as part of
commit e9f693d06f.

* build-aux/run-system-tests.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2016-05-04 23:56:42 +02:00
Ludovic Courtès 4d9ed58498
build: Preserve stderr for shell tests.
Fixes a regression introduced in
a9edb211e7 where the .log files of the .sh
tests would not contain stderr.

* build-aux/test-env.in: Redirect stderr only when --quiet-stderr is
passed.
* Makefile.am (SCM_LOG_DRIVER): Add --quiet-stderr.
2016-05-04 23:35:55 +02:00
Ludovic Courtès f1ebeee131
build: 'make assert-binaries-available' shows the list of systems.
* build-aux/check-available-binaries.scm: Display %HYDRA-SUPPORTED-SYSTEMS.
2016-04-27 15:00:49 +02:00
Mathieu Lirzin a1097caa6a build: Move environment '.in' scripts to 'build-aux' directory.
* pre-inst-env.in: Move to ...
* build-aux/pre-inst-env.in: ... here.
* test-env.in: Move to ...
* build-aux/test-env.in: ... here.
* configure.ac (AC_CONFIG_FILES): Adapt to this.  Keep the generated
scripts in their current location which is $(top_builddir).
2016-04-15 00:59:07 +02:00
Ludovic Courtès 89cbec89a5 hydra: Add 'hydra-jobs.scm' target to compute the Hydra jobs.
* build-aux/hydra/evaluate.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2016-04-13 19:20:03 +02:00
Ludovic Courtès 9c3bb4c54d hydra: Really completely disable grafting.
This is a followup to 49c4fd2a.

* build-aux/hydra/gnu-system.scm (package->alist): Parameterize %graft?.
(qemu-jobs)[->job]: Likewise.
(tarball-jobs)[->job]: Likewise.
2016-04-13 19:20:03 +02:00
Mathieu Lirzin a9edb211e7 build: Add a Guile custom test driver using SRFI-64.
Before that '.log' files for scheme tests were fragmented and not
included in test-suite.log.  This unifies the semantics of SRFI-64 API
with Automake test suite.

* build-aux/test-driver.scm: New file.
* Makefile.am (SCM_LOG_DRIVER, AM_SCM_LOG_DRIVER_FLAGS): New variables.
(SCM_LOG_COMPILER, AM_SCM_LOG_FLAGS): Delete variables.
(AM_TESTS_ENVIRONMENT): Set GUILE_AUTO_COMPILE to 0.
* test-env.in: Silence guix-daemon.
* doc/guix.texi (Running the Test Suite): Describe how to display the
detailed results.  Bug reports require only 'test-suite.log' file.
* tests/base32.scm, tests/build-utils.scm, tests/builders.scm,
tests/challenge.scm, tests/cpan.scm, tests/cpio.scm, tests/cran.scm,
tests/cve.scm, tests/derivations.scm, tests/elpa.scm,
tests/file-systems.scm, tests/gem.scm, tests/gexp.scm,
tests/gnu-maintenance.scm, tests/grafts.scm, tests/graph.scm,
tests/gremlin.scm, tests/hackage.scm, tests/hash.scm,
tests/import-utils.scm, tests/lint.scm, tests/monads.scm, tests/nar.scm,
tests/packages.scm, tests/pk-crypto.scm, tests/pki.scm,
tests/profiles.scm, tests/publish.scm, tests/pypi.scm,
tests/records.scm, tests/scripts-build.scm, tests/scripts.scm,
tests/services.scm, tests/sets.scm, tests/size.scm, tests/snix.scm,
tests/store.scm, tests/substitute.scm, tests/syscalls.scm,
tests/system.scm, tests/ui.scm, tests/union.scm, tests/upstream.scm,
tests/utils.scm: Don't exit at the end of test groups.
* tests/containers.scm: Likewise.  Use 'test-skip' instead of exiting
with error code 77.
2016-04-03 14:19:09 +02:00
Ludovic Courtès 622b2304ce doc: We now need 1 GiB for the installation USB image.
* doc/guix.texi (Building the Installation Image): Change image size to 1G.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Likewise.
2016-03-24 23:31:56 +01:00
Ludovic Courtès 5c7e1a3270 build: Use (guix grafts) as needed.
This is a followup to 7adf9b8.

* build-aux/check-final-inputs-self-contained.scm: Use (guix grafts).
* build-aux/check-available-binaries.scm: Likewise.
2016-03-03 23:54:36 +01:00
Ludovic Courtès 49c4fd2aab hydra: Completely disable grafting.
* build-aux/hydra/gnu-system.scm (hydra-jobs): Parameterize '%graft?'.
Build package replacements when they are available.
2016-03-03 00:18:30 +01:00
Ludovic Courtès f8187bde7f hydra: Improve readability.
* build-aux/hydra/gnu-system.scm (hydra-jobs): Use 'filter-map' instead
of directly 'fold-packages'.
2016-03-03 00:18:30 +01:00
Ludovic Courtès a4db2dd99f build: Remove semicolons from Guile warnings.
* build-aux/compile-all.scm (compile-file*):
Clear *CURRENT-WARNING-PREFIX*.
2016-02-01 08:59:13 +01:00
Ludovic Courtès 689b658db8 build: Really enable Guile warnings.
* build-aux/compile-all.scm (compile-options): Rename to...
(warnings): ... this.  Add 'unsupported-warning'.
(compile-file*): Pass '(#:warnings ...) as #:opts.
2016-02-01 08:59:13 +01:00
Alex Kost 171a0a13a4 Rename 'dmd' to 'shepherd' in comments and strings.
* build-aux/hydra/demo-os.scm (operating-system)[issue]: Point to
  shepherd instead of dmd.
* ROADMAP: Likewise.
* gnu/build/install.scm (directives): Adjust comment.
2016-01-29 20:21:54 +03:00
Mathieu Lirzin 8c3d889456 build: Add 'DL' silent rule.
* Makefile.am (AM_V_DL, AM_V_DL_, AM_V_DL_0): New variables.
* gnu-system.am (gnu/packages/bootstrap/x86_64-linux/guile-2.0.9.tar.xz)
(gnu/packages/bootstrap/i686-linux/guile-2.0.9.tar.xz)
(gnu/packages/bootstrap/armhf-linux/guile-2.0.11.tar.xz)
(gnu/packages/bootstrap/mips64el-linux/guile-2.0.9.tar.xz): Use $(AM_V_DL).
* build-aux/download.scm: Print a line break between target and origin.
2016-01-28 16:31:38 +01:00
Ludovic Courtès af46761302 hydra: Honor the 'max-silent-time' package property.
Suggested by Mark H Weaver <mhw@netris.org>.

* build-aux/hydra/gnu-system.scm (package->alist): Add
'max-silent-time' pair.
2016-01-19 22:12:11 +01:00
Taylan Ulrich Bayırlı/Kammer de6af32783 build: Speed up .go compilation.
* build-aux/compile-all.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
(%.go, make-go): New rules.
2016-01-18 08:57:55 +01:00
Ludovic Courtès 7a2eed3aac hydra: Add missing phase and inputs for 'make dist' job.
* build-aux/hydra/guix.scm (tarball-package): Inherit from 'guix-devel'
rather than 'guix'.  Pass #:phases to 'dist-package'.
2016-01-13 17:43:21 +01:00
Ludovic Courtès a6785b96ff hydra: Add Graphviz and help2man as inputs to the Guix job set.
* build-aux/hydra/guix.scm (tarball-package): Add GRAPHVIZ and HELP2MAN
  to 'native-inputs' of GUIX.
2015-10-14 21:39:05 +02:00
Ludovic Courtès c80f1559eb hydra: Update demo OS to new service interface.
* build-aux/hydra/demo-os.scm: Import (gnu services dbus); remove
  arguments to 'dbus-service'.
2015-10-13 00:06:11 +02:00
Ludovic Courtès afd3d9316c Use "normalized codesets" everywhere.
In other words, change "xx_YY.UTF-8" to "xx_YY.utf8".

* guix/profiles.scm (ca-certificate-bundle): Use "en_US.utf8" instead of
  "en_US.UTF-8".
* guix/packages.scm (patch-and-repack): Likewise.
* guix/build/gnu-build-system.scm (install-locale): Likewise.
* guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Likewise.
* gnu/packages/python.scm (python-ipython): Likewise.
* gnu/packages/gawk.scm (gawk): Likewise.
* build-aux/hydra/demo-os.scm: Likewise.
* gnu/packages/guile.scm (guile-ncurses)[arguments]: Remove
  'change-locale' phase.
2015-10-04 00:10:03 +02:00
Mark H Weaver eb55e28c84 hydra: Remove cross-builds from armhf-linux to mips64el-linux-gnuabi64.
* build-aux/hydra/gnu-system.scm (hydra-jobs)[cross-jobs]: Modify
  'from-32-to-64?' to include 'armhf-linux' in the set of 32-bit systems.
2015-09-09 16:35:03 -04:00
Ludovic Courtès e348eaaf31 check-available-binaries: Use 'substitutable-paths'.
* build-aux/check-available-binaries.scm: Rewrite to use 'substitutable-paths'
  instead of 'substitution-oracle'.  The latter does more than we need, and it
  no longer check the substitutability of valid items, which is not what we
  want.  Use 'lset-difference' instead of iterating over the items.
2015-07-21 22:28:20 +02:00
Mark H Weaver 629f4d2e6e gnu: gcc-5.1, gcc-toolchain-5.1, libstdc++-doc-5.1: Rename to *-5.
This reflects the new version numbering scheme for GCC 5 and up.
See <https://gcc.gnu.org/develop.html>.

* gnu/packages/gcc.scm (gcc-5.1): Rename to ...
  (gcc-5): ... this.
  (libstdc++-doc-5.1): Rename to ...
  (libstdc++-doc-5): ... this, and use gcc-5.
* gnu/packages/commencement.scm (gcc-toolchain-5.1): Rename to ...
  (gcc-toolchain-5): ... this, and use gcc-5.
* build-aux/hydra/gnu-system.scm (%core-packages): Use gcc-5.
2015-07-19 23:20:39 -04:00
Alex Kost a8ac45b19e build: Generate 'AUTHORS'.
* build-aux/generate-authors.scm: New file.
* Makefile.am (gen-AUTHORS): New target.
  (dist-hook, .PHONY): Add it.
2015-07-06 19:00:19 +03:00
Mark H Weaver 2abf678682 Merge branch 'master' into core-updates 2015-06-18 01:32:37 -04:00
Mark H Weaver c362a40a58 hydra: Fix the demo OS.
* build-aux/hydra/demo-os.scm: Don't try to import (gnu services dbus), which
  no longer exists.  Use 'use-service-modules' and 'use-package-modules'.  Use
  "en_US.UTF-8" as system locale.
2015-06-18 01:32:20 -04:00
Mathieu Lirzin 4192e898a4 list-packages: Move to guix-artwork repository.
In order to integrate the package list in the GuixSD website, the listing of
packages has been moved into the website implementation.

* build-aux/list-packages.scm: Remove file.
* Makefile.am (EXTRA_DIST): Adapt to it.
2015-06-17 22:16:39 +02:00
Ludovic Courtès a2ee6cbea2 hydra: Remove GCC 4.7 from the core set, and add 4.9 and 5.1.
* build-aux/hydra/gnu-system.scm (%core-packages): Remove GCC-4.7.  Add
  GCC-4.9 and GCC-5.1.
2015-06-16 15:41:17 +02:00
Mark H Weaver ae0bcc1e9d hydra: Support per-package absolute build timeouts.
* build-aux/hydra/gnu-system.scm (package->alist): Use the 'timeout' value in
  the package 'properties' alist, if present.
2015-05-29 14:33:32 -04:00
David Thompson 4d043ab628 ui: Deduplicate 'show-what-to-build*'.
* guix/ui.scm (show-what-to-build*): New procedure.
* guix/scripts/environment.scm (show-what-to-build*): Delete.
* guix/scripts/system.scm (show-what-to-build*): Likewise.
* build-aux/make-binary-tarball.scm (show-what-to-build*): Likewise.
2015-05-21 08:29:47 -04:00
Ludovic Courtès 897e5d9960 hydra: Increase USB image size.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Increase disk image size
  to 860 MiB, for x86_64.
2015-05-15 22:55:14 +02:00
Ludovic Courtès d7fdab2541 build: check-final-inputs-self-contained uses %HYDRA-SUPPORTED-SYSTEMS.
* build-aux/check-final-inputs-self-contained.scm: Change
  '%supported-systems' to '%hydra-supported-systems'.
2015-05-10 22:29:16 +02:00
Ludovic Courtès b9212a5455 Merge branch 'core-updates' 2015-05-02 22:42:53 +02:00
Ludovic Courtès a413bc8bd3 hydra: Update Guix job set.
* build-aux/hydra/guix.scm (tarball-package): Remove 'nix-checkout'
  parameter.  Remove 'arguments', 'native-inputs', and 'location'
  fields.  Adjust caller accordingly.
  (hydra-jobs): Remove 'nix-checkout'.
2015-05-02 22:16:06 +02:00
Ludovic Courtès 78bed82d19 check-available-binaries: Use %HYDRA-SUPPORTED-SYSTEMS.
* build-aux/check-available-binaries.scm: Use %HYDRA-SUPPORTED-SYSTEMS
  instead of %SUPPORTED-SYSTEMS.
2015-05-01 17:38:09 +02:00
Ludovic Courtès 75c5475f31 list-packages: Add status link only for systems supported on Hydra.
* build-aux/list-packages.scm (package->sxml)[status]:
  Intersect (package-transitive-supported-systems package) with
  %HYDRA-SUPPORTED-SYSTEMS.
2015-05-01 16:10:08 +02:00
Ludovic Courtès abcbda48c2 packages: Add '%hydra-supported-systems'.
* build-aux/hydra/gnu-system.scm (%hydra-supported-systems): Remove.
* guix/packages.scm (%hydra-supported-systems): New variable.
2015-05-01 16:05:40 +02:00
Mark H Weaver 95203be9ef hydra: Add %hydra-supported-systems variable and use it.
* build-aux/hydra/gnu-system.scm (%hydra-supported-systems): New variable.
  (hydra-jobs): Use %hydra-supported-systems instead of %supported-systems.
2015-04-22 17:25:28 -04:00
Ludovic Courtès bbceb0ef8a packages: Add 'supported-package?'.
* guix/packages.scm (supported-package?): New procedure.
* tests/packages.scm ("supported-package?"): New test.
* build-aux/hydra/gnu-system.scm (package->job): Use it instead of
  'package-transitive-supported-systems'.
2015-04-19 23:34:53 +02:00
Mark H Weaver 933204e5b1 Merge branch 'master' into core-updates
Conflicts:
	gnu-system.am
	gnu/packages/gstreamer.scm
2015-04-17 09:54:11 -04:00
Ludovic Courtès e1600f6996 hydra: Increase size of USB image.
* build-aux/hydra/gnu-system.scm (qemu-jobs) <usb-image>: Increase from
  800 MiB to 850 MiB.
2015-04-16 10:05:36 +02:00
Ludovic Courtès 8bc35f85b7 build: Add missing 'make-binary-tarball.scm' script.
This script is used by the target added in 9d3fb6c.

* build-aux/make-binary-tarball.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2015-04-14 23:29:26 +02:00
Ludovic Courtès b607593533 hydra: Add jobs for the self-contained tarball.
* build-aux/hydra/gnu-system.scm (tarball-jobs): New procedure.
  (hydra-jobs): Use it.
2015-04-14 23:26:41 +02:00
Ludovic Courtès 36a1eec50a list-packages: Use GuixSD logo and name.
* build-aux/list-packages.scm (packages->sxml): Change to use
  GuixSD-V.png and use the name "Guix System Distribution".
2015-03-06 13:58:06 +01:00
Ludovic Courtès 43da8f018d build: Disable grafting in sanity checks.
* build-aux/check-available-binaries.scm: Wrap body in 'parameterize'
  form that clears '%graft?'.
* build-aux/check-final-inputs-self-contained.scm: Likewise.
2015-02-24 23:43:03 +01:00
Ludovic Courtès 57b7e1a62d Merge branch 'core-updates'
Conflicts:
	gnu/packages/bootstrap.scm
2015-01-16 13:27:03 +01:00
Ludovic Courtès df5188ddfa check-available-binaries: Use 'substitution-oracle'.
* build-aux/check-available-binaries.scm: Use 'substitution-oracle'.
  Changer caller and 'warn' accordingly.
2015-01-14 18:28:46 +01:00
Ludovic Courtès 619c9522b2 check-available-binaries: Use 'with-store'.
* build-aux/check-available-binaries.scm: Use 'with-store' instead of an
  explicit 'open-connection'.
2015-01-14 18:20:01 +01:00
Ludovic Courtès 58caebf032 build: Use the canonical list of supported systems in 'assert-*'.
* build-aux/check-available-binaries.scm (%supported-systems): Remove.
* build-aux/check-final-inputs-self-contained.scm (%supported-systems):
  Remove.
2015-01-14 17:05:10 +01:00
Ludovic Courtès e87f0591f3 monads: Move '%store-monad' and related procedures where they belong.
This turns (guix monads) into a generic module for monads, and moves the
store monad and related monadic procedures in their corresponding
module.

* guix/monads.scm (store-return, store-bind, %store-monad, store-lift,
  text-file, interned-file, package-file, package->derivation,
  package->cross-derivation, origin->derivation, imported-modules,
  compiled, modules, built-derivations, run-with-store): Move to...
* guix/store.scm (store-return, store-bind, %store-monad, store-lift,
  text-file, interned-file): ... here.
  (%guile-for-build): New variable.
  (run-with-store): Moved from monads.scm.  Remove default value for
  #:guile-for-build.
* guix/packages.scm (default-guile): Export.
  (set-guile-for-build): New procedure.
  (package-file, package->derivation, package->cross-derivation,
  origin->derivation): Moved from monads.scm.
* guix/derivations.scm (%guile-for-build): Remove.
  (imported-modules): Rename to...
  (%imported-modules): ... this.
  (compiled-modules): Rename to...
  (%compiled-modules): ... this.
  (built-derivations, imported-modules, compiled-modules): New
  procedures.
* gnu/services/avahi.scm, gnu/services/base.scm, gnu/services/dbus.scm,
  gnu/services/dmd.scm, gnu/services/networking.scm,
  gnu/services/ssh.scm, gnu/services/xorg.scm, gnu/system/install.scm,
  gnu/system/linux-initrd.scm, gnu/system/shadow.scm, guix/download.scm,
  guix/gexp.scm, guix/git-download.scm, guix/profiles.scm,
  guix/svn-download.scm, tests/monads.scm: Adjust imports accordingly.
* guix/monad-repl.scm (default-guile-derivation): New procedure.
  (store-monad-language, run-in-store): Use it.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Add explicit
  'set-guile-for-build' call.
* guix/scripts/archive.scm (derivation-from-expression): Likewise.
* guix/scripts/build.scm (options/resolve-packages): Likewise.
* guix/scripts/environment.scm (guix-environment): Likewise.
* guix/scripts/system.scm (guix-system): Likewise.
* doc/guix.texi (The Store Monad): Adjust module names accordingly.
2015-01-14 13:34:52 +01:00
Mark H Weaver aa1e19477b gnu: Add bootstrap binaries for 'armhf-linux'.
* gnu/packages/bootstrap/armhf-linux/bash,
  gnu/packages/bootstrap/armhf-linux/mkdir,
  gnu/packages/bootstrap/armhf-linux/tar,
  gnu/packages/bootstrap/armhf-linux/xz: New files.

* gnu-system.am (bootstrap_armhf_linuxdir, dist_bootstrap_armhf_linux_DATA)
  (nodist_bootstrap_armhf_linux_DATA): New variables.
  (DISTCLEANFILES): Add $(nodist_bootstrap_armhf_linux_DATA).
  (gnu/packages/bootstrap/armhf-linux/guile-2.0.11.tar.xz): New target.
* build-aux/download.scm (file-name->uri): Use newer date in URI for
  armhf-linux.
* gnu/packages/bootstrap.scm (raw-build): Use "guile-2.0.11.tar.xz" on
  armhf-linux.
  (glibc-dynamic-linker, %bootstrap-coreutils&co, %bootstrap-binutils)
  (%bootstrap-glibc, %bootstrap-gcc): Add armhf-linux cases.

* m4/guix.m4 (GUIX_SYSTEM_TYPE): Add armhf case.
  (GUIX_ASSERT_SUPPORTED_SYSTEM): Add armhf-linux to list of
  supported systems.
* doc/guix.texi (GNU Distribution): Add armhf-linux to the list of
  supported systems.
2015-01-07 21:47:51 -05:00
Ludovic Courtès 1c69e4ce3f list-packages: Expand 'mirror://' URIs for patches.
* build-aux/list-packages.scm (package->sxml)[patches](patch-url): Use
  'maybe-expand-mirrors' to get the real URL.
2014-12-29 21:19:17 +01:00
Ludovic Courtès 9cd0dfaa46 system: Change "en_US.UTF-8" to "en_US.utf8".
* build-aux/hydra/demo-os.scm (locale): Change to "en_US.utf8".
* gnu/system/install.scm (installation-os)[locale]: Ditto.
2014-11-29 11:37:53 +01:00
Ludovic Courtès 9c960731d6 hydra: Build only non-grafted variants of the packages.
* build-aux/hydra/gnu-system.scm (package->alist): Pass #:graft? #f.
  (package-cross-job): Adjust last argument of 'package->alist' to
  accept #:graft?.  This fixes the problem reported in commit a480307.
2014-11-21 16:33:53 +01:00
Ludovic Courtès 37627ffa89 lint: Fold 'sync-descriptions' script as 'gnu-description' lint checker.
* build-aux/sync-descriptions.scm: Remove.  Move payload to...
* guix/scripts/lint.scm: ... here.
  (escape-quotes, official-gnu-packages*,
  check-gnu-synopsis+description): New procedures.
  (%checkers): Add 'gnu-descriptions'.
* Makefile.am (EXTRA_DIST): Remove build-aux/sync-descriptions.scm.
  (sync-descriptions): Use 'guix lint'.
2014-11-19 22:52:28 +01:00
Ludovic Courtès a480307449 Revert "hydra: Build only non-grafted variants of the packages."
This reverts commit 9de1defe79.

Passing #:graft? was not possible because of the use of 'cut' on call
sites.
2014-11-13 17:46:57 +01:00
Ludovic Courtès 9de1defe79 hydra: Build only non-grafted variants of the packages.
* build-aux/hydra/gnu-system.scm (package->alist): Pass #:graft? #f to
  PACKAGE-DERIVATION.
2014-11-13 14:21:09 +01:00
Ludovic Courtès 91781e0268 hydra: Make USB installation image bigger.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Require 800 MiB for the
  USB disk image.
2014-11-12 13:52:09 +01:00
Ludovic Courtès f81ac34dd9 pull: Use the build procedure provided by the newly-downloaded Guix.
Fixes <http://bugs.gnu.org/18534>.

* guix/scripts/pull.scm (with-environment-variable, with-PATH): New
  macros.
  (temporary-directory, first-directory, interned-then-deleted): New
  procedures.
  (unpack): Rewrite to do the unpacking in the current process rather
  than as a separate derivation.
  (%self-build-file): New variable.
  (build-from-source): New procedure.
  (build-and-install): Use it.
* guix/build/pull.scm (build-guix): Rename 'tarball' argument to
  'source'.  Remove #:tar and #:gzip parameters, as well as 'tar'
  invocation.  Remove 'scandir' invocation.  Wrap body in
  'with-directory-excursion'.
* build-aux/build-self.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2014-11-09 22:33:45 +01:00
Ludovic Courtès bc36105651 list-packages: Add Hydra links only for the supported systems.
* build-aux/list-packages.scm (package->sxml)[status]: Use
  'package-transitive-supported-systems' instead of a hard-coded list of
  systems.
2014-10-28 10:30:38 +01:00
Ludovic Courtès 7c3c0374de packages: Add 'package-transitive-supported-systems'.
* guix/packages.scm (package-transitive-supported-systems): New procedure.
* tests/packages.scm ("package-transitive-supported-systems"): New test.
* build-aux/hydra/gnu-system.scm (package->job): Use it.
2014-10-17 23:23:21 +02:00
Ludovic Courtès 572bcdf0bc list-packages: Handle 'origin' patches.
* build-aux/list-packages.scm (package->sxml)[patches]: Handle the case
  where PATCH is an 'origin'.
2014-10-12 15:33:07 +02:00
Ludovic Courtès 4e097f8606 hydra: Honor 'package-supported-systems'.
* guix/packages.scm (%supported-systems): New variable.
  (<package>)[platforms]: Rename to...
  [supported-systems]: ... this.  Change default to %SUPPORTED-SYSTEMS.
* build-aux/hydra/gnu-system.scm (job-name, package->job): New
  procedures, formerly in 'hydra-jobs'.  Honor 'package-supported-systems'.
  (hydra-jobs): Use them.
2014-10-06 19:34:27 +02:00
Ludovic Courtès bed035c560 sync-descriptions: Improve output of proposed descriptions.
* build-aux/sync-descriptions.scm (escape-quotes): New procedure.
  Use it.  Add quotes around the proposed description.
2014-09-13 15:26:37 +02:00
Mark H Weaver 9e9cb0c7ba hydra: Adjust to (gnu packages commencement) split from (gnu packages base).
* build-aux/hydra/gnu-system.scm: Import (gnu packages commencement).
2014-08-28 13:57:08 -04:00
Ludovic Courtès bdb36958fb gnu: Split (gnu packages base), adding (gnu packages commencement).
* gnu/packages/base.scm (gnu-make-boot0, diffutils-boot0,
  findutils-boot0, %boot0-inputs, nix-system->gnu-triplet, boot-triplet,
  binutils-boot0, gcc-boot0, perl-boot0, linux-libre-headers-boot0,
  texinfo-boot0, %boot1-inputs, glibc-final-with-bootstrap-bash,
  cross-gcc-wrapper, static-bash-for-glibc, glibc-final,
  gcc-boot0-wrapped, %boot2-inputs, binutils-final, libstdc++,
  gcc-final, ld-wrapper-boot3, %boot3-inputs, bash-final, %boot4-inputs,
  guile-final, gnu-make-final, ld-wrapper, coreutils-final, grep-final,
  %boot5-inputs, %final-inputs, canonical-package, gcc-toolchain,
  gcc-toolchain-4.8, gcc-toolchain-4.9): Move to...
* gnu/packages/commencement.scm: ... here.  New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* build-aux/check-final-inputs-self-contained.scm: Adjust accordingly.
* gnu/packages/cross-base.scm: Likewise.
* gnu/packages/make-bootstrap.scm: Likewise.
* guix/build-system/cmake.scm (cmake-build): Likewise.
* guix/build-system/gnu.scm (standard-packages, gnu-build,
  gnu-cross-build): Likewise.
* guix/build-system/perl.scm (perl-build): Likewise.
* guix/build-system/python.scm (python-build): Likewise.
* guix/build-system/trivial.scm (guile-for-build): Likewise.
* guix/download.scm (url-fetch): Likewise.
* guix/gexp.scm (default-guile): Likewise.
* guix/git-download.scm (git-fetch): Likewise.
* guix/monads.scm (run-with-store): Likewise.
* guix/packages.scm (default-guile): Likewise.
* guix/scripts/package.scm (guix-package): Likewise.
* guix/scripts/refresh.scm: Likewise.
* guix/svn-download.scm (svn-fetch): Likewise.
* tests/builders.scm (%bootstrap-inputs, %bootstrap-search-paths):
  Likewise.
* tests/packages.scm ("GNU Make, bootstrap"): Likewise.
* tests/guix-package.sh: Likewise.
* gnu/services/base.scm: Use 'canonical-package' instead of xxx-final.
* gnu/services/xorg.scm: Likewise.
* gnu/system/vm.scm: Likewise.
* guix/scripts/pull.scm (guix-pull): Likewise.
2014-08-28 09:21:54 +02:00
Ludovic Courtès a69576ea85 system: Add '%devtmpfs-file-system' for udev, and '%base-file-systems'.
Suggested by Adam Pribyl <pribyl@lowlevel.cz>.

* gnu/services/base.scm (udev-service)[requirement]: Add
  'file-system-/dev'.
* gnu/system/file-systems.scm (%devtmpfs-file-system,
  %base-file-systems): New variables.
* gnu/system/install.scm (installation-services)[file-systems]: Use
  %base-file-systems.
* build-aux/hydra/demo-os.scm (file-systems): Likewise.
* doc/guix.texi (System Installation): Show %BASE-FILE-SYSTEMS in the
  example.
  (Using the Configuration System): Likewise.
  (File Systems): Document %base-file-systems, %devtmpfs-file-system,
  %binary-format-file-system, and %fuse-control-file-system.
2014-07-22 16:59:10 +02:00