Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1(import (chicken process-context) 2 (chicken format) 3 (chicken string)) 4 5(define env-var get-environment-variable) 6(define ref alist-ref) 7 8(define egg (read)) 9 10(printf "[~A]\n" (env-var "EGG_NAME")) 11 12(define dependencies 13 (map (lambda (dep) 14 (->string (if (list? dep) 15 (car dep) 16 dep))) 17 (append 18 (ref 'dependencies egg eqv? '()) 19 ;; TODO separate this into `buildInputs` and `propagatedBuildInputs` 20 (ref 'build-dependencies egg eqv? '())))) 21(printf "dependencies = [~A]\n" 22 (string-intersperse (map (lambda (dep) (sprintf "~S" dep)) 23 dependencies) 24 ", ")) 25 26(define license (ref 'license egg)) 27(printf "license = ~S\n" 28 (if (not license) 29 "" 30 (string-translate (->string (car license)) 31 "ABCDEFGHIJKLMNOPQRSTUVWXYZ " 32 "abcdefghijklmnopqrstuvwxyz-"))) 33 34(printf "sha256 = ~S\n" (env-var "EGG_SHA256")) 35 36(define synopsis (ref 'synopsis egg)) 37(printf "synopsis = ~S\n" 38 (if (not synopsis) 39 "" 40 (car synopsis))) 41 42(printf "version = ~S\n" (env-var "EGG_VERSION")) 43(print)