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.scm197
1 files changed, 100 insertions, 97 deletions
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 59bacf61be..fc3b4acaf8 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2013 Aljosha Papsch <misc@rpapsch.de>
-;;; Copyright © 2014-2024 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014-2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015-2024 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018 Raoul Jean Pierre Bonnal <ilpuccio.febo@gmail.com>
@@ -15,7 +15,7 @@
;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2016, 2023 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
-;;; Copyright © 2016–2024 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2016–2025 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016–2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 Bake Timmons <b3timmons@speedymail.org>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
@@ -46,7 +46,7 @@
;;; Copyright © 2020, 2022 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020, 2021 Ryan Prior <rprior@protonmail.com>
;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro>
-;;; Copyright © 2021, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2021, 2024 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 2021 la snesne <lasnesne@lagunposprasihopre.org>
;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
@@ -385,16 +385,16 @@ one.")
(define-public miniflux
(package
(name "miniflux")
- (version "2.2.9")
+ (version "2.2.12")
(source
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/miniflux/v2")
- (commit version)))
+ (url "https://github.com/miniflux/v2")
+ (commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1mfynlwbmzfgh24pv3bz7i0mprxbajx417v8hxjaalyvhxm917x6"))))
+ (base32 "0nz12an801r9d2da8p6fic9qy4524y7cprfpimw13ac5c4iqvr0d"))))
(build-system go-build-system)
(arguments
(list
@@ -417,8 +417,7 @@ one.")
(rename-file (string-append bindir "v2")
(string-append bindir "miniflux"))))))))
(inputs
- (list go-github-com-abadojack-whatlanggo
- go-github-com-andybalholm-brotli
+ (list go-github-com-andybalholm-brotli
go-github-com-coreos-go-oidc-v3
go-github-com-go-webauthn-webauthn
go-github-com-gorilla-mux
@@ -426,13 +425,11 @@ one.")
go-github-com-prometheus-client-golang
go-github-com-puerkitobio-goquery
go-github-com-tdewolff-minify-v2
- go-github-com-yuin-goldmark
go-golang-org-x-crypto
go-golang-org-x-image
go-golang-org-x-net
go-golang-org-x-oauth2
- go-golang-org-x-term
- go-golang-org-x-text))
+ go-golang-org-x-term))
(home-page "https://miniflux.app/")
(synopsis "Minimalist and opinionated feed reader")
(description
@@ -1117,7 +1114,7 @@ similar to live activity monitoring provided with NGINX plus.")
(define-public lighttpd
(package
(name "lighttpd")
- (version "1.4.81")
+ (version "1.4.82")
(source (origin
(method url-fetch)
(uri (string-append "https://download.lighttpd.net/lighttpd/"
@@ -1125,7 +1122,7 @@ similar to live activity monitoring provided with NGINX plus.")
"lighttpd-" version ".tar.xz"))
(sha256
(base32
- "0h2q5a251kw1ky83x8yvgn9wbjm39n7x39ssj4ybd57xs8zjrm6p"))))
+ "0qn98rib9wxhndzd8kpg0vlygnwly5j7x82f2nmndgcw3wwp9zmb"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags
@@ -1495,6 +1492,68 @@ project)
@end itemize")
(license license:bsd-2)))
+(define-public webhook
+ (package
+ (name "webhook")
+ (version "2.8.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/adnanh/webhook")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "15cihbf49kbhgwavjsvl4qfcf3lyqa39vyqdxglmnkn603c3nk6w"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ ;; Remove bundled dependencies.
+ (delete-file-recursively "vendor")))))
+ (build-system go-build-system)
+ (arguments
+ (list #:go go-1.23
+ #:import-path "github.com/adnanh/webhook"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'configure
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "src/github.com/adnanh/webhook/webhook_test.go"
+ (("/bin/echo")
+ (search-input-file inputs "bin/echo"))
+ (("/bin/sh")
+ (search-input-file inputs "bin/sh"))))))))
+ (native-inputs
+ (list go-github-com-clbanning-mxj-v2
+ go-github-com-coreos-go-systemd-v22
+ go-github-com-dustin-go-humanize
+ go-github-com-fsnotify-fsnotify
+ go-github-com-ghodss-yaml
+ go-github-com-go-chi-chi-v5
+ go-github-com-gofrs-uuid-v5
+ go-github-com-gorilla-mux
+ go-golang-org-x-sys))
+ (home-page "https://github.com/adnanh/webhook")
+ (synopsis "Lightweight incoming webhook server")
+ (description "webhook is a lightweight configurable tool to create HTTP
+endpoints (hooks) which can execute configured commands. Data from the HTTP
+request (such as headers, payload or query variables) can be passed on to the
+configured commands. Hooks may also be configured to trigger only when
+certain rules are satisfied.
+
+webhook aims to be minimal and do nothing more than it should do. And, that
+is:
+
+@itemize
+@item receive the request
+@item parse the headers, payload and query variables
+@item check if the specified rules for the hook are satisfied
+@item and finally, pass the specified arguments to the specified command via
+command line arguments or via environment variables.
+@end itemize")
+ (license (list license:expat ;; main license
+ license:asl2.0)))) ;; internal/pidfile
+
(define-public qjson
(package
(name "qjson")
@@ -5522,11 +5581,9 @@ Cloud.")
(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")
+ (open-pipe* OPEN_READ (which "guile")
"-c" "(display (effective-version))")))
(scm (string-append out "/share/guile/site/"
guile-effective-version))
@@ -5542,13 +5599,11 @@ Cloud.")
`("PATH" ":" prefix
,(cons*
bin
- (map (lambda (input)
- (string-append
- (assoc-ref inputs input)
- "/bin"))
- '("ephemeralpg"
- "util-linux"
- "postgresql"))))
+ (map (lambda (file)
+ (search-input-file inputs file))
+ '("/bin/pg_tmp" ;ephemeralpg
+ "/bin/ionice" ;util-linux
+ "/bin/psql")))) ;postgresql
`("GUILE_LOAD_PATH" ":" prefix
(,scm ,(getenv "GUILE_LOAD_PATH")))
`("GUILE_LOAD_COMPILED_PATH" ":" prefix
@@ -5575,7 +5630,9 @@ Cloud.")
guile-squee
guile-lzlib))
(native-inputs
- (list (lookup-package-native-input guix "guile")
+ ;; Use the highest Guile version found among dependencies to ensure .go
+ ;; files can be loaded.
+ (list (lookup-package-native-input guile-fibers-next "guile")
autoconf
automake
emacs-minimal
@@ -5736,75 +5793,6 @@ you'd expect.")
(properties `((lint-hidden-cve . ("CVE-2023-50246"
"CVE-2023-50268"))))))
-(define-public go-github-com-mikefarah-yq-v4
- (package
- (name "go-github-com-mikefarah-yq-v4")
- (version "4.45.4")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/mikefarah/yq")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1adrbxqsmpsvz2jfjkvarvnvblj5zdznr3sxpakv85vvs3njdjx9"))))
- (build-system go-build-system)
- (arguments
- (list
- #:skip-build? #t
- #:import-path "github.com/mikefarah/yq/v4"
- #:phases
- #~(modify-phases %standard-phases
- ;; Tests need this.
- (add-after 'unpack 'fix-access-to-doc
- (lambda* (#:key import-path #:allow-other-keys)
- (with-directory-excursion (string-append "src/" import-path)
- (for-each make-file-writable
- (find-files "./pkg/yqlib/doc" "\\.md"))))))))
- (propagated-inputs
- (list go-github-com-a8m-envsubst
- go-github-com-alecthomas-participle-v2
- go-github-com-alecthomas-repr
- go-github-com-dimchansky-utfbom
- go-github-com-elliotchance-orderedmap
- go-github-com-fatih-color
- go-github-com-goccy-go-json
- go-github-com-goccy-go-yaml
- go-github-com-jinzhu-copier
- go-github-com-magiconair-properties
- go-github-com-pelletier-go-toml-v2
- go-github-com-pkg-diff
- go-github-com-spf13-cobra
- go-github-com-spf13-pflag
- go-github-com-yuin-gopher-lua
- go-golang-org-x-net
- go-golang-org-x-text
- go-gopkg-in-op-go-logging-v1
- go-gopkg-in-yaml-v3))
- (home-page "https://mikefarah.gitbook.io/yq/")
- (synopsis
- "Command-line YAML, JSON, XML, CSV, TOML and properties processor")
- (description
- "This package provides @code{yq}, a command-line YAML, JSON and XML
-processor. It uses @code{jq}-like syntax but works with YAML files as well as
-JSON, XML, properties, CSV and TSV.")
- (license license:expat)))
-
-(define-public yq
- (package
- (inherit go-github-com-mikefarah-yq-v4)
- (name "yq")
- (arguments
- (substitute-keyword-arguments
- (package-arguments go-github-com-mikefarah-yq-v4)
- ((#:install-source? _ #t) #f)
- ((#:skip-build? _ #t) #f)
- ((#:tests? _ #t) #f)
- ((#:import-path _) "github.com/mikefarah/yq")))
- (propagated-inputs '())
- (inputs (package-propagated-inputs go-github-com-mikefarah-yq-v4))))
-
(define-public go-github-com-itchyny-gojq
(package
(name "go-github-com-itchyny-gojq")
@@ -8923,7 +8911,7 @@ It does not support server push.")
(define-public hpcguix-web
(package
(name "hpcguix-web")
- (version "0.4.2")
+ (version "0.4.3")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -8932,7 +8920,7 @@ It does not support server push.")
(file-name (git-file-name name version))
(sha256
(base32
- "09xfyyz3004qcfjjlg903gnsb9wsrrdk7gw7xawsvw58l6vrialb"))))
+ "1mcy4p5pw623gmwcx5jpry27njqyq1fp74wpq1c34s06gkhdarji"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)
@@ -9694,6 +9682,21 @@ for ZIM files.")
It contains the code shared by all Kiwix ports.")
(license license:gpl3)))
+(define-public kiwix-lib-13
+ (package
+ (inherit kiwix-lib)
+ (name "kiwix-lib")
+ (version "13.1.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/kiwix/kiwix-lib/")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0mgzmqar70rj83x27a4zh7qr6yl5pi95g6i3fvvxysdjy76v18qc"))))))
+
(define-public kiwix-desktop
(package
(name "kiwix-desktop")
@@ -9764,7 +9767,7 @@ offline (such as Wikipedia), without any access to Internet.")
(inputs
(list curl
icu4c
- kiwix-lib
+ kiwix-lib-13
libmicrohttpd
libzim
pugixml