guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

branch master updated: gnu: Add monolith.


From: guix-commits
Subject: branch master updated: gnu: Add monolith.
Date: Wed, 02 Dec 2020 17:46:44 -0500

This is an automated email from the git hooks/post-receive script.

ngz pushed a commit to branch master
in repository guix.

The following commit(s) were added to refs/heads/master by this push:
     new 3526028  gnu: Add monolith.
3526028 is described below

commit 352602822375e3eccaf6b42a016a046f820f43a1
Author: Nicolas Goaziou <mail@nicolasgoaziou.fr>
AuthorDate: Wed Dec 2 23:45:02 2020 +0100

    gnu: Add monolith.
    
    * gnu/packages/web.scm (monolith): New variable.
---
 gnu/packages/web.scm | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index ff9be40..1a639f5 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -74,6 +74,7 @@
   #:use-module (guix git-download)
   #:use-module (guix utils)
   #:use-module (guix build-system ant)
+  #:use-module (guix build-system cargo)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system glib-or-gtk)
   #:use-module (guix build-system gnu)
@@ -92,6 +93,7 @@
   #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages crates-io)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages cyrus-sasl)
   #:use-module (gnu packages databases)
@@ -228,6 +230,54 @@ Interface} specification.")
     (license license:asl2.0)
     (home-page "https://modwsgi.readthedocs.io/";)))
 
+(define-public monolith
+  (package
+    (name "monolith")
+    (version "2.3.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/Y2Z/monolith.git";)
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "16k5mp64a5l063rdj65hbpx414xv0bqdvhvz49k8018f2a2jj5xl"))))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-base64" ,rust-base64-0.13)
+        ("rust-chrono" ,rust-chrono-0.4)
+        ("rust-clap" ,rust-clap-2)
+        ("rust-cssparser" ,rust-cssparser-0.27)
+        ("rust-html5ever" ,rust-html5ever-0.24)
+        ("rust-sha2" ,rust-sha2-0.9)
+        ("rust-url" ,rust-url-2))
+       #:cargo-development-inputs
+       (("rust-assert-cmd" ,rust-assert-cmd-1)
+        ("rust-reqwest" ,rust-reqwest-0.10)
+        ("rust-tempfile" ,rust-tempfile-3))))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("openssl" ,openssl)))
+    (home-page "https://github.com/Y2Z/monolith";)
+    (synopsis "Command line tool for saving web pages as a single HTML file")
+    (description
+     "Monolith bundles any web page into a single HTML file.  You can finally
+replace that gazillion of open tabs with a gazillion of @file{.html} files
+stored somewhere on your precious little drive.
+
+Unlike conventional ``Save page as…'', Monolith not only saves the
+target document, it embeds CSS, image, and JavaScript assets all at
+once, producing a single HTML5 document that is a joy to store and
+share.
+
+If compared to saving websites with @samp{wget -mpk}, Monolith embeds
+all assets as data URLs and therefore displays the saved page exactly
+the same, being completely separated from the Internet.")
+    (license license:unlicense)))
+
 (define-public nginx
   (package
     (name "nginx")



reply via email to

[Prev in Thread] Current Thread [Next in Thread]