diff options
Diffstat (limited to 'feed.scm')
| -rw-r--r-- | feed.scm | 25 |
1 files changed, 21 insertions, 4 deletions
@@ -2,8 +2,25 @@ (import scheme (chicken base) (chicken format) - atom) + (chicken file) + (chicken io) + (chicken process) + (chicken pathname) + utils) - (define (generate-feed archive-dir) - ;; TODO generate feed with https://wiki.call-cc.org/eggref/5/atom or pandoc-rss - (printf "TODO generate-feed \"~A\"~%" archive-dir))) + (define (generate-feed archive-dir out-dir) + (define paths (glob (format "~A/*" archive-dir))) + (define output-port + (process "pandoc-rss" + (apply list "-s" + "-t" "jan's garden" + "-d" "RSS feed for Jan's personal digital garden" + "-l" "https://jan.systems" + "-f" "%s" + "-n" "en-GB" + "-c" "CC BY-SA 4.0" + "-w" "https://jan.systems" + paths))) + (define output (read-string #f output-port)) + (with-output-to-file (make-pathname out-dir "feed.xml") + (λ () (print output))))) |
