From 68ed0f10fa44c506924011c0677b0e6beba4335e Mon Sep 17 00:00:00 2001 From: Rutger Helling 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 ;;; Copyright © 2014, 2015, 2017 Ludovic Courtès ;;; Copyright © 2016, 2017 Efraim Flashner +;;; Copyright © 2017 Rutger Helling ;;; ;;; 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