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.scm158
1 files changed, 88 insertions, 70 deletions
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index a56b313e2c..59bacf61be 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -134,11 +134,6 @@
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
- #:use-module (gnu packages crates-crypto)
- #:use-module (gnu packages crates-io)
- #:use-module (gnu packages crates-gtk)
- #:use-module (gnu packages crates-tls)
- #:use-module (gnu packages crates-web)
#:use-module (gnu packages crypto)
#:use-module (gnu packages curl)
#:use-module (gnu packages cyrus-sasl)
@@ -521,37 +516,18 @@ replacing them with data URIs.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "082xh0zmmy9abz7y3zjybbwffq7d0j1jl78ggzbwwanvam65v0dp"))))
+ (base32 "082xh0zmmy9abz7y3zjybbwffq7d0j1jl78ggzbwwanvam65v0dp"))
+ (modules '((guix build utils)))
+ ;; Don't default to vendored openssl.
+ (snippet '(substitute* "Cargo.toml"
+ ((".*\"vendored-openssl\".*") "")))))
(build-system cargo-build-system)
(arguments
- `(#:install-source? #f
- #:cargo-inputs
- (("rust-atty" ,rust-atty-0.2)
- ("rust-base64" ,rust-base64-0.22)
- ("rust-chrono" ,rust-chrono-0.4)
- ("rust-clap" ,rust-clap-3)
- ("rust-cssparser" ,rust-cssparser-0.34)
- ("rust-encoding-rs" ,rust-encoding-rs-0.8)
- ("rust-html5ever" ,rust-html5ever-0.27)
- ("rust-markup5ever-rcdom" ,rust-markup5ever-rcdom-0.3)
- ("rust-openssl" ,rust-openssl-0.10)
- ("rust-percent-encoding" ,rust-percent-encoding-2)
- ("rust-regex" ,rust-regex-1)
- ("rust-reqwest" ,rust-reqwest-0.12)
- ("rust-sha2" ,rust-sha2-0.10)
- ("rust-url" ,rust-url-2))
- #:cargo-development-inputs
- (("rust-assert-cmd" ,rust-assert-cmd-2))
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'dont-default-to-vendored-openssl
- (lambda _
- (substitute* "Cargo.toml"
- ((".*\"vendored-openssl\".*") "")))))))
+ `(#:install-source? #f))
(native-inputs
(list pkg-config))
(inputs
- (list openssl))
+ (cons openssl (cargo-inputs 'monolith)))
(home-page "https://github.com/Y2Z/monolith")
(synopsis "Command line tool for saving web pages as a single HTML file")
(description
@@ -1141,7 +1117,7 @@ similar to live activity monitoring provided with NGINX plus.")
(define-public lighttpd
(package
(name "lighttpd")
- (version "1.4.80")
+ (version "1.4.81")
(source (origin
(method url-fetch)
(uri (string-append "https://download.lighttpd.net/lighttpd/"
@@ -1149,7 +1125,7 @@ similar to live activity monitoring provided with NGINX plus.")
"lighttpd-" version ".tar.xz"))
(sha256
(base32
- "1wsvy92dsyhlq99b7rvlj5n72m7rqggr27jxajnnpvmjx1qhypyc"))))
+ "0h2q5a251kw1ky83x8yvgn9wbjm39n7x39ssj4ybd57xs8zjrm6p"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags
@@ -1342,6 +1318,42 @@ libraries for working with JNLP applets.")
;; or dual licenses.
(license license:gpl2+)))
+(define-public iocaine
+ (package
+ (name "iocaine")
+ (version "2.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "iocaine" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "1pd42hn5lqm3xw6id652w7sswix3l6bslcld7svqyq47gscsm3vn"))))
+ (build-system cargo-build-system)
+ (arguments
+ (list
+ #:install-source? #f
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'build 'override-jemalloc
+ (lambda* (#:key inputs #:allow-other-keys) ;Copied from uv
+ (let ((jemalloc (assoc-ref inputs "jemalloc")))
+ ;; This flag is needed when not using the bundled jemalloc.
+ ;; https://github.com/tikv/jemallocator/issues/19
+ (setenv
+ "CARGO_FEATURE_UNPREFIXED_MALLOC_ON_SUPPORTED_PLATFORMS" "1")
+ (setenv "JEMALLOC_OVERRIDE"
+ (string-append jemalloc "/lib/libjemalloc.so"))))))))
+ (inputs (cons* jemalloc (cargo-inputs 'iocaine)))
+ (home-page "https://iocaine.madhouse-project.org/")
+ (synopsis "Serves poisonous data to large language model scrapers")
+ (description
+ "Iocaine is an HTTP server that generates a stable endless maze of
+Markov-babble-filled web pages. Placed behind a heavily rate-limited reverse
+proxy, it becomes a ``tar pit'' for trapping aggressive web scrapers commonly
+used to train large language models, and poisoning the collected data.")
+ (license license:expat)))
+
(define-public jansson
(package
(name "jansson")
@@ -1711,25 +1723,41 @@ current version of any major web browser.")
(delete-file-recursively "bin/jsonchecker")))))
(build-system cmake-build-system)
(arguments
- '(#:configure-flags (list "-DCMAKE_CXX_FLAGS=-Wno-free-nonheap-object")
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-march=native
- (lambda _
- (substitute* "CMakeLists.txt"
- (("-m[^-]*=native") ""))))
- (add-after 'fix-march=native 'skip-deleted-tests
- (lambda _
- (substitute* "test/unittest/CMakeLists.txt"
- (("jsoncheckertest.cpp") ""))))
- (add-after 'fix-march=native 'fix-dependencies
- (lambda _
- (substitute* "test/CMakeLists.txt"
- (("^find_package\\(GTestSrc\\)")
- "find_package(GTest REQUIRED)")
- ((".*GTEST_SOURCE_DIR.*") "")
- (("GTESTSRC_FOUND)")
- "GTest_FOUND)")))))))
+ (list
+ #:configure-flags
+ (if (target-x86-32?)
+ #~(list (string-append "-DCMAKE_CXX_FLAGS=-Wno-free-nonheap-object"
+ " -Wno-error=array-bounds"
+ " -Wno-error=stringop-overflow"))
+ #~(list "-DCMAKE_CXX_FLAGS=-Wno-free-nonheap-object"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'fix-march=native
+ (lambda _
+ (substitute* "CMakeLists.txt"
+ (("-m[^-]*=native") ""))))
+ #$@(if (target-x86-32?)
+ #~((add-after 'unpack 'skip-failing-tests
+ (lambda _
+ (substitute* "test/unittest/schematest.cpp"
+ (("\"multipleOf\\.json\"," all)
+ (string-append "/*" all "*/")))
+ ;; XXX: Re-enable once valgrind/pinned >= 3.25.
+ (substitute* "test/unittest/CMakeLists.txt"
+ (("COMMAND valgrind") "COMMAND true valgrind")))))
+ #~())
+ (add-after 'fix-march=native 'skip-deleted-tests
+ (lambda _
+ (substitute* "test/unittest/CMakeLists.txt"
+ (("jsoncheckertest.cpp") ""))))
+ (add-after 'fix-march=native 'fix-dependencies
+ (lambda _
+ (substitute* "test/CMakeLists.txt"
+ (("^find_package\\(GTestSrc\\)")
+ "find_package(GTest REQUIRED)")
+ ((".*GTEST_SOURCE_DIR.*") "")
+ (("GTESTSRC_FOUND)")
+ "GTest_FOUND)")))))))
(native-inputs (list valgrind/pinned))
(inputs (list googletest))
(home-page "https://github.com/Tencent/rapidjson")
@@ -7602,27 +7630,17 @@ file links.")
(invoke "make" (string-append "PREFIX=" #$output)
"copy-data"))))
#:parallel-tests? #f ; As per the Makefile
- #:install-source? #f
- #:cargo-inputs
- `(("rust-ansi-parser" ,rust-ansi-parser-0.6)
- ("rust-dirs" ,rust-dirs-3)
- ("rust-gdk" ,rust-gdk-0.13)
- ("rust-gtk" ,rust-gtk-0.8)
- ("rust-linkify" ,rust-linkify-0.7)
- ("rust-native-tls" ,rust-native-tls-0.2)
- ("rust-open" ,rust-open-2)
- ("rust-percent-encoding" ,rust-percent-encoding-2)
- ("rust-textwrap" ,rust-textwrap-0.14)
- ("rust-url" ,rust-url-2))))
+ #:install-source? #f))
(native-inputs
(list pkg-config))
(inputs
- (list at-spi2-core
- cairo
- gdk-pixbuf
- gtk+
- openssl-3.0
- pango))
+ (cons* at-spi2-core
+ cairo
+ gdk-pixbuf
+ gtk+
+ openssl-3.0
+ pango
+ (cargo-inputs 'castor)))
(home-page "https://git.sr.ht/~julienxx/castor")
(synopsis "Graphical client for plain-text protocols")
(description