1.4 KiB
1.4 KiB
Babel Library
This library contains code blocks to be used by other files in this repository.
Converting Lists
Converting org lists into guix use-
calls.
`(,(string->symbol use-call)
,@(map (lambda (x)
(let ((splits (string-split x #\ )))
(if (and (= (length splits) 1)
(= 0 all-parens))
(string->symbol (car splits))
(map (lambda (y) (string->symbol y))
splits))))
entries))
Converting Org lists into Scheme symbol lists.
`(list
,@(map (lambda (x) (string->symbol x)) input))
Converting Tables
`(list
,@(map
(lambda (row)
(let ((service-name (car row))
(configuration (cadr row)))
`(service ,(string->symbol (string-append service-name "-service-type"))
(,(string->symbol (string-append service-name "-configuration"))
,@(call-with-input-string configuration
read)))))
input))