summaryrefslogtreecommitdiff
path: root/haunt/jakob/dynamic/config.scm
diff options
context:
space:
mode:
Diffstat (limited to 'haunt/jakob/dynamic/config.scm')
-rw-r--r--haunt/jakob/dynamic/config.scm37
1 files changed, 37 insertions, 0 deletions
diff --git a/haunt/jakob/dynamic/config.scm b/haunt/jakob/dynamic/config.scm
new file mode 100644
index 0000000..5eb615b
--- /dev/null
+++ b/haunt/jakob/dynamic/config.scm
@@ -0,0 +1,37 @@
+;;; Copyright © 2019 - 2023 Jakob L. Kreuze <zerodaysfordays@sdf.org>
+;;;
+;;; This program 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.
+;;;
+;;; 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
+;;; General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with this program. If not, see
+;;; <http://www.gnu.org/licenses/>.
+
+(define-module (jakob dynamic config)
+ #:export (%debug-enabled
+ paramstring-for-dbname))
+
+;; Whether or not to enable "debug mode", in which:
+;;
+;; - Log messages are written to stdout.
+;; - Rate limiting is disabled.
+(define %debug-enabled (make-parameter (or (getenv "API_SERVER_DEBUG") #f)))
+
+;; Should be fairly self-explanatory.
+(define %postgresql-user (make-parameter (or (getenv "API_SERVER_DB_USER") "jakob_dynamic")))
+(define %postgresql-host (make-parameter (or (getenv "API_SERVER_DB_HOST") "localhost")))
+(define %postgresql-port (make-parameter (or (getenv "API_SERVER_DB_PORT") "5432")))
+
+(define (paramstring-for-dbname dbname)
+ (format #f "host=~a port=~a user=~a dbname=~a"
+ (%postgresql-host)
+ (%postgresql-port)
+ (%postgresql-user)
+ dbname))