diff options
Diffstat (limited to 'gnu/packages/web.scm')
-rw-r--r-- | gnu/packages/web.scm | 450 |
1 files changed, 213 insertions, 237 deletions
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index ea3c5e9114..fe7ebd5e1b 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -19,7 +19,7 @@ ;;; Copyright © 2016–2021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2016 Bake Timmons <b3timmons@speedymail.org> ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be> -;;; Copyright © 2017, 2018, 2020 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2017, 2018, 2020, 2021 Marius Bakke <marius@gnu.org> ;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2017 Petter <petter@mykolab.ch> ;;; Copyright © 2017, 2021 Pierre Langlois <pierre.langlois@gmx.com> @@ -39,7 +39,6 @@ ;;; Copyright © 2019 Pierre-Moana Levesque <pierre.moana.levesque@gmail.com> ;;; Copyright © 2019, 2020 Florian Pelz <pelzflorian@pelzflorian.de> ;;; Copyright © 2020 Timotej Lazar <timotej.lazar@araneo.si> -;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org> ;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2018, 2019, 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> @@ -51,6 +50,9 @@ ;;; Copyright © 2021 Stefan Reichör <stefan@xsteve.at> ;;; Copyright © 2021 la snesne <lasnesne@lagunposprasihopre.org> ;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org> +;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev> +;;; Copyright © 2021 Jack Hill <jackhill@jackhill.us> +;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -96,6 +98,7 @@ #:use-module (gnu packages apr) #:use-module (gnu packages autotools) #:use-module (gnu packages base) + #:use-module (gnu packages bash) #:use-module (gnu packages bison) #:use-module (gnu packages bittorrent) #:use-module (gnu packages boost) @@ -164,6 +167,7 @@ #:use-module (gnu packages re2c) #:use-module (gnu packages readline) #:use-module (gnu packages search) + #:use-module (gnu packages serialization) #:use-module (gnu packages sphinx) #:use-module (gnu packages texinfo) #:use-module (gnu packages textutils) @@ -369,15 +373,15 @@ the same, being completely separated from the Internet.") ;; Track the ‘mainline’ branch. Upstream considers it more reliable than ;; ’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.21.0") + ;; Please update the nginx-documentation package together with this one! + (version "1.21.2") (source (origin (method url-fetch) (uri (string-append "https://nginx.org/download/nginx-" version ".tar.gz")) (sha256 (base32 - "0w87zhm5nfx88x9hj6drrvm5f3m02kzbjp39x1lsglrbmi5jl6gy")))) + "11ail85iw6mg8fxd2qnxhcghi0frjk5r70cfar83dms61rb1qxri")))) (build-system gnu-build-system) (inputs `(("libxml2" ,libxml2) ("libxslt" ,libxslt) @@ -472,9 +476,9 @@ and as a proxy to reduce the load on back-end HTTP or mail servers.") (define-public nginx-documentation ;; This documentation should be relevant for the current nginx package. - (let ((version "1.21.0") - (revision 2726) - (changeset "a7a36efd10af")) + (let ((version "1.21.2") + (revision 2764) + (changeset "bc9c5d11b67c")) (package (name "nginx-documentation") (version (simple-format #f "~A-~A-~A" version revision changeset)) @@ -486,7 +490,7 @@ and as a proxy to reduce the load on back-end HTTP or mail servers.") (file-name (string-append name "-" version)) (sha256 (base32 - "1fl7rkbfdd26c78h85x4w3kas16rpj4pxzjhc071qvx7znwgm2pn")))) + "05n72q9vqxx37dyw3yl7jssmpqkw3rwxa2y3m6s0c0ih0z2bx58n")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; no test suite @@ -772,6 +776,64 @@ documentation.") (description "This NGINX module provides a scripting support with Lua programming language."))) +(define-public nginx-rtmp-module + (package + (inherit nginx) + (name "nginx-rtmp-module") + (version "1.2.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/arut/nginx-rtmp-module") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0y45bswk213yhkc2v1xca2rnsxrhx8v6azxz9pvi71vvxcggqv6h")))) + (build-system gnu-build-system) + (inputs + `(("nginx-sources" ,(package-source nginx)) + ,@(package-inputs nginx))) + (arguments + (substitute-keyword-arguments + `(#:configure-flags '("--add-dynamic-module=.") + #:make-flags '("modules") + #:modules ((guix build utils) + (guix build gnu-build-system)) + ,@(package-arguments nginx)) + ((#:phases phases) + `(modify-phases ,phases + (add-after 'unpack 'unpack-nginx-sources + (lambda* (#:key inputs native-inputs #:allow-other-keys) + (begin + ;; The nginx source code is part of the module’s source. + (format #t "decompressing nginx source code~%") + (invoke "tar" "xvf" (assoc-ref inputs "nginx-sources") + ;; This packages's LICENSE file would be + ;; overwritten with the one from nginx when + ;; unpacking the nginx source, so rename the nginx + ;; one when unpacking. + "--transform=s,/LICENSE$,/LICENSE.nginx," + "--strip-components=1") + #t))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((modules-dir (string-append (assoc-ref outputs "out") + "/etc/nginx/modules"))) + (install-file "objs/ngx_rtmp_module.so" modules-dir) + #t))) + (delete 'fix-root-dirs) + (delete 'install-man-page))))) + (home-page "https://github.com/arut/nginx-rtmp-module") + (synopsis "NGINX module for audio and video streaming with RTMP") + (description "This NGINX module provides streaming with the @acronym{RTMP, +Real-Time Messaging Protocol}, @acronym{DASH, Dynamic Adaptive Streaming over HTTP}, +and @acronym{HLS, HTTP Live Streaming} protocols. It allows NGINX to accept +incoming RTMP streams for recording or redistribution. It also supports +on-demand streaming from a file on disk and pulling from an upstream RTMP +stream. Remote control of the module is possible over HTTP.") + (license license:bsd-2))) + (define-public lighttpd (package (name "lighttpd") @@ -1321,8 +1383,7 @@ current version of any major web browser.") '(begin ;; Remove code using the problematic JSON license (see ;; <https://www.gnu.org/licenses/license-list.html#JSON>). - (delete-file-recursively "bin/jsonchecker") - #t)))) + (delete-file-recursively "bin/jsonchecker"))))) (build-system cmake-build-system) (arguments (if (string-prefix? "aarch64" (or (%current-target-system) @@ -1332,10 +1393,8 @@ current version of any major web browser.") (add-after 'unpack 'patch-aarch-march-detection (lambda _ (substitute* (find-files "." "^CMakeLists\\.txt$") - (("native") "armv8-a")) - #t)))) - ;; Disable CPU optimization for reproducibility. - '(#:configure-flags '("-DRAPIDJSON_ENABLE_INSTRUMENTATION_OPT=OFF")))) + (("native") "armv8-a")))))) + '())) (home-page "https://github.com/Tencent/rapidjson") (synopsis "JSON parser/generator for C++ with both SAX/DOM style API") (description @@ -1615,13 +1674,17 @@ used to validate and fix HTML data.") #t)))) (build-system go-build-system) (arguments - '(#:import-path "github.com/evanw/esbuild/cmd/esbuild" + `(#:import-path "github.com/evanw/esbuild/cmd/esbuild" #:unpack-path "github.com/evanw/esbuild" #:phases (modify-phases %standard-phases (replace 'check (lambda* (#:key tests? unpack-path #:allow-other-keys) (when tests? + ;; The "Go Race Detector" is only supported on 64-bit + ;; platforms, this variable disables it. + (unless ,(target-64bit?) + (setenv "ESBUILD_RACE" "")) (with-directory-excursion (string-append "src/" unpack-path) (invoke "make" "test-go"))) #t))))) @@ -1794,34 +1857,6 @@ hash/signatures.") ;; Source code may be distributed under either license. (license (list license:expat license:gpl2+)))) -(define-public libyaml - (package - (name "libyaml") - (version "0.2.5") - (source - (origin - (method url-fetch) - (uri (string-append "https://pyyaml.org/download/libyaml/yaml-" - version ".tar.gz")) - (sha256 - (base32 - "1x4fcw13r3lqy8ndydr3ili87wicplw2awbcv6r21qgyfndswhn6")))) - (build-system gnu-build-system) - (arguments - '(#:configure-flags '("--disable-static"))) - (home-page "https://pyyaml.org/wiki/LibYAML") - (synopsis "YAML 1.1 parser and emitter written in C") - (description - "LibYAML is a YAML 1.1 parser and emitter written in C.") - (license license:expat))) - -(define-public libyaml+static - (package - (inherit libyaml) - (name "libyaml+static") - (arguments - '(#:configure-flags '("--enable-static"))))) - (define-public libquvi-scripts (package (name "libquvi-scripts") @@ -3482,14 +3517,14 @@ and multipart/form-data.") (define-public perl-http-cookiejar (package (name "perl-http-cookiejar") - (version "0.010") + (version "0.012") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/" "HTTP-CookieJar-" version ".tar.gz")) (sha256 - (base32 "1l7mqsca4fmls7agzwmp6yq1x16y9jwq4114i6i75n654gl37qsn")))) + (base32 "0jk0ps4i67dhhhwaxwwa9nkv3n6n5w44xlnwyzvk59735pwvyjh0")))) (build-system perl-build-system) (native-inputs `(("perl-test-deep" ,perl-test-deep) @@ -4729,15 +4764,17 @@ their web site.") (define-public python-feedparser (package (name "python-feedparser") - (version "6.0.2") + (version "6.0.8") (source (origin (method url-fetch) (uri (pypi-uri "feedparser" version ".tar.gz")) (sha256 (base32 - "0x0hm9brh3j71645pydvlkrwxaaca9dnwd7xahwjyjaz882s200v")))) + "0qcnkyjjfj5gg5rhd1j4zzlqx5h34bma18zwgj68q95b0l543q2w")))) (build-system python-build-system) + (propagated-inputs + `(("python-sgmllib3k" ,python-sgmllib3k))) (arguments '(#:tests? #f)) (home-page @@ -5057,6 +5094,12 @@ fast and flexible way of exploring HTML from the terminal.") ("pkg-config" ,pkg-config))) (inputs `(("libsoup" ,libsoup))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'set-home-for-tests + (lambda _ + (setenv "HOME" "/tmp")))))) (home-page "https://gitlab.com/groups/uhttpmock") (synopsis "Library for mocking web service APIs which use HTTP or HTTPS") (description @@ -5354,7 +5397,13 @@ developed as part of the Netsurf project.") "libcss-" version "-src.tar.gz")) (sha256 (base32 - "1p66sdiiqm7w4jkq23hsf08khsnmq93hshh9f9m8sbirjdpf3p6j")))) + "1p66sdiiqm7w4jkq23hsf08khsnmq93hshh9f9m8sbirjdpf3p6j")) + (modules '((guix build utils))) + (snippet + '(begin + ;; This can be removed with the next release. + (substitute* "src/select/computed.c" + (("css_unit unit;") "css_unit unit = CSS_UNIT_PX;")))))) (build-system gnu-build-system) (native-inputs `(("netsurf-buildsystem" ,netsurf-buildsystem) @@ -5371,46 +5420,6 @@ developed as part of the Netsurf project.") written in C. It is developed as part of the NetSurf project.") (license license:expat))) -(define-public libcyaml - (package - (name "libcyaml") - (version "1.1.0") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/tlsa/libcyaml") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (patches (search-patches "libcyaml-libyaml-compat.patch")) - (sha256 - (base32 "0428p0rwq71nhh5nzcbapsbrjxa0x5l6h6ns32nxv7j624f0zd93")))) - (build-system gnu-build-system) - (arguments - `(#:make-flags - (list (string-append "PREFIX=" (assoc-ref %outputs "out")) - (string-append "CC=gcc")) - #:phases - (modify-phases %standard-phases - (delete 'configure) ; no configure script - (replace 'check - (lambda _ - (setenv "CC" "gcc") - (invoke "make" "test")))))) - (inputs - `(("libyaml" ,libyaml))) - (native-inputs - `(("pkg-config" ,pkg-config))) - (synopsis "C library for reading and writing YAML") - (description - "LibCYAML is a C library written in ISO C11 for reading and writing -structured YAML documents. The fundamental idea behind CYAML is to allow -applications to construct schemas which describe both the permissible -structure of the YAML documents to read/write, and the C data structure(s) -in which the loaded data is arranged in memory.") - (home-page "https://github.com/tlsa/libcyaml") - (license license:isc))) - (define-public libdom (package (name "libdom") @@ -6003,16 +6012,17 @@ deployments.") (package (name "varnish") (home-page "https://varnish-cache.org/") - (version "6.5.1") + (version "7.0.0") (source (origin (method url-fetch) (uri (string-append home-page "_downloads/varnish-" version ".tgz")) (sha256 (base32 - "1dfdswri6lkfk6kml3szvffm91y49pajgqy1k5y26llqixl4r5hi")))) + "11z0pa618lh925ih67wmp1gqk7i46l486j4spjy71g1n3w5mqylc")))) (build-system gnu-build-system) (arguments `(#:configure-flags (list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib") + (string-append "CC=" ,(cc-for-target)) ;; Use absolute path of GCC so it's found at runtime. (string-append "PTHREAD_CC=" (assoc-ref %build-inputs "gcc") @@ -6021,23 +6031,26 @@ deployments.") #:phases (modify-phases %standard-phases (add-after 'unpack 'use-absolute-file-names - (lambda _ - (substitute* '("bin/varnishtest/vtc_varnish.c" - "bin/varnishtest/vtc_process.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"))) - (substitute* "bin/varnishtest/vtc_main.c" - (("/bin/rm") (which "rm"))) - #t)) + (lambda* (#:key inputs #:allow-other-keys) + (let* ((bash (assoc-ref inputs "bash-minimal")) + (sh (string-append bash "/bin/sh")) + (coreutils (assoc-ref inputs "coreutils")) + (rm (string-append coreutils "/bin/rm"))) + (substitute* '("bin/varnishtest/vtc_varnish.c" + "bin/varnishtest/vtc_process.c" + "bin/varnishtest/vtc_haproxy.c" + "bin/varnishtest/tests/u00014.vtc" + "bin/varnishd/mgt/mgt_vcc.c") + (("/bin/sh") sh)) + (substitute* "bin/varnishd/mgt/mgt_shmem.c" + (("rm -rf") (string-append rm " -rf"))) + (substitute* "bin/varnishtest/vtc_main.c" + (("/bin/rm") rm))))) (add-before 'install 'patch-Makefile (lambda _ (substitute* "Makefile" ;; Do not create /var/varnish during install. - (("^install-data-am: install-data-local") "install-data-am: ")) - #t)) + (("^install-data-am: install-data-local") "install-data-am: ")))) (add-after 'install 'wrap-varnishd ;; Varnish uses GCC to compile VCL, so wrap it with required GCC ;; environment variables to avoid propagating them to profiles. @@ -6050,17 +6063,18 @@ deployments.") ;; Add binutils to PATH so gcc finds the 'as' executable. `("PATH" ":" prefix (,PATH)) ;; Make sure 'crti.o' et.al is found. - `("LIBRARY_PATH" ":" prefix (,LIBRARY_PATH))) - #t)))))) + `("LIBRARY_PATH" ":" prefix (,LIBRARY_PATH))))))))) (native-inputs `(("pkg-config" ,pkg-config) ("python-sphinx" ,python-sphinx) ("rst2man" ,python-docutils))) (inputs - `(("jemalloc" ,jemalloc) + `(("bash-minimal" ,bash-minimal) + ("coreutils" ,coreutils) + ("jemalloc" ,jemalloc) ("ncurses" ,ncurses) - ("pcre" ,pcre) - ("python" ,python-wrapper) + ("pcre2" ,pcre2) + ("python" ,python) ("readline" ,readline))) (synopsis "Web application accelerator") (description @@ -6077,14 +6091,14 @@ configuration language.") (package (name "varnish-modules") (home-page "https://github.com/varnish/varnish-modules") - (version "0.17.1") + (version "0.19.0") (source (origin (method git-fetch) (uri (git-reference (url home-page) (commit version))) (file-name (git-file-name name version)) (sha256 (base32 - "1mzkad9r4rpm1fi7j7skwrsyzzbwcapfnlvvl1ls3rng2djcqb5j")))) + "0qq5g6bbd1a1ml1wk8jj9z39a899jzqbf7aizr3pvyz0f4kz8mis")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -6619,42 +6633,10 @@ file links.") license:psfl ; linkcheck/gzip2.py license:expat)))) ; linkcheck/mem.py -(define-public cadaver - (package - (name "cadaver") - (version "0.23.3") - (source - (origin - (method url-fetch) - (uri (string-append "http://www.webdav.org/cadaver/" - name "-" version ".tar.gz")) - (sha256 - (base32 - "1jizq69ifrjbjvz5y79wh1ny94gsdby4gdxwjad4bfih6a5fck7x")))) - (build-system gnu-build-system) - ;; TODO: Unbundle libneon and make build succeed with new neon. - (arguments - `(#:configure-flags (list "--with-ssl=openssl") - #:tests? #f)) ;No tests included - (native-inputs - `(("gettext" ,gettext-minimal) - ("pkg-config" ,pkg-config) - ("intltool" ,intltool))) - (inputs - `(("expat" ,expat) - ("openssl" ,openssl-1.0))) - (home-page "http://www.webdav.org/cadaver/") - (synopsis "Command-line WebDAV client") - (description - "Cadaver is a command-line WebDAV client for Unix. It supports -file upload, download, on-screen display, namespace operations (move/copy), -collection creation and deletion, and locking operations.") - (license license:gpl2))) - (define-public castor (package (name "castor") - (version "0.8.16") + (version "0.8.18") (source (origin (method git-fetch) @@ -6663,7 +6645,7 @@ collection creation and deletion, and locking operations.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0rwg1w7srjwa23mkypl8zk6674nhph4xsc6nc01f6g5k959szylr")))) + (base32 "1l72r6a917ymc9pn8dllbal1xdczfai376nvqkiys5fm4j4s3zmj")))) (build-system cargo-build-system) (arguments `(#:cargo-inputs @@ -7692,87 +7674,83 @@ compressed JSON header blocks. (license license:expat))) (define-public hpcguix-web - (let ((commit "9de63562b06b4aef3a3afe5ecb18d3c91e57ee74") - (revision "5")) - (package - (name "hpcguix-web") - (version (git-version "0.0.1" revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/UMCUGenetics/hpcguix-web") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0wjgj2s7v2cyz6dx24c111rxs99i84sfvxl4ch8brnh02j2606jz")))) - (build-system gnu-build-system) - (arguments - `(#:modules ((guix build gnu-build-system) - (guix build utils) - (srfi srfi-26) - (ice-9 popen) - (ice-9 rdelim)) - #:phases - (modify-phases %standard-phases - (add-before 'configure 'set-variables - (lambda _ - ;; This prevents a few warnings - (setenv "GUILE_AUTO_COMPILE" "0") - (setenv "XDG_CACHE_HOME" (getcwd)) - #t)) - (add-after 'install 'wrap-program - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (guix (assoc-ref inputs "guix")) - (guile (assoc-ref inputs "guile")) - (gcrypt (assoc-ref inputs "guile-gcrypt")) - (git (assoc-ref inputs "guile-git")) - (bs (assoc-ref inputs "guile-bytestructures")) - (json (assoc-ref inputs "guile-json")) - (guile-cm (assoc-ref inputs - "guile-commonmark")) - (deps (list guile gcrypt git bs guile-cm guix json)) - (effective - (read-line - (open-pipe* OPEN_READ - (string-append guile "/bin/guile") - "-c" "(display (effective-version))"))) - (path (string-join - (map (cut string-append <> - "/share/guile/site/" - effective) - deps) - ":")) - (gopath (string-join - (map (cut string-append <> - "/lib/guile/" effective - "/site-ccache") - deps) - ":"))) - (wrap-program (string-append out "/bin/run") - `("GUILE_LOAD_PATH" ":" prefix (,path)) - `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,gopath))) - - #t)))))) - (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("uglify-js" ,uglify-js) - ("pkg-config" ,pkg-config))) - (inputs - `(("guile" ,@(assoc-ref (package-native-inputs guix) "guile")) - ("guix" ,guix))) - (propagated-inputs - `(("guile" ,@(assoc-ref (package-native-inputs guix) "guile")) - ("guile-commonmark" ,guile-commonmark) - ("guile-json" ,guile-json-4))) - (home-page "https://github.com/UMCUGenetics/hpcguix-web") - (synopsis "Web interface for cluster deployments of Guix") - (description "Hpcguix-web provides a web interface to the list of packages + (package + (name "hpcguix-web") + (version "0.1.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/UMCUGenetics/hpcguix-web") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "02lz5k1hhkwfz3nr3lsd69icsz6n0q82z047d3svi09qpxw6y0cj")))) + (build-system gnu-build-system) + (arguments + `(#:modules ((guix build gnu-build-system) + (guix build utils) + (srfi srfi-26) + (ice-9 popen) + (ice-9 rdelim)) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'set-variables + (lambda _ + ;; This prevents a few warnings + (setenv "GUILE_AUTO_COMPILE" "0") + (setenv "XDG_CACHE_HOME" (getcwd)))) + (add-after 'install 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (guix (assoc-ref inputs "guix")) + (guile (assoc-ref inputs "guile")) + (gcrypt (assoc-ref inputs "guile-gcrypt")) + (git (assoc-ref inputs "guile-git")) + (bs (assoc-ref inputs "guile-bytestructures")) + (json (assoc-ref inputs "guile-json")) + (guile-cm (assoc-ref inputs + "guile-commonmark")) + (deps (list guile gcrypt git bs guile-cm guix json)) + (effective + (read-line + (open-pipe* OPEN_READ + (string-append guile "/bin/guile") + "-c" "(display (effective-version))"))) + (path (string-join + (map (cut string-append <> + "/share/guile/site/" + effective) + deps) + ":")) + (gopath (string-join + (map (cut string-append <> + "/lib/guile/" effective + "/site-ccache") + deps) + ":"))) + (wrap-program (string-append out "/bin/hpcguix-web") + `("GUILE_LOAD_PATH" ":" prefix (,path)) + `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,gopath))))))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("uglify-js" ,uglify-js) + ("pkg-config" ,pkg-config))) + (inputs + `(("guile" ,@(assoc-ref (package-native-inputs guix) "guile")) + ("guix" ,guix) + ("bash-minimal" ,bash-minimal))) ;for 'wrap-program' + (propagated-inputs + `(("guile" ,@(assoc-ref (package-native-inputs guix) "guile")) + ("guile-commonmark" ,guile-commonmark) + ("guile-json" ,guile-json-4))) + (home-page "https://github.com/UMCUGenetics/hpcguix-web") + (synopsis "Web interface for cluster deployments of Guix") + (description "Hpcguix-web provides a web interface to the list of packages provided by Guix. The list of packages is searchable and provides instructions on how to use Guix in a shared HPC environment.") - (license license:agpl3+)))) + (license license:agpl3+))) (define-public httrack (package @@ -7967,8 +7945,8 @@ solution for any project's interface needs: (license license:expat))) (define-public gmnisrv - (let ((commit "d484ba0ab0020866535a44be5948c9482b8f2b8d") - (revision "1")) + (let ((commit "32854b79c73b278bf33eb5123abf1c36abdc7c01") + (revision "2")) (package (name "gmnisrv") (version (git-version "0" revision commit)) @@ -7980,24 +7958,22 @@ solution for any project's interface needs: (commit commit))) (sha256 (base32 - "11phipixsxx1jgm42agp76p5s68l0zj65kgb41vzaymgwcq79ivn")) + "0lbb3ablwkdcgm1cjr1hikr55y8gpl420nh8b8g9wn4abhm2xgr9")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'configure 'set-variables - (lambda _ - (setenv "CC" "gcc") - #t)) - (delete 'check)))) + `(#:tests? #f ; no check target + #:configure-flags (list "--sysconfdir=/etc" + (string-append "--with-mimedb=" + (assoc-ref %build-inputs "mailcap") + "/etc/mime.types")) + #:make-flags (list (string-append "CC=" ,(cc-for-target))))) (inputs - `(("openssl" ,openssl))) + `(("mailcap" ,mailcap) + ("openssl" ,openssl))) (native-inputs `(("pkg-config" ,pkg-config) ("scdoc" ,scdoc))) - (propagated-inputs - `(("mailcap" ,mailcap))) (synopsis "Simple Gemini protocol server") (description "gmnisrv is a simple Gemini protocol server written in C.") (license (list license:gpl3+ |