diff options
author | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2020-10-19 12:51:57 -0400 |
---|---|---|
committer | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2020-10-19 13:11:40 -0400 |
commit | 5e2140511c1ad9ccd731438b74d61b62111da1e6 (patch) | |
tree | a4ff748ad26e121b88469b5d921001ef1382be8f /gnu/packages/web.scm | |
parent | 9e3a5ee417ea7fe9721be8804ff047e80c4f22ed (diff) | |
parent | 353bdae32f72b720c7ddd706576ccc40e2b43f95 (diff) | |
download | guix-5e2140511c1ad9ccd731438b74d61b62111da1e6.tar.gz guix-5e2140511c1ad9ccd731438b74d61b62111da1e6.zip |
Merge branch 'staging'
Conflicts:
gnu/packages/admin.scm
gnu/packages/commencement.scm
gnu/packages/gdb.scm
gnu/packages/llvm.scm
gnu/packages/package-management.scm
gnu/packages/tls.scm
Diffstat (limited to 'gnu/packages/web.scm')
-rw-r--r-- | gnu/packages/web.scm | 382 |
1 files changed, 266 insertions, 116 deletions
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 473fe2ff97..5ca9cf19d0 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -45,6 +45,7 @@ ;;; Copyright © 2018, 2019, 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> +;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -67,39 +68,39 @@ #: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) + #:use-module (guix git-download) #:use-module (guix utils) - #:use-module (guix build-system gnu) + #:use-module (guix build-system ant) + #:use-module (guix build-system cmake) #:use-module (guix build-system glib-or-gtk) + #:use-module (guix build-system gnu) + #:use-module (guix build-system go) #:use-module (guix build-system perl) - #:use-module (guix build-system cmake) - #:use-module (guix build-system trivial) #:use-module (guix build-system python) - #:use-module (guix build-system ant) #:use-module (guix build-system scons) - #:use-module (guix build-system go) + #:use-module (guix build-system trivial) #:use-module (gnu packages) #:use-module (gnu packages admin) #:use-module (gnu packages adns) #:use-module (gnu packages apr) + #:use-module (gnu packages autotools) + #:use-module (gnu packages base) + #:use-module (gnu packages bison) #:use-module (gnu packages boost) #: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) #:use-module (gnu packages cyrus-sasl) #:use-module (gnu packages databases) - #:use-module (gnu packages bison) + #:use-module (gnu packages docbook) + #:use-module (gnu packages documentation) + #:use-module (gnu packages emacs) + #:use-module (gnu packages emacs-xyz) #:use-module (gnu packages flex) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) - #:use-module (gnu packages kerberos) #:use-module (gnu packages gcc) #:use-module (gnu packages gd) #:use-module (gnu packages gettext) @@ -113,11 +114,12 @@ #:use-module (gnu packages guile) #:use-module (gnu packages guile-xyz) #:use-module (gnu packages hurd) + #:use-module (gnu packages image) #:use-module (gnu packages java) #:use-module (gnu packages jemalloc) - #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) #:use-module (gnu packages kde) + #:use-module (gnu packages kerberos) #:use-module (gnu packages libevent) #:use-module (gnu packages libidn) #:use-module (gnu packages libunistring) @@ -132,19 +134,18 @@ #:use-module (gnu packages nss) #:use-module (gnu packages openldap) #:use-module (gnu packages openstack) - #:use-module (gnu packages base) #:use-module (gnu packages package-management) + #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages perl-check) #:use-module (gnu packages python) #:use-module (gnu packages python-crypto) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) - #:use-module (gnu packages pcre) #: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 readline) #:use-module (gnu packages sphinx) #:use-module (gnu packages texinfo) #:use-module (gnu packages textutils) @@ -231,14 +232,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.19.2") + (version "1.19.3") (source (origin (method url-fetch) (uri (string-append "https://nginx.org/download/nginx-" version ".tar.gz")) (sha256 (base32 - "0wr4ss4gld7x717m4j3a6l6f7ijblrrd55y563lkwhvr7sqpn7vw")))) + "1w4dkq7bl5gyix3x0ap3d9lndh7zyvc3mscl693d4ybql57vgrci")))) (build-system gnu-build-system) (inputs `(("openssl" ,openssl) ("pcre" ,pcre) @@ -254,31 +255,32 @@ Interface} specification.") #t)) (replace 'configure ;; The configure script is hand-written, not from GNU autotools. - (lambda* (#:key outputs #:allow-other-keys) + (lambda* (#:key configure-flags outputs #:allow-other-keys) (let ((flags - (list (string-append "--prefix=" (assoc-ref outputs "out")) - "--with-http_ssl_module" - "--with-http_v2_module" - "--with-pcre-jit" - "--with-debug" - ;; Even when not cross-building, we pass the - ;; --crossbuild option to avoid customizing for the - ;; kernel version on the build machine. - ,(let ((system "Linux") ; uname -s - (release "3.2.0") ; uname -r - ;; uname -m - (machine (match (or (%current-target-system) - (%current-system)) - ("x86_64-linux" "x86_64") - ("i686-linux" "i686") - ("mips64el-linux" "mips64") - ;; Prevent errors when querying - ;; this package on unsupported - ;; platforms, e.g. when running - ;; "guix package --search=" - (_ "UNSUPPORTED")))) - (string-append "--crossbuild=" - system ":" release ":" machine))))) + (append (list (string-append "--prefix=" (assoc-ref outputs "out")) + "--with-http_ssl_module" + "--with-http_v2_module" + "--with-pcre-jit" + "--with-debug" + ;; Even when not cross-building, we pass the + ;; --crossbuild option to avoid customizing for the + ;; kernel version on the build machine. + ,(let ((system "Linux") ; uname -s + (release "3.2.0") ; uname -r + ;; uname -m + (machine (match (or (%current-target-system) + (%current-system)) + ("x86_64-linux" "x86_64") + ("i686-linux" "i686") + ("mips64el-linux" "mips64") + ;; Prevent errors when querying + ;; this package on unsupported + ;; platforms, e.g. when running + ;; "guix package --search=" + (_ "UNSUPPORTED")))) + (string-append "--crossbuild=" + system ":" release ":" machine))) + configure-flags))) (setenv "CC" "gcc") (format #t "configure flags: ~s~%" flags) (apply invoke "./configure" flags) @@ -318,53 +320,11 @@ and as a proxy to reduce the load on back-end HTTP or mail servers.") ;; except for two source files which are bsd-4 licensed. (license (list license:bsd-2 license:expat license:bsd-3 license:bsd-4)))) -(define nginx-xslscript - (let ((revision 11) - (changeset "01dc9ba12e1b")) - (package - (name "nginx-xslscript") - (version - (simple-format #f "2014-03-31-~A-~A" revision changeset)) - (source (origin - (method hg-fetch) - (uri (hg-reference - (url "http://hg.nginx.org/xslscript") - (changeset changeset))) - (file-name (string-append name "-" version)) - (sha256 - (base32 - "0am8zvdx3jmiwkg5q07qjaw5r26r4i2v5i4yr8a1k0jgib6ii08g")))) - (build-system gnu-build-system) - (arguments - '(#:tests? #f ; No test suite - #:phases - (modify-phases %standard-phases - (delete 'configure) - (delete 'build) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let ((out-bin (string-append - (assoc-ref outputs "out") - "/bin"))) - (mkdir-p out-bin) - (copy-file "xslscript.pl" - (string-append - out-bin - "/xslscript.pl")) - #t)))))) - (home-page "http://hg.nginx.org/xslscript") - (synopsis "XSLScript with NGinx specific modifications") - (description - "XSLScript is a terse notation for writing complex XSLT stylesheets. -This is modified version, specifically intended for use with the NGinx -documentation.") - (license license:bsd-2)))) - (define-public nginx-documentation ;; This documentation should be relevant for the current nginx package. - (let ((version "1.19.2") - (revision 2581) - (changeset "324ca14c3003")) + (let ((version "1.19.3") + (revision 2603) + (changeset "94ebfbcd68bb")) (package (name "nginx-documentation") (version (simple-format #f "~A-~A-~A" version revision changeset)) @@ -376,7 +336,7 @@ documentation.") (file-name (string-append name "-" version)) (sha256 (base32 - "15bdbi6cjqhx8lqsyr3hnwagq2r80bsyh2im80ajmbfv7y47djqi")))) + "1yryharm4dkjnj424r7sy0rc28h8ypfyj8as255a42gmllkwl2pg")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; no test suite @@ -549,6 +509,120 @@ supported at your website.") ;; binary: (package-license nginx))))))) +(define nginx-xslscript + (let ((revision 11) + (changeset "01dc9ba12e1b")) + (package + (name "nginx-xslscript") + (version + (simple-format #f "2014-03-31-~A-~A" revision changeset)) + (source (origin + (method hg-fetch) + (uri (hg-reference + (url "http://hg.nginx.org/xslscript") + (changeset changeset))) + (file-name (string-append name "-" version)) + (sha256 + (base32 + "0am8zvdx3jmiwkg5q07qjaw5r26r4i2v5i4yr8a1k0jgib6ii08g")))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f ; No test suite + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out-bin (string-append + (assoc-ref outputs "out") + "/bin"))) + (mkdir-p out-bin) + (copy-file "xslscript.pl" + (string-append + out-bin + "/xslscript.pl")) + #t)))))) + (home-page "http://hg.nginx.org/xslscript") + (synopsis "XSLScript with NGinx specific modifications") + (description + "XSLScript is a terse notation for writing complex XSLT stylesheets. +This is modified version, specifically intended for use with the NGinx +documentation.") + (license license:bsd-2)))) + +(define nginx-socket-cloexec + (package + (inherit nginx) + (name "nginx-socket-cloexec") ;required for lua-resty-shell + (source + (origin + (inherit (package-source nginx)) + (patches (append (search-patches "nginx-socket-cloexec.patch") + (origin-patches (package-source nginx)))))))) + +(define-public nginx-lua-module + (package + (inherit nginx) + (name "nginx-lua-module") + (version "0.10.15") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/openresty/lua-nginx-module") + (commit (string-append "v" version)))) + (file-name (git-file-name "lua-nginx-module" version)) + (sha256 + (base32 + "1j216isp0546hycklbr5wi8mlga5hq170hk7f2sm16sfavlkh5gz")))) + (build-system gnu-build-system) + (inputs + `(("nginx-sources" ,(package-source nginx-socket-cloexec)) + ("luajit" ,luajit) + ,@(package-inputs nginx))) + (arguments + (substitute-keyword-arguments + `(#:configure-flags '("--add-dynamic-module=.") + #:make-flags '("modules") + #:modules ((guix build utils) + (guix build gnu-build-system) + (ice-9 popen) + (ice-9 regex) + (ice-9 textual-ports)) + ,@(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~%") + (let ((tar (assoc-ref inputs "tar")) + (nginx-srcs (assoc-ref inputs "nginx-sources"))) + (invoke (string-append tar "/bin/tar") + "xvf" nginx-srcs "--strip-components=1")) + #t))) + (add-before 'configure 'set-luajit-env + (lambda* (#:key inputs #:allow-other-keys) + (let ((luajit (assoc-ref inputs "luajit"))) + (setenv "LUAJIT_LIB" + (string-append luajit "/lib")) + (setenv "LUAJIT_INC" + (string-append luajit "/include/luajit-2.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_http_lua_module.so" modules-dir) + #t))) + (delete 'fix-root-dirs) + (delete 'install-man-page))))) + (synopsis "NGINX module for Lua programming language support") + (description "This NGINX module provides a scripting support with Lua +programming language."))) + (define-public lighttpd (package (name "lighttpd") @@ -1272,15 +1346,15 @@ perform the opening handshake in HTTP.") (define-public libpsl (package (name "libpsl") - (version "0.21.0") + (version "0.21.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/rockdaboot/libpsl/" - "releases/download/libpsl-" version + "releases/download/" version "/libpsl-" version ".tar.gz")) (sha256 (base32 - "04pfagb7ppq3yibx4lhazd1v9nwkxdfkyy2rgcrmrf3mldsirga1")))) + "0k0d46bbh1jj2ll369f134vciplrzbqkg7fv9m62bl6lzghy2v5c")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -1345,6 +1419,50 @@ used to validate and fix HTML data.") (home-page "http://tidy.sourceforge.net/") (license (license:x11-style "file:///include/tidy.h")))) +(define-public esbuild + (package + (name "esbuild") + (version "0.7.14") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/evanw/esbuild") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1y5hqymv2r8r29f8vh8kgncj3wlkg4fzi0zlc7mgyss872ajkc7i")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove prebuilt binaries + (delete-file-recursively "npm") + #t)))) + (build-system go-build-system) + (arguments + '(#: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) + (if tests? + (with-directory-excursion (string-append "src/" unpack-path) + (invoke "make" "test-go"))) + #t))))) + (inputs + `(("go-golang-org-x-sys" ,go-golang-org-x-sys))) + (native-inputs + `(("go-github-com-kylelemons-godebug" ,go-github-com-kylelemons-godebug))) + (home-page "https://github.com/evanw/esbuild") + (synopsis "Bundler and minifier tool for JavaScript and TypeScript") + (description + "The esbuild tool provides a unified bundler, transpiler and +minifier. It packages up JavaScript and TypeScript code, along with JSON +and other data, for distribution on the web.") + (license license:expat))) + (define-public tinyproxy (package (name "tinyproxy") @@ -1502,15 +1620,18 @@ hash/signatures.") (define-public libyaml (package (name "libyaml") - (version "0.2.4") + (version "0.2.5") (source (origin (method url-fetch) (uri (string-append "https://pyyaml.org/download/libyaml/yaml-" version ".tar.gz")) (sha256 - (base32 "0mq5wf17ifcwwxq3kbimhi53jn3fg23vcynqpzxjcz3vfjlfs2nq")))) + (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 @@ -2629,15 +2750,14 @@ development server with Starman.") (define-public perl-cgi (package (name "perl-cgi") - (version "4.47") + (version "4.51") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/L/LE/LEEJO/" "CGI-" version ".tar.gz")) (sha256 - (base32 - "1a9cylhqsm5icvbg09m21nj0xx4zy5gbk4p74npm1ch3qlryzyyr")))) + (base32 "02k0p8zwbn0fz9r39rg8jvbmky8fwdg6kznklzk557rg07kiblhb")))) (build-system perl-build-system) (native-inputs `(("perl-test-deep" ,perl-test-deep) @@ -2855,15 +2975,15 @@ RSS 0.91, RSS 1.0, RSS 2.0, Atom.") (define-public perl-file-listing (package (name "perl-file-listing") - (version "6.04") + (version "6.11") (source (origin (method url-fetch) (uri (string-append - "mirror://cpan/authors/id/G/GA/GAAS/File-Listing-" + "mirror://cpan/authors/id/P/PL/PLICEASE/File-Listing-" version ".tar.gz")) (sha256 (base32 - "1xcwjlnxaiwwpn41a5yi6nz95ywh3szq5chdxiwj36kqsvy5000y")))) + "0vmzw1mhv580flzkla80gvwfpficnhlbqr1dnlf9x50bw7n18k62")))) (build-system perl-build-system) (propagated-inputs `(("perl-http-date" ,perl-http-date))) @@ -3178,15 +3298,14 @@ and multipart/form-data.") (define-public perl-http-cookiejar (package (name "perl-http-cookiejar") - (version "0.008") + (version "0.010") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/" "HTTP-CookieJar-" version ".tar.gz")) (sha256 - (base32 - "0rfw6avcralggs7bf7n86flvhaahxjnqzvpwszp0sk4z4wwy01wm")))) + (base32 "1l7mqsca4fmls7agzwmp6yq1x16y9jwq4114i6i75n654gl37qsn")))) (build-system perl-build-system) (native-inputs `(("perl-test-deep" ,perl-test-deep) @@ -3530,15 +3649,14 @@ algorithm specified in section 8.2.2.1 of the draft standard.") (define-public perl-io-socket-ip (package (name "perl-io-socket-ip") - (version "0.39") + (version "0.41") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/P/PE/PEVANS/" "IO-Socket-IP-" version ".tar.gz")) (sha256 - (base32 - "15kv5g1yb4a345sk3r5wfr99f868lhfqkddzsgpqddvccfkhv58i")))) + (base32 "0ihlpxrkq1xrvhnq52nhghanskic718ch8kpp642afgq72i4b6l4")))) (build-system perl-build-system) (native-inputs `(("perl-module-build" ,perl-module-build))) (home-page "https://metacpan.org/release/IO-Socket-IP") @@ -3578,7 +3696,7 @@ select or poll.") (define-public perl-libwww (package (name "perl-libwww") - (version "6.41") + (version "6.49") (source (origin (method url-fetch) (uri (string-append @@ -3586,7 +3704,7 @@ select or poll.") version ".tar.gz")) (sha256 (base32 - "0jh67946fwd33ap3xy8df0421d2mr6lmhalhkf1p7dx2b7fil9wf")))) + "19k0cg4j4qz005a4ngy48z4r8dc99dxlpq8kvj7qnk15mvgd1r63")))) (build-system perl-build-system) (native-inputs `(("perl-test-fatal" ,perl-test-fatal) @@ -3715,7 +3833,7 @@ https schemed URLs with LWP.") (home-page "https://metacpan.org/release/LWP-UserAgent-Cached") (synopsis "Simple caching for LWP::UserAgent") (description "LWP::UserAgent::Cached is an LWP::UserAgent subclass with -cache support. It returns responses from the local filesystem if available +cache support. It returns responses from the local file system, if available, instead of making an HTTP request.") (license license:perl-license))) @@ -4073,14 +4191,14 @@ either mocked HTTP or a locally spawned server.") (define-public perl-test-tcp (package (name "perl-test-tcp") - (version "2.21") + (version "2.22") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/K/KA/KAZUHO/" + (uri (string-append "mirror://cpan/authors/id/M/MI/MIYAGAWA/" "Test-TCP-" version ".tar.gz")) (sha256 - (base32 "1djnaw1yli0kcd7azchqnp59l62f6mp13q50xyrjirpaxhd51j32")))) + (base32 "0mvv9rqwrwlcfh8qrs0s47p85rhlnw15d4gbpyi802bddp0c6lry")))) (build-system perl-build-system) (propagated-inputs `(("perl-test-sharedfork" ,perl-test-sharedfork))) @@ -4986,7 +5104,7 @@ commenting.") (native-inputs `(("netsurf-buildsystem" ,netsurf-buildsystem) ("pkg-config" ,pkg-config) - ("check" ,check))) ;for tests + ("check" ,check-0.14))) ;for tests (arguments netsurf-buildsystem-arguments) (home-page "https://www.netsurf-browser.org/projects/libwapcaplet/") (synopsis "String internment library") @@ -5035,6 +5153,7 @@ written in C. It is developed as part of the NetSurf project.") (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) @@ -5052,7 +5171,7 @@ written in C. It is developed as part of the NetSurf project.") (inputs `(("libyaml" ,libyaml))) (native-inputs - `(("pkg-config", pkg-config))) + `(("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 @@ -5605,14 +5724,14 @@ tools like SSH (Secure Shell) to reach the outside world.") (define-public stunnel (package (name "stunnel") - (version "5.56") + (version "5.57") (source (origin (method url-fetch) (uri (string-append "https://www.stunnel.org/downloads/stunnel-" version ".tar.gz")) (sha256 - (base32 "08kb4gi9fzqngrczykvba6xhaxhq9m4wmdbhxvgrva5rasrvz13k")))) + (base32 "1q8gc05fiz7w55ws0whwzb94ffjnhzfppf1mhz1hf671vmrvjnmg")))) (build-system gnu-build-system) (native-inputs ;; For tests. @@ -7409,6 +7528,37 @@ update an existing mirrored site, and resume interrupted downloads. HTTrack is fully configurable, and has an integrated help system.") (license license:gpl3+))) +(define-public buku + (package + (name "buku") + (version "4.4") + (source + (origin + (method url-fetch) + (uri (pypi-uri "buku" version)) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1g1xhdskfn72xaraqzz2v8dl2iza7bzfpn17z2wdrzkq3ih7yvgg")))) + (build-system python-build-system) + (arguments + `(#:tests? #f)) ;FIXME: many tests need network access + (inputs + `(("python-beautifulsoup4" ,python-beautifulsoup4) + ("python-certifi" ,python-certifi) + ("python-cryptography" ,python-cryptography) + ("python-html5lib" ,python-html5lib) + ("python-urllib3" ,python-urllib3))) + (home-page "https://github.com/jarun/buku") + (synopsis "Bookmark manager") + (description + "buku is a powerful bookmark manager written in Python3 and SQLite3. +@command{buku} can auto-import bookmarks from your browser and present them +in an interactive command-line interface that lets you compose and update +bookmarks directly. It can also present them in a web interface with +@command{bukuserver}.") + (license license:gpl3+))) + (define-public anonip (package (name "anonip") |