From cd5ad35b4106a2106313bd1ac3cb399218a58423 Mon Sep 17 00:00:00 2001 From: Amin Bandali Date: Fri, 29 Nov 2019 03:13:16 -0500 Subject: [PATCH 1/1] add static license page TODO: flexible footer --- haunt.scm | 49 ++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 42 insertions(+), 7 deletions(-) diff --git a/haunt.scm b/haunt.scm index 49db025..2bf1ce1 100644 --- a/haunt.scm +++ b/haunt.scm @@ -33,7 +33,9 @@ (a (@ (href "license.html")) "license.html") " for license conditions. Please copy and share.")))))) -(define (bandali-post-template post) +(define my-date-format "~B ~d, ~Y") + +(define (my-post-template post) `((header (h1 ,(post-ref post 'title)) (address "By " @@ -41,10 +43,10 @@ ,(post-ref post 'author)) " <" ,(post-ref post 'email) ">") (p (@ (class "date")) - ,(date->string (post-date post) "~B ~d, ~Y"))) + ,(date->string (post-date post) my-date-format))) ,(post-sxml post))) -(define (bandali-collection-template site title posts prefix) +(define (my-collection-template site title posts prefix) (define (post-uri post) (string-append (or prefix "") "/" (site-post-slug site post) ".html")) @@ -55,7 +57,7 @@ `(li (a (@ (href ,(post-uri post))) ,(post-ref post 'title)) - " — " ,(date->string (post-date post) "~B ~d, ~Y"))) + " — " ,(date->string (post-date post) my-date-format))) posts)))) (define bandali-theme @@ -64,8 +66,14 @@ (lambda (site title body) (base-layout site body #:title title)) - #:post-template bandali-post-template - #:collection-template bandali-collection-template)) + #:post-template my-post-template + #:collection-template my-collection-template)) + +(define (static-page title file-name body) + (lambda (site posts) + (make-page file-name + (with-layout bandali-theme site title body) + sxml->html))) (define (index-material site posts) `(div @@ -213,7 +221,7 @@ (td (a (@ (href ,(post-uri post))) ,(post-ref post 'title))) (td (@ (style "font-size: 0.875em;")) - ,(date->string (post-date post) "~B ~d, ~Y")))) + ,(date->string (post-date post) my-date-format)))) (take-up-to 10 (posts/reverse-chronological posts))))))) (define (index-page site posts) @@ -222,6 +230,32 @@ (base-layout site (index-material site posts)) sxml->html)) +(define license-page + (static-page + "Licensing Information" + "license.html" + `((h1 "License information for bandali.eu.org") + (p "I strongly believe in " + (a (@ (href "https://questioncopyright.org/what_is_free_culture")) + "free culture") + " and that all creative works everywhere should be " + (a (@ (href "https://freedomdefined.org/Definition")) "free" + ".")) + (p "Unless otherwise noted material on this site is licensed " + "under 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. A copy of the " + "license is included at " + (a (@ (href "gpl-3.0.html")) "gpl-3.0.html") ".") + (p "Some resources on free software and licenses:") + (ul + (li (a (@ (href "https://www.gnu.org/philosophy/free-sw.html")) + "What is free software?")) + (li (a (@ (href "https://www.gnu.org/licenses/license-list.html")) + "Various Licenses and Comments about Them")) + (li (a (@ (href "https://www.gnu.org/proprietary/proprietary.html")) + "Proprietary Software Is Often Malware")))))) + (define my-domain "bandali.eu.org") (site #:title "Amin Bandali" @@ -242,4 +276,5 @@ #:prefix "tags") (rss-feed #:file-name "feed.rss") + license-page (static-directory "static" ""))) -- 2.20.1