[PATCH] gnu: wget: Add wget2.

DoneSubmitted by Rutger Helling.
Details
3 participants
  • Ludovic Courtès
  • ng0
  • Rutger Helling
Owner
unassigned
Severity
normal
R
R
Rutger Helling wrote on 14 Nov 2017 15:04
(address . guix-patches@gnu.org)
002180def3dcabbd5ed927ecbd9d44df@mykolab.com
Hey Guix,
this patch adds wget2.
Attachment: file
From 9e0271973c6c0c762cf4bcee987432864bc3e1d8 Mon Sep 17 00:00:00 2001From: Rutger Helling <rhelling@mykolab.com>Date: Tue, 14 Nov 2017 14:58:18 +0100Subject: [PATCH] gnu: wget: Add wget2.
* gnu/packages/wget.scm (wget2): New variable.--- gnu/packages/wget.scm | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+)
Toggle diff (94 lines)diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scmindex bfcfcad23..6249f9eb3 100644--- a/gnu/packages/wget.scm+++ b/gnu/packages/wget.scm@@ -2,6 +2,7 @@ ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org> ;;; Copyright © 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>+;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> ;;; ;;; This file is part of GNU Guix. ;;;@@ -21,15 +22,23 @@ (define-module (gnu packages wget) #:use-module (guix licenses) #:use-module (gnu packages)+ #:use-module (gnu packages autotools)+ #:use-module (gnu packages base) #:use-module (gnu packages compression)+ #:use-module (gnu packages documentation)+ #:use-module (gnu packages flex)+ #:use-module (gnu packages gettext)+ #:use-module (gnu packages gnunet) #:use-module (gnu packages libidn) #:use-module (gnu packages python) #:use-module (gnu packages perl) #:use-module (gnu packages web)+ #:use-module (gnu packages pcre) #:use-module (gnu packages pkg-config) #:use-module (gnu packages tls) #:use-module (guix packages) #:use-module (guix download)+ #:use-module (guix git-download) #:use-module (guix build-system gnu)) (define-public wget@@ -112,3 +121,55 @@ in downloaded documents to relative links.") "@code{wgetpaste} is an extremely simple command-line interface to various online pastebin services.") (license public-domain)))++(define-public wget2+ (package+ (name "wget2")+ (version "1.0.0")+ (source+ (origin+ (method git-fetch)+ (uri (git-reference+ (url "https://github.com/rockdaboot/wget2")+ (commit "b45709d3d21714135ce79df6abbdcb704684063d")+ (recursive? #t))) ;; Needed for 'gnulib' git submodule.+ (file-name (string-append name "-" version "-checkout"))+ (sha256+ (base32+ "0ww84wwzmpyylkz8rnb6nk6f7x040132z81x52w7rjhk68p9mm24"))))+ (build-system gnu-build-system)+ (arguments+ `(#:phases (modify-phases %standard-phases+ (add-after 'unpack 'bootstrap+ (lambda _+ ;; Make sure all the files are writable so that ./bootstrap+ ;; can proceed.+ (for-each (lambda (file)+ (chmod file #o755))+ (find-files "."))+ (substitute* "./gnulib/gnulib-tool.py"+ (("/usr/bin/python") (which "python3")))+ (zero? (system* "sh" "./bootstrap"+ "--gnulib-srcdir=gnulib"+ "--no-git")))))))+ (inputs `(("autoconf", autoconf)+ ("automake", automake)+ ("doxygen", doxygen)+ ("flex", flex)+ ("gettext", gettext-minimal)+ ("gnutls", gnutls)+ ("libiconv", libiconv)+ ("libidn2", libidn2)+ ("libmicrohttpd", libmicrohttpd)+ ("libpsl", libpsl)+ ("libtool", libtool)+ ("pcre2", pcre2)+ ("python", python)))+ ;; TODO: Add libbrotlidec, libnghttp2.+ (native-inputs `(("pkg-config", pkg-config)))+ (home-page "https://github.com/rockdaboot/wget2")+ (synopsis "Successor of GNU Wget")+ (description "GNU Wget2 is the successor of GNU Wget, a file and recursive+website downloader. Designed and written from scratch it wraps around libwget,+that provides the basic functions needed by a web client.")+ (license (list gpl3+ lgpl3+))))-- 2.15.0
N
(name . Rutger Helling)(address . rhelling@mykolab.com)(address . 29294@debbugs.gnu.org)
20171114155607.zym6uzztf2blfga7@abyayala
Rutger Helling transcribed 6.1K bytes:
Toggle quote (92 lines)> Hey Guix, > > this patch adds wget2.
> From 9e0271973c6c0c762cf4bcee987432864bc3e1d8 Mon Sep 17 00:00:00 2001> From: Rutger Helling <rhelling@mykolab.com>> Date: Tue, 14 Nov 2017 14:58:18 +0100> Subject: [PATCH] gnu: wget: Add wget2.> > * gnu/packages/wget.scm (wget2): New variable.> ---> gnu/packages/wget.scm | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++> 1 file changed, 61 insertions(+)> > diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm> index bfcfcad23..6249f9eb3 100644> --- a/gnu/packages/wget.scm> +++ b/gnu/packages/wget.scm> @@ -2,6 +2,7 @@> ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>> ;;; Copyright © 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org>> ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>> +;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>> ;;;> ;;; This file is part of GNU Guix.> ;;;> @@ -21,15 +22,23 @@> (define-module (gnu packages wget)> #:use-module (guix licenses)> #:use-module (gnu packages)> + #:use-module (gnu packages autotools)> + #:use-module (gnu packages base)> #:use-module (gnu packages compression)> + #:use-module (gnu packages documentation)> + #:use-module (gnu packages flex)> + #:use-module (gnu packages gettext)> + #:use-module (gnu packages gnunet)> #:use-module (gnu packages libidn)> #:use-module (gnu packages python)> #:use-module (gnu packages perl)> #:use-module (gnu packages web)> + #:use-module (gnu packages pcre)> #:use-module (gnu packages pkg-config)> #:use-module (gnu packages tls)> #:use-module (guix packages)> #:use-module (guix download)> + #:use-module (guix git-download)> #:use-module (guix build-system gnu))> > (define-public wget> @@ -112,3 +121,55 @@ in downloaded documents to relative links.")> "@code{wgetpaste} is an extremely simple command-line interface to various> online pastebin services.")> (license public-domain)))> +> +(define-public wget2> + (package> + (name "wget2")> + (version "1.0.0")> + (source> + (origin> + (method git-fetch)> + (uri (git-reference> + (url "https://github.com/rockdaboot/wget2")> + (commit "b45709d3d21714135ce79df6abbdcb704684063d")> + (recursive? #t))) ;; Needed for 'gnulib' git submodule.> + (file-name (string-append name "-" version "-checkout"))> + (sha256> + (base32> + "0ww84wwzmpyylkz8rnb6nk6f7x040132z81x52w7rjhk68p9mm24"))))> + (build-system gnu-build-system)> + (arguments> + `(#:phases (modify-phases %standard-phases> + (add-after 'unpack 'bootstrap> + (lambda _> + ;; Make sure all the files are writable so that ./bootstrap> + ;; can proceed.> + (for-each (lambda (file)> + (chmod file #o755))> + (find-files "."))> + (substitute* "./gnulib/gnulib-tool.py"> + (("/usr/bin/python") (which "python3")))> + (zero? (system* "sh" "./bootstrap"> + "--gnulib-srcdir=gnulib"> + "--no-git")))))))> + (inputs `(("autoconf", autoconf)> + ("automake", automake)> + ("doxygen", doxygen)> + ("flex", flex)> + ("gettext", gettext-minimal)> + ("gnutls", gnutls)
As libmicrohttpd is build with GnuTLS with DANE ('gnutls/dane' package),wouldn't it make sense to build this with gnutls/dane aswell?
Or: In my opinion the gnuntls/dane package I've added should be mergedinto gnutls unless someone disagrees. This way DANE functionality isincluded by default.
Toggle quote (20 lines)> + ("libiconv", libiconv)> + ("libidn2", libidn2)> + ("libmicrohttpd", libmicrohttpd)> + ("libpsl", libpsl)> + ("libtool", libtool)> + ("pcre2", pcre2)> + ("python", python)))> + ;; TODO: Add libbrotlidec, libnghttp2.> + (native-inputs `(("pkg-config", pkg-config)))> + (home-page "https://github.com/rockdaboot/wget2")> + (synopsis "Successor of GNU Wget")> + (description "GNU Wget2 is the successor of GNU Wget, a file and recursive> +website downloader. Designed and written from scratch it wraps around libwget,> +that provides the basic functions needed by a web client.")> + (license (list gpl3+ lgpl3+))))> -- > 2.15.0>

-- GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588GnuPG: https://dl.n0.is/dist/keys/ WWW: https://we.make.ritual.n0.is
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAloLEhcACgkQ4i+bv+40hYhJGBAAp/ABAwF6STU0AbXlVWxqGBKwOESZ0QYxBuzKsL2AL+3XK4OyPPQKiUctEzE+dImz1WW3NhnUSaVdejWZOAafdtPyD9GgStNT53pHzR79+32kzA+tJcEXmOus7UkGHfNSMBRAmFY8N4WaeoC/jDOjoutCUDDJ1Dp1tzkcK03OAMX0W2X4sYroQdeL9FbMD/Qugdwllg/GmbywHK0UFuzg8wYrM5tYHbE74f/bwoves8/nU6H8BtZmjM/m9tY8h/weaRlPEdSASfo2S0QDPNs7yOi85y8AXFcW+PcvNnkDWYlVetEEJzZcRZnRl/UOlnF3wiVFF0pSJ5QwCy7DANfacVTT8yESedJlQTsbXd+IWI/LKWwoPFBfubuTCtCuM8c3/ao0eYVlw/uqA1CBQlEZSN/wwZz4GXXWFT/t2J6Yt9Mc1x6E62JfVOUt460PEQC/oRmJKLEiDK0RKG/iKGPGb6AMY4hrY1P3x59AEg6H1x+1CTbyCF4lvHWZNrOmW60Ad/pyALpJhbdolgEMSnrqLNfa7gcCFqUY6awNX+K2ac5W6LJqr889HIDahaeK5KgJKbjx642OBstWPYDMpukrvUw8ufyDajsH9Ni9jCerQ2M+g/63D5/epoY/h/Nkw03HwbcLOJRvOuRz+omqVJuJkfC+TjNcAiSdYVtrBYROXH8==7wFX-----END PGP SIGNATURE-----

R
R
Rutger Helling wrote on 14 Nov 2017 19:06
(name . ng0)(address . ng0@infotropique.org)(address . 29294@debbugs.gnu.org)
0b37be1edecb9136a3b1e9c112aec24c@mykolab.com
Hi ng0,
that makes sense. Here's an updated patch that uses gnutls/dane instead.I agree it's probably better to merge DANE functionality eventually.
On 2017-11-14 16:56, ng0 wrote:
Toggle quote (118 lines)> Rutger Helling transcribed 6.1K bytes: > >> Hey Guix, >> >> this patch adds wget2.> >> From 9e0271973c6c0c762cf4bcee987432864bc3e1d8 Mon Sep 17 00:00:00 2001>> From: Rutger Helling <rhelling@mykolab.com>>> Date: Tue, 14 Nov 2017 14:58:18 +0100>> Subject: [PATCH] gnu: wget: Add wget2.>> >> * gnu/packages/wget.scm (wget2): New variable.>> --->> gnu/packages/wget.scm | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++>> 1 file changed, 61 insertions(+)>> >> diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm>> index bfcfcad23..6249f9eb3 100644>> --- a/gnu/packages/wget.scm>> +++ b/gnu/packages/wget.scm>> @@ -2,6 +2,7 @@>> ;;; Copyright (c) 2012 Nikita Karetnikov <nikita@karetnikov.org>>> ;;; Copyright (c) 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org>>> ;;; Copyright (c) 2016, 2017 Efraim Flashner <efraim@flashner.co.il>>> +;;; Copyright (c) 2017 Rutger Helling <rhelling@mykolab.com>>> ;;;>> ;;; This file is part of GNU Guix.>> ;;;>> @@ -21,15 +22,23 @@>> (define-module (gnu packages wget)>> #:use-module (guix licenses)>> #:use-module (gnu packages)>> + #:use-module (gnu packages autotools)>> + #:use-module (gnu packages base)>> #:use-module (gnu packages compression)>> + #:use-module (gnu packages documentation)>> + #:use-module (gnu packages flex)>> + #:use-module (gnu packages gettext)>> + #:use-module (gnu packages gnunet)>> #:use-module (gnu packages libidn)>> #:use-module (gnu packages python)>> #:use-module (gnu packages perl)>> #:use-module (gnu packages web)>> + #:use-module (gnu packages pcre)>> #:use-module (gnu packages pkg-config)>> #:use-module (gnu packages tls)>> #:use-module (guix packages)>> #:use-module (guix download)>> + #:use-module (guix git-download)>> #:use-module (guix build-system gnu))>> >> (define-public wget>> @@ -112,3 +121,55 @@ in downloaded documents to relative links.")>> "@code{wgetpaste} is an extremely simple command-line interface to various>> online pastebin services.")>> (license public-domain)))>> +>> +(define-public wget2>> + (package>> + (name "wget2")>> + (version "1.0.0")>> + (source>> + (origin>> + (method git-fetch)>> + (uri (git-reference>> + (url "https://github.com/rockdaboot/wget2")>> + (commit "b45709d3d21714135ce79df6abbdcb704684063d")>> + (recursive? #t))) ;; Needed for 'gnulib' git submodule.>> + (file-name (string-append name "-" version "-checkout"))>> + (sha256>> + (base32>> + "0ww84wwzmpyylkz8rnb6nk6f7x040132z81x52w7rjhk68p9mm24"))))>> + (build-system gnu-build-system)>> + (arguments>> + `(#:phases (modify-phases %standard-phases>> + (add-after 'unpack 'bootstrap>> + (lambda _>> + ;; Make sure all the files are writable so that ./bootstrap>> + ;; can proceed.>> + (for-each (lambda (file)>> + (chmod file #o755))>> + (find-files "."))>> + (substitute* "./gnulib/gnulib-tool.py">> + (("/usr/bin/python") (which "python3")))>> + (zero? (system* "sh" "./bootstrap">> + "--gnulib-srcdir=gnulib">> + "--no-git")))))))>> + (inputs `(("autoconf", autoconf)>> + ("automake", automake)>> + ("doxygen", doxygen)>> + ("flex", flex)>> + ("gettext", gettext-minimal)>> + ("gnutls", gnutls)> > As libmicrohttpd is build with GnuTLS with DANE ('gnutls/dane' package),> wouldn't it make sense to build this with gnutls/dane aswell?> > Or: In my opinion the gnuntls/dane package I've added should be merged> into gnutls unless someone disagrees. This way DANE functionality is> included by default.> >> + ("libiconv", libiconv)>> + ("libidn2", libidn2)>> + ("libmicrohttpd", libmicrohttpd)>> + ("libpsl", libpsl)>> + ("libtool", libtool)>> + ("pcre2", pcre2)>> + ("python", python)))>> + ;; TODO: Add libbrotlidec, libnghttp2.>> + (native-inputs `(("pkg-config", pkg-config)))>> + (home-page "https://github.com/rockdaboot/wget2")>> + (synopsis "Successor of GNU Wget")>> + (description "GNU Wget2 is the successor of GNU Wget, a file and recursive>> +website downloader. Designed and written from scratch it wraps around libwget,>> +that provides the basic functions needed by a web client.")>> + (license (list gpl3+ lgpl3+))))>> -- >> 2.15.0
Attachment: file
From 68ed0f10fa44c506924011c0677b0e6beba4335e Mon Sep 17 00:00:00 2001From: Rutger Helling <rhelling@mykolab.com>Date: Tue, 14 Nov 2017 19:01:08 +0100Subject: [PATCH] gnu: wget: Add wget2.
* gnu/packages/wget.scm (wget2): New variable.--- gnu/packages/wget.scm | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+)
Toggle diff (94 lines)diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scmindex bfcfcad23..a4862d515 100644--- a/gnu/packages/wget.scm+++ b/gnu/packages/wget.scm@@ -2,6 +2,7 @@ ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org> ;;; Copyright © 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>+;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> ;;; ;;; This file is part of GNU Guix. ;;;@@ -21,15 +22,23 @@ (define-module (gnu packages wget) #:use-module (guix licenses) #:use-module (gnu packages)+ #:use-module (gnu packages autotools)+ #:use-module (gnu packages base) #:use-module (gnu packages compression)+ #:use-module (gnu packages documentation)+ #:use-module (gnu packages flex)+ #:use-module (gnu packages gettext)+ #:use-module (gnu packages gnunet) #:use-module (gnu packages libidn) #:use-module (gnu packages python) #:use-module (gnu packages perl) #:use-module (gnu packages web)+ #:use-module (gnu packages pcre) #:use-module (gnu packages pkg-config) #:use-module (gnu packages tls) #:use-module (guix packages) #:use-module (guix download)+ #:use-module (guix git-download) #:use-module (guix build-system gnu)) (define-public wget@@ -112,3 +121,55 @@ in downloaded documents to relative links.") "@code{wgetpaste} is an extremely simple command-line interface to various online pastebin services.") (license public-domain)))++(define-public wget2+ (package+ (name "wget2")+ (version "1.0.0")+ (source+ (origin+ (method git-fetch)+ (uri (git-reference+ (url "https://github.com/rockdaboot/wget2")+ (commit "b45709d3d21714135ce79df6abbdcb704684063d")+ (recursive? #t))) ;; Needed for 'gnulib' git submodule.+ (file-name (string-append name "-" version "-checkout"))+ (sha256+ (base32+ "0ww84wwzmpyylkz8rnb6nk6f7x040132z81x52w7rjhk68p9mm24"))))+ (build-system gnu-build-system)+ (arguments+ `(#:phases (modify-phases %standard-phases+ (add-after 'unpack 'bootstrap+ (lambda _+ ;; Make sure all the files are writable so that ./bootstrap+ ;; can proceed.+ (for-each (lambda (file)+ (chmod file #o755))+ (find-files "."))+ (substitute* "./gnulib/gnulib-tool.py"+ (("/usr/bin/python") (which "python3")))+ (zero? (system* "sh" "./bootstrap"+ "--gnulib-srcdir=gnulib"+ "--no-git")))))))+ (inputs `(("autoconf", autoconf)+ ("automake", automake)+ ("doxygen", doxygen)+ ("flex", flex)+ ("gettext", gettext-minimal)+ ("gnutls", gnutls/dane)+ ("libiconv", libiconv)+ ("libidn2", libidn2)+ ("libmicrohttpd", libmicrohttpd)+ ("libpsl", libpsl)+ ("libtool", libtool)+ ("pcre2", pcre2)+ ("python", python)))+ ;; TODO: Add libbrotlidec, libnghttp2.+ (native-inputs `(("pkg-config", pkg-config)))+ (home-page "https://github.com/rockdaboot/wget2")+ (synopsis "Successor of GNU Wget")+ (description "GNU Wget2 is the successor of GNU Wget, a file and recursive+website downloader. Designed and written from scratch it wraps around libwget,+that provides the basic functions needed by a web client.")+ (license (list gpl3+ lgpl3+))))-- 2.15.0
L
L
Ludovic Courtès wrote on 16 Nov 2017 10:37
(name . Rutger Helling)(address . rhelling@mykolab.com)
87wp2qimxi.fsf@gnu.org
Hello,
Rutger Helling <rhelling@mykolab.com> skribis:
Toggle quote (7 lines)> From 68ed0f10fa44c506924011c0677b0e6beba4335e Mon Sep 17 00:00:00 2001> From: Rutger Helling <rhelling@mykolab.com>> Date: Tue, 14 Nov 2017 19:01:08 +0100> Subject: [PATCH] gnu: wget: Add wget2.>> * gnu/packages/wget.scm (wget2): New variable.
Applied, thanks.
I see that Unbound pulls in Python 3 directly and Python 2 via libevent,which makes the closure unnecessarily big. Something we should fix atsome point.
Ludo’.
L
L
Ludovic Courtès wrote on 16 Nov 2017 23:58
control message for bug #29294
(address . control@debbugs.gnu.org)
87bmk1bzle.fsf@gnu.org
tags 29294 fixedclose 29294
?
Your comment

This issue is archived.

To comment on this conversation send email to 29294@debbugs.gnu.org