|author||Arun Isaac||2022-03-15 15:07:27 +0530|
|committer||Arun Isaac||2022-03-15 15:13:04 +0530|
tissue: Introduce declarative configuration.
The <tissue-configuration> record will provide a declarative configuration interface. * tissue/tissue.scm: New file.
1 files changed, 45 insertions, 0 deletions
diff --git a/tissue/tissue.scm b/tissue/tissue.scm
new file mode 100644
@@ -0,0 +1,45 @@
+;;; tissue --- Text based issue tracker
+;;; Copyright © 2022 Arun Isaac <email@example.com>
+;;; This file is part of tissue.
+;;; tissue 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.
+;;; tissue 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 tissue. If not, see <https://www.gnu.org/licenses/>.
+(define-module (tissue tissue)
+ #:use-module (srfi srfi-9)
+ #:export (tissue-configuration
+ (make-tissue-configuration project web-css web-tags-path)
+ (project tissue-configuration-project)
+ (web-css tissue-configuration-web-css)
+ (web-tags-path tissue-configuration-web-tags-path))
+(define* (tissue-configuration #:key project web-css (web-tags-path "/tags"))
+ "PROJECT is the name of the project. It is used in the title of the
+generated web pages, among other places.
+WEB-CSS is the path to a CSS stylesheet. It is relative to the
+document root and must begin with a /. If it is #f, no stylesheet is
+used in the generated web pages.
+WEB-TAGS-PATH is the path relative to the document root where the
+per-tag issue listings are put. It must begin with a /. If it is #f,
+per-tag issue listings are not generated."
+ (make-tissue-configuration project web-css web-tags-path))