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
7f131cf368
distro: Fix incorrect "bash" input for gcc-boot0-wrapped.
...
* distro/packages/base.scm (gcc-boot0-wrapped): Fix incorrect "bash" input.
2012-12-14 18:04:27 +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
9d1d434cd0
build-system/gnu: Avoid using /bin/sh.
...
* guix/build/gnu-build-system.scm (configure): Add `inputs' keyword
parameter. Take Bash from there, falling back to /bin/sh. Set
`CONFIG_SHELL' and `SHELL' to that Bash. Run "bash ./configure"
instead of just "./configure".
* distro/packages/bootstrap.scm (%bootstrap-inputs): Add "bash".
* distro/packages/base.scm (gcc-boot0-wrapped): Use "bash" from
%BOOT1-INPUTS instead of /bin/sh.
2012-12-13 23:38:32 +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
cb1427dd08
release.nix: tarball: Fix typo.
...
* release.nix (tarball): Replace "gnulib" by "nix".
2012-12-13 22:53:45 +01:00
Ludovic Courtès
53f974fd45
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:53:05 +01:00
Andreas Enge
8e1cd71376
distro: mpc: Update to 1.0.1.
...
* distro/packages/multiprecision.scm (mpc): Update to 1.0.1.
2012-12-13 22:28:46 +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
Ludovic Courtès
ba55b1cb69
doc: Fix typos.
...
* doc/guix.texi: Fix typos. Reported by Andreas Enge <andreas@enge.fr>.
2012-12-12 14:46:43 +01:00
Nikita Karetnikov
f15b31c562
licenses: Add 'bsd-style', 'expat', 'gpl1', 'gpl1+', 'lgpl2.0', and 'lgpl2.0+'.
...
* guix/licenses.scm (bsd-style, expat, gpl1, gpl1+)
(lgpl2.0, lgpl2.0+): New variables.
2012-12-12 14:40:11 +01:00
Ludovic Courtès
7a6548cbae
tests: Remove `t-profile' files on exit.
...
* tests/guix-package.sh: Use a trap on EXIT to remove profile-related
files. Reported by Andreas Enge <andreas@enge.fr>.
2012-12-12 00:10:32 +01:00
Ludovic Courtès
1c67d639d5
guix-package: Gracefully handle multiple installs of the same path.
...
* guix-package.in (guix-package)[process-actions]: Compute PACKAGES such
that packages listed in INSTALL* are first removed from the remainder
of the list. When PROF is equal to the previous profile's store path,
do nothing. Reported by Andreas Enge <andreas@enge.fr>.
* tests/guix-package.sh: Test the behavior of installing the same store
path twice. When removing a package, omit its version number.
2012-12-12 00:01:17 +01:00
Ludovic Courtès
a09ec3a5af
Have `%nixpkgs-directory' default to #f when $NIXPKGS is the empty string.
...
* guix/utils.scm (%nixpkgs-directory): Set to #f when the `NIXPKGS'
environment variable is set but empty. Reported by
Andreas Enge <andreas@enge.fr>.
2012-12-10 22:53:28 +01:00
Ludovic Courtès
836676450d
distro: lout: Delay use of of `nixpkgs-derivation'.
...
* distro/packages/lout.scm (lout): Don't fork with `nixpkgs-derivation',
to avoid any issues in the absence of `nix-instantiate'.
2012-12-10 14:35:03 +01:00
Ludovic Courtès
200dc93761
derivations: Distinguish direct store paths from files within a store path.
...
* guix/derivations.scm (derivation)[direct-store-path?]: New procedure.
Use it to determine which inputs must be added to the store.
2012-12-10 00:44:17 +01:00
Ludovic Courtès
4d152bf1d9
Merge branch 'master' into nix-integration
...
Conflicts:
guix/store.scm
2012-12-09 23:54:37 +01:00
Ludovic Courtès
3259877d35
store: Add GC-related operations.
...
* guix/store.scm (gc-action): New enumerate type.
(read-long-long, read-string-list, write-store-path,
write-store-path-list, read-store-path-list): New procedures.
(write-arg): Add support for `store-path' and `store-path-list'.
(read-arg): Add support for `store-path-list'.
(define-operation): Add support for multiple-value returns.
(run-gc, live-paths, dead-paths, collect-garbage, delete-paths): New
procedures.
(%long-long-max): New macro.
* tests/store.scm: New file.
* Makefile.am (TESTS): Add it.
2012-12-09 23:52:59 +01:00
Ludovic Courtès
d3648e0118
store: Add `add-temp-root'.
...
* guix/store.scm (add-temp-root): New procedure.
2012-12-09 23:50:17 +01:00
Ludovic Courtès
2af7e4a373
Update `THANKS'.
2012-12-09 23:35:15 +01:00
Ludovic Courtès
51c8d7909d
doc: Correct short name of `--install' option of `guix-package'.
...
* doc/guix.texi (Invoking guix-package): Fix short form of `--install'.
Reported by Andreas Enge <andreas@enge.fr>.
2012-12-09 23:35:03 +01:00
Ludovic Courtès
4ce823c424
daemon: Update to Nix 1.2-1-ge087bfe.
2012-12-09 14:54:01 +01:00
Ludovic Courtès
2d34fa4902
Update `TODO'.
2012-12-09 14:44:17 +01:00
Ludovic Courtès
09c95deb1e
Change email address in `AUTHORS'.
2012-12-09 14:42:30 +01:00
Ludovic Courtès
a0f16bb663
Update `AUTHORS'.
2012-12-08 19:21:47 +01:00
Nikita Karetnikov
838d78e3e0
Add (guix licenses).
...
* guix/licenses.scm: New file.
* Makefile.am (MODULES): Add it.
2012-12-08 19:17:02 +01:00
Ludovic Courtès
a4eabecd11
download: Fix the primary Savannah URL.
...
* guix/download.scm (%mirrors)[savannah]: Use
"http://download.savannah.gnu.org/releases/ " as the primary URL.
2012-12-07 22:32:03 +01:00
Nikita Karetnikov
6ad2697d23
distro: Add ACL.
...
* distro/packages/acl.scm: New file. Dependency on Perl added by
Ludovic.
* Makefile.am (MODULES): Add it.
2012-12-07 22:32:00 +01:00
Nikita Karetnikov
3d282f90f8
distro: Add Attr.
...
* distro/packages/attr.scm: New file. Dependency on Perl and
`patch-shebang' added by Ludovic.
* Makefile.am (MODULES): Add it.
2012-12-07 22:30:32 +01:00
Ludovic Courtès
e9f6d6dd45
doc: Add new dependencies in `README'.
...
* README (Hacking): Rename to...
(Requirements): ... this. Add the daemon's dependencies.
2012-12-06 22:54:10 +01:00
Ludovic Courtès
5c403e3518
daemon: Add more options.
...
* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_BUILD_USERS_GROUP,
GUIX_OPT_CACHE_FAILURES, GUIX_OPT_LOSE_LOGS,
GUIX_OPT_DISABLE_STORE_OPTIMIZATION, GUIX_OPT_IMPERSONATE_LINUX_26):
New macros.
(options)["build-users-group", "cache-failures", "lose-logs",
"disable-store-optimization", "impersonate-linux-2.6"]: New options.
(parse_opt): Handle them.
2012-12-06 22:21:45 +01:00
Ludovic Courtès
29833b26eb
build: Update skip count in `tests/derivations.scm'.
...
* tests/derivations.scm: When %STORE if #f, skip 11 tests.
2012-12-06 00:07:17 +01:00
Ludovic Courtès
aca54b395e
build: Run `distcheck' with `--enable-daemon'.
...
* Makefile.am (AM_DISTCHECK_CONFIGURE_FLAGS): Add `--enable-daemon'.
2012-12-06 00:07:17 +01:00
Ludovic Courtès
351782e2f1
build: Add missing daemon header to the distribution.
...
* daemon.am (guix_daemon_headers): New variable.
(noinst_HEADERS): Add it.
2012-12-06 00:07:17 +01:00