guile-jsonld/guix.scm

guix.scm

1
;;;; Copyright (C) 2019 Julien Lepiller <julien@lepiller.eu>
2
;;;; 
3
;;;; This library is free software; you can redistribute it and/or
4
;;;; modify it under the terms of the GNU Lesser General Public
5
;;;; License as published by the Free Software Foundation; either
6
;;;; version 3 of the License, or (at your option) any later version.
7
;;;; 
8
;;;; This library is distributed in the hope that it will be useful,
9
;;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
10
;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11
;;;; Lesser General Public License for more details.
12
;;;; 
13
;;;; You should have received a copy of the GNU Lesser General Public
14
;;;; License along with this library; if not, write to the Free Software
15
;;;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
16
;;;; 
17
18
(use-modules
19
  ((guix licenses) #:prefix license:)
20
  (guix build-system gnu)
21
  (guix download)
22
  (guix git-download)
23
  (guix packages)
24
  (guix utils)
25
  (gnu packages autotools)
26
  (gnu packages guile)
27
  (gnu packages pkg-config)
28
  (gnu packages texinfo)
29
  (gnu packages tls))
30
31
(define guile3.0-rdf
32
  (package
33
    (name "guile-rdf")
34
    (version "1.0")
35
    (source
36
      (origin
37
        (method git-fetch)
38
        (uri (git-reference
39
               (url "https://framagit.org/tyreunom/guile-rdf")
40
               (commit "63a95baf67f80a4abecff438fa594d63c081e8f7")))
41
        (file-name (git-file-name name version))
42
        (sha256
43
         (base32
44
          "0raclscf51cgxh3lg3i2qrbip6j3knnf4dr771hla2yvsrfw68x3"))))
45
    (build-system gnu-build-system)
46
    (arguments
47
     `(#:tests? #f)); require network
48
    (inputs
49
     `(("guile" ,guile-next)))
50
    (native-inputs
51
     `(("automake" ,automake)
52
       ("autoconf" ,autoconf)
53
       ("pkg-config" ,pkg-config)
54
       ("texinfo" ,texinfo)))
55
    (home-page "https://framagit.org/tyreunom/guile-rdf")
56
    (synopsis "Guile implementation of the RDF abstract syntax and the Turtle syntax")
57
    (description "Resource Description Framework (RDF) is a general-purpose
58
language for representing information in the Web.  Multiple languages can be
59
used to represent RDF data, turtle is one of them.")
60
    (license license:gpl3+)))
61
62
(package
63
  (name "guile-jsonld")
64
  (version "0.1")
65
  (source
66
    (origin
67
      (method git-fetch)
68
      (uri (git-reference
69
             (url "https://framagit.org/tyreunom/guile-jsonld")
70
             (commit version)))
71
      (file-name (git-file-name name version))
72
      (sha256
73
       (base32
74
        "00l03j8ajkd1a7sg1zycbpdaz71mscrncw7rwjzqk2ia6j04rwxm"))))
75
  (build-system gnu-build-system)
76
  (arguments
77
   `(#:tests? #f)); require network
78
  (inputs
79
   `(("guile" ,guile-next)
80
     ("guile-gnutls" ,guile3.0-gnutls)
81
     ("guile-json" ,guile3.0-json)
82
     ("guile-rdf" ,guile3.0-rdf)))
83
  (native-inputs
84
   `(("automake" ,automake)
85
     ("autoconf" ,autoconf)
86
     ("pkg-config" ,pkg-config)
87
     ("texinfo" ,texinfo)))
88
  (home-page "https://framagit.org/tyreunom/guile-jsonld")
89
  (synopsis "Guile implementation of the JsonLD API specification")
90
  (description "Guile JsonLD is an implementation of the JsonLD API defined
91
by the W3C for GNU Guile.  JsonLD stands for Json for Linked Data.  Linked Data
92
is a representation for the semantic web.  It allows you to express links
93
between data, in a way that is very similar to WikiData for instance.  An object
94
can have relations (in the form of an IRI) that relates it to one or more objects
95
or strings, represented by a Json object or an IRI.")
96
  (license license:gpl3+))
97