Ludovic Courtès
233e76769a
Update license headers.
...
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-06 00:47:50 +01:00
Ludovic Courtès
fe8ff02827
Add `guix-gc'.
...
* 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-06 00:28:06 +01:00
Ludovic Courtès
2646c55b03
guix-build: Make `--root' effective for .drv files too.
...
* 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-06 00:18:43 +01:00
Ludovic Courtès
7244a5f74e
derivations: Add `derivation-path->output-paths'.
...
* guix/derivations.scm (derivation-path->output-paths): New procedure.
* tests/derivations.scm ("multiple-output derivation"): Test it.
2013-01-05 23:51:13 +01:00
Ludovic Courtès
3441e16497
ui: Factorize bug-report information in `--help'.
...
* 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-05 15:55:47 +01:00
Ludovic Courtès
706d0641cf
daemon: Show the chroot contents upon `--debug'.
...
* nix/nix-daemon/guix-daemon.cc (main)[HAVE_CHROOT]: Display the
contents of `settings.dirsInChroot' at `lvlDebug'.
2013-01-02 18:31:40 +01:00
Andreas Enge
60a290926b
distro: Add Berkeley DB.
...
* distro/packages/bdb.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-02 18:13:07 +01:00
Andreas Enge
9dc6f288bf
distro: Add MIT Kerberos 5.
...
* distro/packages/mit-krb5.scm: New file.
* Makefile.am (MODULES): Add it.
2013-01-02 01:08:51 +01:00
Ludovic Courtès
5501e6b64f
daemon: Properly initialize libgcrypt.
...
* nix/nix-daemon/guix-daemon.cc (main): Call `gcry_check_version'.
2013-01-02 01:07:53 +01:00
Ludovic Courtès
03fa275801
build: Avoid error message during make clean' when
test-tmp' doesn't exist.
...
* daemon.am (clean-local): Check whether $(GUIX_TEST_ROOT) exists before
running `find'.
2012-12-31 13:19:29 +01:00
Andreas Enge
3aa6fab83b
distro: Add Libntlm, GNU GSS and GNU SASL.
...
* distro/packages/gsasl.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-30 17:25:37 +01:00
Andreas Enge
2aaa45b03c
distro: automake: Update to 1.12.6.
...
* distro/packages/autotools.scm (automake): Update to 1.12.6.
2012-12-30 17:07:14 +01:00
Andreas Enge
2ee8edc450
distro: Add GNU Libidn.
...
* distro/packages/libidn.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-30 17:00:59 +01:00
Andreas Enge
a2745393d2
distro: Update libtasn1 and gnutls.
...
* distro/packages/gnutls.scm: Update libtasn1 and gnutls.
2012-12-30 16:34:07 +01:00
Ludovic Courtès
5a8fd06d01
distro: Add GNU idutils.
...
* distro/packages/idutils.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-21 22:50:44 +01:00
Andreas Enge
c8911fa395
distro: Add rsync.
...
* distro/packages/rsync.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-21 22:39:05 +01:00
Andreas Enge
2ed139c42c
distro: Add mpfrcx and fplll.
...
* distro/packages/algebra.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-20 01:43:38 +01:00
Nikita Karetnikov
5d5c427839
distro: Add Usbutils.
...
* distro/packages/linux.scm (usbutils): New variable.
2012-12-18 23:04:09 +00:00
Nikita Karetnikov
3b48f78c85
distro: Add Libusb.
...
* distro/packages/libusb.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-18 22:44:18 +00:00
Nikita Karetnikov
d8989c2394
distro: Add Check.
...
* distro/packages/check.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-17 15:26:58 +00:00
Ludovic Courtès
c43e006164
download: Remove unreachable SourceForge mirror.
...
* guix/download.scm (%mirrors)[sourceforge]: Remove kent.dl.*, which is
unreachable.
2012-12-17 00:18:15 +01:00
Ludovic Courtès
3c738d6bd8
download: Correctly detect "No route to host" conditions.
...
* guix/build/download.scm (open-connection-for-uri): Delete addrinfos
with the same address. Always open SOCK_STREAM/IPPROTO_IP sockets.
Fix the error handler's condition to determine what to do.
Reported by Nikita Karetnikov <nikita.karetnikov@gmail.com> at
<http://lists.gnu.org/archive/html/bug-guix/2012-12/msg00150.html >.
2012-12-17 00:14:30 +01:00
Ludovic Courtès
868fce7c4a
daemon: Gracefully handle Nix errors.
...
* nix/nix-daemon/guix-daemon.cc (main): Run Nix code in an exception
handler; gracefully print error messages, and exit with EXIT_FAILURE.
2012-12-16 18:28:00 +01:00
Ludovic Courtès
e2332e8aa7
daemon: Warn against running as root without `--build-users-group'.
...
* nix/nix-daemon/guix-daemon.cc (main): Recommend using
`--build-users-group' when running as root without a build users
group.
2012-12-16 18:13:59 +01:00
Ludovic Courtès
72ce03739e
daemon: Add `--chroot-directory'.
...
* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_CHROOT_DIR): New macro.
(options): Add `--chroot-directory'.
(parse_opt): Handle it.
2012-12-16 18:09:27 +01:00
Ludovic Courtès
07ab4bf1fc
guix-build: Add `--verbosity'.
...
* guix-build.in (%default-options): Add `verbosity'.
(%options): Add `--verbosity'.
(guix-build): Pass it to `set-build-options'.
(show-help): Update accordingly.
* doc/guix.texi (Invoking guix-build): Document `--verbosity'.
2012-12-15 15:21:38 +01:00
Ludovic Courtès
da30f55582
daemon: Add `--debug' option.
...
* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_DEBUG): New macro.
(options): Add `--debug'.
(parse_opt): Set `verbosity' upon GUIX_OPT_DEBUG.
2012-12-15 00:06:09 +01:00
Ludovic Courtès
335dd762cc
daemon: Disable use of substitutes for now.
...
* nix/nix-daemon/guix-daemon.cc (main): Set `settings.useSubstitutes' to
false, and `settings.substituters' to the empty list.
2012-12-14 23:57:33 +01:00
Nikita Karetnikov
4a44e743a0
distro: Use (guix licenses) instead of strings.
...
* distro/packages/acl.scm, distro/packages/attr.scm,
distro/packages/autotools.scm, distro/packages/base.scm,
distro/packages/bash.scm, distro/packages/bdw-gc.scm,
distro/packages/bison.scm, distro/packages/bootstrap.scm,
distro/packages/compression.scm, distro/packages/cpio.scm,
distro/packages/ddrescue.scm, distro/packages/ed.scm,
distro/packages/flex.scm, distro/packages/gawk.scm,
distro/packages/gdbm.scm, distro/packages/gettext.scm,
distro/packages/gnupg.scm, distro/packages/gnutls.scm,
distro/packages/gperf.scm, distro/packages/guile.scm,
distro/packages/help2man.scm, distro/packages/less.scm,
distro/packages/libffi.scm, distro/packages/libsigsegv.scm,
distro/packages/libunistring.scm, distro/packages/linux.scm,
distro/packages/lout.scm, distro/packages/lsh.scm,
distro/packages/m4.scm, distro/packages/multiprecision.scm,
distro/packages/nano.scm, distro/packages/ncurses.scm,
distro/packages/nettle.scm, distro/packages/perl.scm,
distro/packages/pkg-config.scm, distro/packages/pth.scm,
distro/packages/readline.scm, distro/packages/recutils.scm,
distro/packages/shishi.scm, distro/packages/system.scm,
distro/packages/texinfo.scm, distro/packages/time.scm,
distro/packages/wget.scm, distro/packages/which.scm,
distro/packages/zile.scm: Use (guix licenses).
2012-12-14 23:37:24 +01:00
Andreas Enge
0d12bea306
build: Avoid brace expansion in `nix/sync-with-upstream'.
...
* nix/sync-with-upstream: Avoid brace expansion, for the sake of Dash.
2012-12-14 22:12:37 +01:00
Ludovic Courtès
e1b7096acd
daemon: Build `nix-setuid-helper'.
...
* daemon.am (libexec_PROGRAMS, nix_setuid_helper_SOURCES,
nix_setuid_helper_CPPFLAGS, nix_setuid_helper_LDADD): New variables.
* test-env.in: Set and export `NIX_SETUID_HELPER'.
* README (Installing Guix as non-root): New section.
2012-12-14 18:15:37 +01:00
Ludovic Courtès
b3a53fb361
download: Work around (web client) bug < http://bugs.gnu.org/13095 >.
...
* guix/build/download.scm: Annihilate `shutdown' in (web client).
2012-12-14 18:07:10 +01:00
Ludovic Courtès
cdec10f936
release.nix: Remove trailing "/nix" from localstatedir.
...
* release.nix (tarball, build): Use /nix/var as localstatedir, as a
follow-up to 7f4f065.
2012-12-14 10:44:22 +01:00
Ludovic Courtès
7f4f06513a
build: Fix default value of `%state-directory'.
...
* guix/config.scm.in (%state-directory): Append `/nix'.
Reported by Andreas Enge <andreas@enge.fr>.
2012-12-13 23:53:37 +01:00
Ludovic Courtès
e2a06ddc7a
build: Have `bootstrap' run all the necessary steps.
...
* bootstrap: Always run "git submodule init". Run
`nix/sync-with-upstream'.
Reported by Nikita Karetnikov and Andreas Enge.
2012-12-13 23:46:33 +01:00
Ludovic Courtès
4aa52039a7
guix-package: Avoid use of the `guix' sub-directory for profiles.
...
* guix-package.in (%current-profile): Change to `guix-profile'.
2012-12-13 23:02:22 +01:00
Ludovic Courtès
6cb3ccf835
release.nix: tarball: Fix typo.
...
* release.nix (tarball): Replace "gnulib" by "nix".
2012-12-13 22:57:37 +01:00
Ludovic Courtès
a020d2a996
guix-package: Use directory names from (guix config).
...
* guix-package.in (%profile-directory): Use %STATE-DIRECTORY instead of
a hard-coded directory.
2012-12-13 22:57:36 +01:00
Ludovic Courtès
d7e2841b9d
distro: lout: Comment out dependency on Ghostscript.
...
* distro/packages/lout.scm (lout): Temporarily comment out dependency on
Ghostscript as this was causing evaluation errors on Hydra.
2012-12-13 22:28:34 +01:00
Ludovic Courtès
1e9824513c
Merge branch 'nix-integration'
...
Conflicts:
tests/guix-package.sh
2012-12-13 22:14:25 +01:00
Ludovic Courtès
b35c0f866c
release.nix: Add `build_disable_daemon'.
...
* release.nix (build_disable_daemon): New job.
2012-12-13 22:08:33 +01:00
Ludovic Courtès
6a95fa501f
release.nix: build: Allow builds within a chroot.
...
* release.nix (build): Remove `__noChroot' and `preConfigure'.
2012-12-13 22:08:13 +01:00
Ludovic Courtès
ad1ebab379
tests: Skip network-dependent tests when the network is unreachable.
...
* tests/builders.scm (network-reachable?): New variable.
("url-fetch", "gnu-build"): Skip unless NETWORK-REACHABLE?.
* tests/derivations.scm (%coreutils): Check for network access.
("build-expression->derivation with one input"): Skip when %COREUTILS
is #f.
* tests/guix-package.sh: Skip installation of GNU Make when the network
is unreachable.
* tests/packages.scm ("GNU Make, bootstrap"): Likewise.
* tests/union.scm ("union-build"): Likewise.
2012-12-13 22:06:45 +01:00
Ludovic Courtès
5fb868033f
release.nix: Build the daemon.
...
* release.nix (tarball): Add `preAutoconf'. Augment `buildInputs' and
`configureFlags' to allow daemon builds.
(build): Likewise.
2012-12-13 00:28:51 +01:00
Ludovic Courtès
c9b70836d0
build: Make `--enable-daemon' the default.
...
* configure.ac: Have $guix_build_daemon default to "yes".
2012-12-13 00:27:27 +01:00
Ludovic Courtès
3a61f8017a
build: When `--enable-daemon', don't error out when Nix programs are missing.
...
* config-daemon.ac: Move AC_ARG_ENABLE([daemon]...)...
* configure.ac: ... here.
When Nix programs are not found, error out only when
$guix_build_daemon is no.
2012-12-13 00:26:41 +01:00
Ludovic Courtès
8a9451c89e
tests: Arrange to have the socket file name fit in `sun_path'.
...
* test-env.in (NIX_STATE_DIR): Choose a slightly smaller directory name.
2012-12-13 00:24:27 +01:00
Ludovic Courtès
fdb50f8d8a
tests: base32: Work around `system*' bug.
...
* tests/base32.scm (%nix-hash): When `getenv' returns the empty string,
ignore it.
(%have-nix-hash?): New variable. Update `test-skip' clause to use it.
2012-12-13 00:23:20 +01:00
Ludovic Courtès
a9128eac41
daemon: Use `openssl' from $PATH.
...
* daemon.am (-DOPENSSL_PATH): Default to "openssl".
* TODO: Mention removal of OpenSSL dependency.
2012-12-12 15:32:35 +01:00
Ludovic Courtès
70915c1a2e
guix-package: Add `--verbose'; silence the environment's build by default.
...
* guix-package.in (%options): Add `--verbose'.
(show-help): Update accordingly.
(guix-package): Parameterize `current-build-output-port' according to
VERBOSE?. By default, silence the environment build's output.
2012-12-12 14:59:16 +01:00