summaryrefslogtreecommitdiff
path: root/gnu/packages/web.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/web.scm')
-rw-r--r--gnu/packages/web.scm167
1 files changed, 156 insertions, 11 deletions
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index d23f6cb400..fc7626df38 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -58,6 +58,7 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
+ #:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix cvs-download)
#:use-module (guix hg-download)
@@ -79,6 +80,8 @@
#:use-module (gnu packages check)
#:use-module (gnu packages documentation)
#:use-module (gnu packages docbook)
+ #:use-module (gnu packages emacs)
+ #:use-module (gnu packages emacs-xyz)
#:use-module (gnu packages autotools)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
@@ -125,6 +128,7 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages qt)
#:use-module (gnu packages readline)
+ #:use-module (gnu packages re2c)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages textutils)
@@ -210,14 +214,14 @@ Interface} specification.")
;; ’stable’ and recommends that “in general you deploy the NGINX mainline
;; branch at all times” (https://www.nginx.com/blog/nginx-1-6-1-7-released/)
;; Consider updating the nginx-documentation package together with this one.
- (version "1.17.3")
+ (version "1.17.4")
(source (origin
(method url-fetch)
(uri (string-append "https://nginx.org/download/nginx-"
version ".tar.gz"))
(sha256
(base32
- "0g0g9prwjy0rnv6n5smny5yl5dhnmflqdr3hwgyj5jpr5hfgx11v"))))
+ "0mg521bxh8pysmy20x599m252ici9w97kk7qy7s0wrv6bqv4p1b2"))))
(build-system gnu-build-system)
(inputs `(("openssl" ,openssl)
("pcre" ,pcre)
@@ -437,7 +441,15 @@ APIs.")
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests included
- #:make-flags (list "CC=gcc")))
+ #:make-flags (list "CC=gcc")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-CFLAGS
+ ;; Remove broken options unconditionally added to CFLAGS.
+ (lambda _
+ (substitute* "configure.ac"
+ ((" -Werror") ""))
+ #t)))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
@@ -862,6 +874,45 @@ for efficient socket-like bidirectional reliable communication channels.")
;; This is LGPLv2.1-only with extra exceptions specified in 'LICENSE'.
(license license:lgpl2.1)))
+(define-public wabt
+ (package
+ (name "wabt")
+ (version "1.0.12")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/WebAssembly/wabt")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1zlv3740wkqj4mn6sr84h0x6wk2lcp4pwwmqsh5yyqp1j1glbsa0"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:configure-flags '("-DBUILD_TESTS=OFF")
+ #:tests? #f))
+ (inputs `(("python" ,python-2)
+ ("re2c" ,re2c)))
+ (home-page "https://github.com/WebAssembly/wabt")
+ (synopsis "WebAssembly Binary Toolkit")
+ (description "WABT (pronounced: wabbit) is a suite of tools for
+WebAssembly, including:
+
+* wat2wasm: translate from WebAssembly text format to the WebAssembly binary
+ format
+* wasm2wat: the inverse of wat2wasm, translate from the binary format back
+ to the text format (also known as a .wat)
+* wasm-objdump: print information about a wasm binary. Similar to objdump.
+* wasm-interp: decode and run a WebAssembly binary file using a stack-based
+ interpreter
+* wat-desugar: parse .wat text form as supported by the spec interpreter
+ (s-expressions, flat syntax, or mixed) and print canonical flat format
+* wasm2c: convert a WebAssembly binary file to a C source and header
+
+These tools are intended for use in (or for development of) toolchains or
+other systems that want to manipulate WebAssembly files.")
+ (license license:asl2.0)))
+
(define-public websocketpp
(package
(name "websocketpp")
@@ -2562,14 +2613,14 @@ composed of HTML::Element style components.")
(define-public perl-html-form
(package
(name "perl-html-form")
- (version "6.04")
+ (version "6.05")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/O/OA/OALDERS/"
"HTML-Form-" version ".tar.gz"))
(sha256
- (base32 "100090bdsr5kapv8h0wxzwlzfbfqn57rq9gzrvg9i6hvnsl5gmcw"))))
+ (base32 "14i4ldyvdvhdhvfhh9kiq6z853q2f84biq8vcpv1k5w2r80wdiin"))))
(build-system perl-build-system)
(propagated-inputs
`(("perl-html-parser" ,perl-html-parser)
@@ -3598,14 +3649,14 @@ either mocked HTTP or a locally spawned server.")
(define-public perl-test-tcp
(package
(name "perl-test-tcp")
- (version "2.19")
+ (version "2.21")
(source
(origin
(method url-fetch)
- (uri (string-append "mirror://cpan/authors/id/T/TO/TOKUHIROM/"
+ (uri (string-append "mirror://cpan/authors/id/K/KA/KAZUHO/"
"Test-TCP-" version ".tar.gz"))
(sha256
- (base32 "14ahzklq3xgmwj58p9vdcfgpggrmh3nigq5mzqk4wakbb6fjs0fx"))))
+ (base32 "1djnaw1yli0kcd7azchqnp59l62f6mp13q50xyrjirpaxhd51j32"))))
(build-system perl-build-system)
(propagated-inputs
`(("perl-test-sharedfork" ,perl-test-sharedfork)))
@@ -3979,6 +4030,99 @@ CDF, Atom 0.3, and Atom 1.0 feeds.")
(define-public python2-feedparser
(package-with-python2 python-feedparser))
+(define-public guix-data-service
+ (let ((commit "8019d2e6878908f40cb6b047f60d2e4fd3c6712e")
+ (revision "3"))
+ (package
+ (name "guix-data-service")
+ (version (string-append "0.0.1-" revision "." (string-take commit 7)))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.savannah.gnu.org/git/guix/data-service.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "06xv43az1aklrdb5y0if17xdqc80qnfdlyjiww8zmv4m3qnvj607"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:tests? #f ; TODO Tests require PostgreSQL
+ #:modules ((guix build utils)
+ (guix build gnu-build-system)
+ (ice-9 rdelim)
+ (ice-9 popen))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'set-paths 'set-GUIX_ENVIRONMENT
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; This means guix.el finds the Emacs modules
+ (setenv "GUIX_ENVIRONMENT"
+ (assoc-ref inputs "emacs-with-modules"))
+ #t))
+ (add-before 'build 'set-GUILE_AUTO_COMPILE
+ (lambda _
+ ;; To avoid errors relating to guild
+ (setenv "GUILE_AUTO_COMPILE" "0")
+ #t))
+ (add-after 'install 'wrap-executable
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin"))
+ (guile (assoc-ref inputs "guile"))
+ (guile-effective-version
+ (read-line
+ (open-pipe* OPEN_READ
+ (string-append guile "/bin/guile")
+ "-c" "(display (effective-version))")))
+ (scm (string-append out "/share/guile/site/"
+ guile-effective-version))
+ (go (string-append out "/lib/guile/"
+ guile-effective-version
+ "/site-ccache")))
+ (for-each
+ (lambda (file)
+ (wrap-program (string-append bin "/" file)
+ `("PATH" ":" prefix
+ (,bin))
+ `("GUILE_LOAD_PATH" ":" prefix
+ (,scm ,(getenv "GUILE_LOAD_PATH")))
+ `("GUILE_LOAD_COMPILED_PATH" ":" prefix
+ (,go ,(getenv "GUILE_LOAD_COMPILED_PATH")))))
+ '("guix-data-service"
+ "guix-data-service-process-branch-updated-email"
+ "guix-data-service-process-branch-updated-mbox"
+ "guix-data-service-process-job"
+ "guix-data-service-process-jobs"
+ "guix-data-service-query-build-servers"))
+ #t)))
+ (delete 'strip)))) ; As the .go files aren't compatible
+ (inputs
+ `(("guix" ,guix)
+ ("guile-fibers" ,guile-fibers)
+ ("guile-json" ,guile-json-3)
+ ("guile-email" ,guile-email)
+ ("guile-squee" ,guile-squee)
+ ("postgresql" ,postgresql)
+ ("sqitch" ,sqitch)))
+ (native-inputs
+ `(("guile" ,guile-2.2)
+ ("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("emacs-with-modules" ,(directory-union
+ "emacs-union"
+ (list emacs-no-x
+ emacs-htmlize)))
+ ("pkg-config" ,pkg-config)))
+ (synopsis "Store and provide data about GNU Guix")
+ (description
+ "The Guix Data Service stores data about GNU Guix, and provides this
+through a web interface. It supports listening to the guix-commits mailing
+list to find out about new revisions, then loads the data from these in to a
+PostgreSQL database.")
+ (home-page "http://data.guix.gnu.org/")
+ (license license:agpl3+))))
+
(define-public gumbo-parser
(package
(name "gumbo-parser")
@@ -4934,13 +5078,13 @@ deployments.")
(package
(name "varnish")
(home-page "https://varnish-cache.org/")
- (version "6.2.1")
+ (version "6.3.0")
(source (origin
(method url-fetch)
(uri (string-append home-page "_downloads/varnish-" version ".tgz"))
(sha256
(base32
- "15qfvw3fp05bgyspcm6gbsnxhs430p4z3fwz5kkd1z68jb90b3pj"))))
+ "0zwlffdd1m0ih33nq40xf2wwdyvr4czmns2fs90qpfnwy72xxk4m"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib")
@@ -4955,7 +5099,8 @@ deployments.")
(lambda _
(substitute* '("bin/varnishtest/vtc_varnish.c"
"bin/varnishtest/vtc_process.c"
- "bin/varnishd/mgt/mgt_vcc.c")
+ "bin/varnishd/mgt/mgt_vcc.c"
+ "bin/varnishtest/tests/u00014.vtc")
(("/bin/sh") (which "sh")))
(substitute* "bin/varnishd/mgt/mgt_shmem.c"
(("rm -rf") (string-append (which "rm") " -rf")))