unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Rutger Helling <rhelling@mykolab.com>
To: ng0 <ng0@infotropique.org>
Cc: 29294@debbugs.gnu.org
Subject: [bug#29294] [PATCH] gnu: wget: Add wget2.
Date: Tue, 14 Nov 2017 19:06:28 +0100	[thread overview]
Message-ID: <0b37be1edecb9136a3b1e9c112aec24c@mykolab.com> (raw)
In-Reply-To: <20171114155607.zym6uzztf2blfga7@abyayala>


[-- Attachment #1.1: Type: text/plain, Size: 4762 bytes --]

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:

> 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 #1.2: Type: text/html, Size: 8774 bytes --]

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-wget-Add-wget2-v2.patch --]
[-- Type: text/x-diff; name=0001-gnu-wget-Add-wget2-v2.patch, Size: 3918 bytes --]

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.
---
 gnu/packages/wget.scm | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 61 insertions(+)

diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm
index 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


  reply	other threads:[~2017-11-14 18:07 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-14 14:04 [bug#29294] [PATCH] gnu: wget: Add wget2 Rutger Helling
2017-11-14 15:56 ` ng0
2017-11-14 18:06   ` Rutger Helling [this message]
2017-11-16  9:37     ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=0b37be1edecb9136a3b1e9c112aec24c@mykolab.com \
    --to=rhelling@mykolab.com \
    --cc=29294@debbugs.gnu.org \
    --cc=ng0@infotropique.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).