aboutsummaryrefslogtreecommitdiff
;; Drop into a development environment using
;;
;; guix shell
;;
;; Happy hacking!

(use-modules (gnu packages autotools)
             ((gnu packages base) #:select (gnu-make))
             ((gnu packages bioinformatics) #:select (ccwl))
             ((gnu packages databases) #:select (virtuoso-ose mariadb))
             (gnu packages graphviz)
             (gnu packages guile)
             ((gnu packages guile-xyz) #:select (guile-sparql) #:prefix guix:)
             ((gnu packages guile-xyz)
              #:select (guile-dbi
                        guile-dsv
                        guile-hashing
                        guile-libyaml
                        guile-dbd-mysql))
             ((gnu packages rdf) #:select (raptor2))
             (guix build-system gnu)
             (guix git-download)
             ((guix licenses) #:prefix license:)
             (guix packages))


;; Upstream guile-sparql tests are broken. Temporarily disable them.
(define guile-sparql
  (package
    (inherit guix:guile-sparql)
    (arguments
     `(#:tests? #f))))

(define run64
  (package
    (name "run64")
    (version "0.1.0")
    (source (origin
              (method git-fetch)
              (uri (git-reference
                    (url "https://git.systemreboot.net/run64")
                    (commit "e07c1f90f5436559839dea7c0231dd3ee36678ce")))
              (file-name (git-file-name name version))
              (sha256
               (base32
                "1la0x80b9s6am3hag0ijnvli3fzaa4iiiqm7dmwnyyhpd6n24jqn"))))
    (build-system gnu-build-system)
    (arguments
     `(#:make-flags (list (string-append "prefix=" %output))
       #:phases
       (modify-phases %standard-phases
         (delete 'configure))))
    (home-page "https://run64.systemreboot.net")
    (synopsis "SRFI-64 test runner for Scheme")
    (description "run64 is a SRFI-64 test runner for Scheme.")
    (license license:gpl3+)))

(packages->manifest
 (list gnu-make guile-3.0 guile-dbi guile-dbd-mysql guile-zlib
       guile-json-4 guile-dsv
       ;; We abuse (ccwl graphviz) as a library to visualize the database
       ;; schema. Hence we need ccwl and guile-libyaml.
       ccwl graphviz guile-hashing guile-libyaml guile-sparql
       raptor2 run64 virtuoso-ose mariadb))