mirror of
git://git.savannah.gnu.org/guix/data-service.git
synced 2023-12-14 03:23:03 +01:00
73 lines
3.1 KiB
Scheme
73 lines
3.1 KiB
Scheme
;;; Guix Data Service -- Information about Guix over time
|
|
;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
|
;;; Copyright © 2019 Christopher Baines <mail@cbaines.net>
|
|
;;;
|
|
;;; This program is free software: you can redistribute it and/or
|
|
;;; modify it under the terms of the GNU Affero General Public License
|
|
;;; as published by the Free Software Foundation, either version 3 of
|
|
;;; the License, or (at your option) any later version.
|
|
;;;
|
|
;;; This program 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
|
|
;;; Affero General Public License for more details.
|
|
;;;
|
|
;;; You should have received a copy of the GNU Affero General Public
|
|
;;; License along with this program. If not, see
|
|
;;; <http://www.gnu.org/licenses/>.
|
|
|
|
(define-module (guix-data-service config)
|
|
#:use-module (guix store)
|
|
#:export (%config
|
|
|
|
assets-dir-in-store?))
|
|
|
|
(define %config
|
|
(let ((config
|
|
;; Try to find the "assets" directory relative to the executable
|
|
;; first. This is useful when using "pre-inst-env".
|
|
`((assets-dir . ,(let ((install-dir
|
|
"@prefix@/share/guix-data-service/assets")
|
|
(dev-dir
|
|
(string-append (getcwd) "/assets")))
|
|
(if (file-exists? install-dir)
|
|
install-dir
|
|
dev-dir)))
|
|
(doc-dir . ,(let ((install-dir
|
|
"@prefix@/share/doc/guix-data-service")
|
|
(dev-dir
|
|
(getcwd)))
|
|
(if (file-exists? install-dir)
|
|
install-dir
|
|
dev-dir)))
|
|
(dumps-dir . ,(let ((install-dir
|
|
"/var/lib/guix-data-service/dumps")
|
|
(dev-dir
|
|
(string-append (getcwd) "/dumps")))
|
|
(if (file-exists? install-dir)
|
|
install-dir
|
|
dev-dir)))
|
|
(host . "localhost")
|
|
(port . 8765)
|
|
|
|
(guix . "@guix@")
|
|
|
|
(sqitch . "@sqitch@")
|
|
(sqitch-psql . "@psql@")
|
|
(sqitch-plan . ,(let ((installed-plan
|
|
"@prefix@/share/guix-data-service/sqitch/sqitch.plan")
|
|
(dev-plan
|
|
(string-append (getcwd) "/sqitch/sqitch.plan")))
|
|
(if (file-exists? installed-plan)
|
|
installed-plan
|
|
dev-plan)))
|
|
|
|
(database-user . "guix_data_service")
|
|
(database-host . "localhost")
|
|
(database-name . "guix_data_service"))))
|
|
(lambda (key)
|
|
(assoc-ref config key))))
|
|
|
|
(define assets-dir-in-store?
|
|
(string-prefix? (%store-prefix)
|
|
(%config 'assets-dir)))
|