;;; Guix Data Service -- Information about Guix over time ;;; Copyright © 2017, 2018 Ricardo Wurmus ;;; Copyright © 2019 Christopher Baines ;;; ;;; 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 ;;; . (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 "@abs_top_builddir@/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)))