summaryrefslogtreecommitdiff
path: root/tests/guix-daemon.sh
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2012-12-04 23:16:11 +0100
committerLudovic Courtès <ludo@gnu.org>2012-12-04 23:51:48 +0100
commitd23077dc5ca1517bd6d1600664fe2303b86eb16c (patch)
treead0875d0cc2d9bc415506ff77adec3d699cc5115 /tests/guix-daemon.sh
parent2606bbcf917c0bc1b2ed10a104acfbbe151a941b (diff)
daemon: Add test.
* daemon.am (test_root, AM_TESTS_ENVIRONMENT): New variables. (clean-local): New target. * tests/guix-daemon.sh: New file.
Diffstat (limited to 'tests/guix-daemon.sh')
-rw-r--r--tests/guix-daemon.sh46
1 files changed, 46 insertions, 0 deletions
diff --git a/tests/guix-daemon.sh b/tests/guix-daemon.sh
new file mode 100644
index 0000000000..d7926b2376
--- /dev/null
+++ b/tests/guix-daemon.sh
@@ -0,0 +1,46 @@
+# Guix --- Nix package management from Guile. -*- coding: utf-8 -*-
+# Copyright (C) 2012 Ludovic Courtès <ludo@gnu.org>
+#
+# This file is part of Guix.
+#
+# Guix is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or (at
+# your option) any later version.
+#
+# Guix is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Guix. If not, see <http://www.gnu.org/licenses/>.
+
+#
+# Test the daemon.
+#
+
+set -e
+
+NIX_SUBSTITUTERS="" # don't resort to substituters
+NIX_IGNORE_SYMLINK_STORE=1 # in case the store is a symlink
+NIX_STORE_DIR="$TEST_ROOT/store"
+NIX_LOCALSTATE_DIR="$TEST_ROOT/var"
+NIX_LOG_DIR="$TEST_ROOT/var/log/nix"
+NIX_STATE_DIR="$TEST_ROOT/var/nix"
+NIX_DB_DIR="$TEST_ROOT/db"
+export NIX_SUBSTITUTERS NIX_IGNORE_SYMLINK_STORE NIX_STORE_DIR \
+ NIX_LOCALSTATE_DIR NIX_LOG_DIR NIX_STATE_DIR NIX_DB_DIR
+
+guix-daemon --version
+guix-build --version
+
+# Launch the daemon without chroot support because is may be
+# unavailable, for instance if we're not running as root.
+guix-daemon --disable-chroot &
+
+daemon_pid=$!
+trap "kill $daemon_pid" EXIT
+
+guix-build -e '(@ (distro packages bootstrap) %bootstrap-guile)'
+guix-build coreutils -n