config: '%state-directory' always honors $NIX_STATE_DIR.
[jackhill/guix/guix.git] / guix / config.scm.in
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
3 ;;;
4 ;;; This file is part of GNU Guix.
5 ;;;
6 ;;; GNU Guix is free software; you can redistribute it and/or modify it
7 ;;; under the terms of the GNU General Public License as published by
8 ;;; the Free Software Foundation; either version 3 of the License, or (at
9 ;;; your option) any later version.
10 ;;;
11 ;;; GNU Guix is distributed in the hope that it will be useful, but
12 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
13 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ;;; GNU General Public License for more details.
15 ;;;
16 ;;; You should have received a copy of the GNU General Public License
17 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
18
19 (define-module (guix config)
20 #:export (%guix-package-name
21 %guix-version
22 %guix-bug-report-address
23 %guix-home-page-url
24 %store-directory
25 %state-directory
26 %config-directory
27 %system
28 %libgcrypt
29 %nixpkgs
30 %nix-instantiate
31 %gzip
32 %bzip2
33 %xz))
34
35 ;;; Commentary:
36 ;;;
37 ;;; Compile-time configuration of Guix.
38 ;;;
39 ;;; Code:
40
41 (define %guix-package-name
42 "@PACKAGE_NAME@")
43
44 (define %guix-version
45 "@PACKAGE_VERSION@")
46
47 (define %guix-bug-report-address
48 "@PACKAGE_BUGREPORT@")
49
50 (define %guix-home-page-url
51 "@PACKAGE_URL@")
52
53 (define %store-directory
54 "@storedir@")
55
56 (define %state-directory
57 ;; This must match `NIX_STATE_DIR' as defined in `daemon.am'.
58 (or (getenv "NIX_STATE_DIR") "@guix_localstatedir@/nix"))
59
60 (define %config-directory
61 ;; This must match `NIX_CONF_DIR' as defined in `daemon.am'.
62 (or (getenv "NIX_CONF_DIR") "@guix_sysconfdir@/guix"))
63
64 (define %system
65 "@guix_system@")
66
67 (define %libgcrypt
68 "@LIBGCRYPT@")
69
70 (define %nixpkgs
71 (if (string=? "@NIXPKGS@" "")
72 #f
73 "@NIXPKGS@"))
74
75 (define %nix-instantiate
76 "@NIX_INSTANTIATE@")
77
78 (define %gzip
79 "@GZIP@")
80
81 (define %bzip2
82 "@BZIP2@")
83
84 (define %xz
85 "@XZ@")
86
87 ;;; config.scm ends here