From c521b9d33aa8283f8ac40e70704ae66367433152 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Mon, 17 Nov 2025 03:07:54 +0000 Subject: guix: Add G-expressions to build website. --- .guix/ravanan-website.scm | 60 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 .guix/ravanan-website.scm (limited to '.guix') diff --git a/.guix/ravanan-website.scm b/.guix/ravanan-website.scm new file mode 100644 index 0000000..631192c --- /dev/null +++ b/.guix/ravanan-website.scm @@ -0,0 +1,60 @@ +;;; ravanan --- High-reproducibility CWL runner powered by Guix +;;; Copyright © 2025 Arun Isaac +;;; +;;; This file is part of ravanan. +;;; +;;; ravanan 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. +;;; +;;; ravanan 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 ravanan. If not, see . + +(define-module (ravanan-website) + #:use-module ((gnu packages fonts) #:select (font-charter font-fira-code)) + #:use-module ((gnu packages haskell-xyz) #:select (pandoc)) + #:use-module (guix gexp) + #:use-module (guix git-download) + #:use-module (guix utils) + #:use-module ((ravanan-package) #:select (ravanan))) + +(define ravanan-website-home-page-gexp + (with-imported-modules '((guix build utils)) + #~(begin + (use-modules (guix build utils)) + + (invoke #$(file-append pandoc "/bin/pandoc") + "--standalone" + "--metadata" "title=ravanan" + "--metadata" "document-css=false" + "--css=style.css" + "--from=gfm" + (string-append "--output=" #$output) + #$(file-append #$(package-source ravanan) + "/README.md"))))) + +(define-public ravanan-website + (file-union "ravanan-website" + `(("index.html" + ,(computed-file "ravanan-website-home-page.html" + ravanan-website-home-page-gexp)) + ("images/ravanan-king-of-lanka.jpg" + ,(local-file "../images/ravanan-king-of-lanka.jpg")) + ("style.css" ,(local-file "../website/style.css")) + ("fonts/charter_regular.woff2" + ,(file-append font-charter + "/share/fonts/web/charter_regular.woff2")) + ("fonts/FiraCode-Regular.woff2" + ,(file-append font-fira-code + "/share/fonts/web/FiraCode-Regular.woff2")) + ("fonts/FiraCode-SemiBold.woff2" + ,(file-append font-fira-code + "/share/fonts/web/FiraCode-SemiBold.woff2"))))) + +ravanan-website -- cgit 1.4.1