summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--haunt.scm41
1 files changed, 30 insertions, 11 deletions
diff --git a/haunt.scm b/haunt.scm
index 1ef3ae4..6d8eeb9 100644
--- a/haunt.scm
+++ b/haunt.scm
@@ -223,7 +223,11 @@ free culture works available under the " ,%cc-by-sa-link " license.")
sxml->html)))
(define* (project-page #:key name file-name description usage requirements
- installation manual? license repo releases)
+ installation manual? license repo releases guix-package)
+ (define (tarball-url version)
+ (string-append "https://files.dthompson.us/"
+ repo "/" repo "-" version
+ ".tar.gz"))
(define body
`((h1 ,name)
,description
@@ -239,9 +243,7 @@ free culture works available under the " ,%cc-by-sa-link " license.")
(h2 "Releases")
(ul ,(map (match-lambda
((version date)
- (let ((url (string-append "https://files.dthompson.us/"
- repo "/" repo "-" version
- ".tar.gz")))
+ (let ((url (tarball-url version)))
`(li ,(date->string date "~Y-~m-~d")
" — " ,version " — "
,(anchor (string-append repo "-" version ".tar.gz")
@@ -257,20 +259,34 @@ free culture works available under the " ,%cc-by-sa-link " license.")
(h2 "Installation")
,@(if installation
(list installation)
- `((p ,name " uses the standard GNU build system. "
- "To build and install " ,name " from source, run:")
- (pre "./configure
+ (match (car releases)
+ ((version _)
+ `(,@(if guix-package
+ `((p "To install " ,name " with the GNU Guix package manager, run:")
+ (pre "guix install " ,guix-package))
+ '())
+ (p "To build and install " ,name " from source, run:")
+ (pre "wget "
+ ,(tarball-url version)
+ "
+tar xf "
+ ,repo "-" ,version ".tar.gz"
+ "
+cd "
+ ,repo "-" ,version
+ "
+./configure
make
-make install")))
+make install")))))
(h2 "License")
(p ,license)
- (h2 "Source Code")
+ (h2 "Git Repository")
,@(let ((web-url (string-append "https://git.dthompson.us/" repo ".git"))
(clone-url (string-append "git://dthompson.us/" repo ".git")))
`((p ,name " is developed using the Git version control
system. The official repository is hosted at "
- ,(anchor web-url web-url))
- (h3 "Anonymous clone")
+ ,(anchor web-url web-url) ".")
+ (p "To clone the repository, run:")
(pre "git clone " ,clone-url)))
(h2 "Community")
(p "Real-time discussion for " ,name " can be found on the "
@@ -359,6 +375,7 @@ functional, and reactive.")
#:name "Guile-SDL2"
#:file-name "guile-sdl2.html"
#:repo "guile-sdl2"
+ #:guix-package "guile-sdl2"
#:description
`((p "Guile-SDL2 provides "
,(anchor "Guile Scheme" "https://gnu.org/s/guile")
@@ -462,6 +479,7 @@ rendering."))
#:name "Haunt"
#:file-name "haunt.html"
#:repo "haunt"
+ #:guix-package "haunt"
#:manual? #t
#:description
`((p "Haunt is a simple, functional, hackable static site generator
@@ -509,6 +527,7 @@ and smile, because you've just generated your first Haunt site!"))
#:name "Chickadee"
#:file-name "chickadee.html"
#:repo "chickadee"
+ #:guix-package "guile-chickadee"
#:manual? #t
#:description
`((p "Chickadee is a game development toolkit for "