download: Make 'http-fetch' public.
[jackhill/guix/guix.git] / guix / config.scm.in
CommitLineData
233e7676 1;;; GNU Guix --- Functional package management for GNU
72153902 2;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
00e219d1 3;;;
233e7676 4;;; This file is part of GNU Guix.
00e219d1 5;;;
233e7676 6;;; GNU Guix is free software; you can redistribute it and/or modify it
00e219d1
LC
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;;;
233e7676 11;;; GNU Guix is distributed in the hope that it will be useful, but
00e219d1
LC
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
233e7676 17;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
00e219d1
LC
18
19(define-module (guix config)
20 #:export (%guix-package-name
21 %guix-version
22 %guix-bug-report-address
3441e164 23 %guix-home-page-url
0b0086e9
LC
24
25 %storedir
26 %localstatedir
27 %sysconfdir
28 %sbindir
29
d8eea3d2
LC
30 %store-directory
31 %state-directory
3f40cfde 32 %config-directory
6bfec3ed 33 %guix-register-program
0b0086e9 34
d8eea3d2 35 %system
00e219d1 36 %libgcrypt
72153902 37 %libz
fe0cff14
LC
38 %nix-instantiate
39 %gzip
40 %bzip2
41 %xz))
00e219d1
LC
42
43;;; Commentary:
44;;;
13cee334
LC
45;;; Compile-time configuration of Guix. When adding a substitution variable
46;;; here, make sure to equip (guix scripts pull) to substitute it.
00e219d1
LC
47;;;
48;;; Code:
49
50(define %guix-package-name
51 "@PACKAGE_NAME@")
52
53(define %guix-version
54 "@PACKAGE_VERSION@")
55
56(define %guix-bug-report-address
57 "@PACKAGE_BUGREPORT@")
58
3441e164
LC
59(define %guix-home-page-url
60 "@PACKAGE_URL@")
61
0b0086e9
LC
62(define %storedir
63 "@storedir@")
64
65(define %localstatedir
66 "@guix_localstatedir@")
67
68(define %sysconfdir
69 "@guix_sysconfdir@")
70
71(define %sbindir
72 "@guix_sbindir@")
73
d8eea3d2 74(define %store-directory
1d6816f9 75 (or (and=> (getenv "NIX_STORE_DIR") canonicalize-path)
0b0086e9 76 %storedir))
d8eea3d2
LC
77
78(define %state-directory
03d0e2d2 79 ;; This must match `NIX_STATE_DIR' as defined in `nix/local.mk'.
0b0086e9
LC
80 (or (getenv "NIX_STATE_DIR")
81 (string-append %localstatedir "/guix")))
d8eea3d2 82
3f40cfde 83(define %config-directory
9dd674db 84 ;; This must match `GUIX_CONFIGURATION_DIRECTORY' as defined in `nix/local.mk'.
0b0086e9
LC
85 (or (getenv "GUIX_CONFIGURATION_DIRECTORY")
86 (string-append %sysconfdir "/guix")))
3f40cfde 87
6bfec3ed
LC
88(define %guix-register-program
89 ;; The 'guix-register' program.
0b0086e9
LC
90 (or (getenv "GUIX_REGISTER")
91 (string-append %sbindir "/guix-register")))
6bfec3ed 92
d8eea3d2
LC
93(define %system
94 "@guix_system@")
95
00e219d1
LC
96(define %libgcrypt
97 "@LIBGCRYPT@")
98
72153902
LC
99(define %libz
100 "@LIBZ@")
101
00e219d1
LC
102(define %nix-instantiate
103 "@NIX_INSTANTIATE@")
104
fe0cff14
LC
105(define %gzip
106 "@GZIP@")
107
108(define %bzip2
109 "@BZIP2@")
110
111(define %xz
112 "@XZ@")
113
00e219d1 114;;; config.scm ends here