gnu: Add wl-clipboard.
[jackhill/guix/guix.git] / gnu / packages / ftp.scm
index 9f4e4fc..dd8af33 100644 (file)
@@ -1,8 +1,8 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014, 2015, 2018 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -21,7 +21,7 @@
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
 (define-module (gnu packages ftp)
-  #:use-module ((guix licenses) #:select (gpl2+ gpl3+ clarified-artistic))
+  #:use-module ((guix licenses) #:select (gpl2 gpl2+ gpl3+ clarified-artistic))
   #:use-module (guix build-system gnu)
   #:use-module (guix download)
   #:use-module (guix packages)
@@ -46,7 +46,7 @@
 (define-public lftp
   (package
     (name "lftp")
-    (version "4.8.3")
+    (version "4.8.4")
     (source (origin
               (method url-fetch)
               ;; See https://lftp.tech/get.html for mirrors.
@@ -58,7 +58,7 @@
                                         "ftp/lftp/lftp-" version ".tar.xz")))
               (sha256
                (base32
-                "12y77jlfs4x4zvcah92mw2h2sb4j0bvbaxkh3wwsm8gs392ywyny"))))
+                "0qks22357xv9y6ripmf5j2n5svh8j5z0yniphfk89sjwkqg2gg2f"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)))
@@ -74,7 +74,8 @@
                      (lambda _
                        (substitute* "tests/Makefile"
                          (("(ftp-cls-l|ftp-list|http-get)\\$\\(EXEEXT\\)") "")
-                         (("lftp-https-get ") "")))))
+                         (("lftp-https-get ") ""))
+                       #t)))
        #:configure-flags
        (list (string-append "--with-readline="
                             (assoc-ref %build-inputs "readline")))))
@@ -91,14 +92,14 @@ reliability in mind.")
 (define-public ncftp
   (package
     (name "ncftp")
-    (version "3.2.5")
+    (version "3.2.6")
     (source (origin
               (method url-fetch)
               (uri (string-append "ftp://ftp.ncftp.com/ncftp/ncftp-"
-                                  version "-src.tar.bz2"))
+                                  version "-src.tar.xz"))
               (sha256
                (base32
-                "0hlx12i0lwi99qsrx7nccf4nvwjj2gych4yks5y179b1ax0y5sxl"))
+                "1389657cwgw5a3kljnqmhvfh4vr2gcr71dwz1mlhf22xq23hc82z"))
               (modules '((guix build utils)))
               (snippet
                '(begin
@@ -112,7 +113,8 @@ reliability in mind.")
                   ;; This is free software, avoid any confusion.
                   (substitute* (find-files "." "\\.c$")
                     (("a freeware program")
-                     "free software"))))))
+                     "free software"))
+                  #t))))
     (build-system gnu-build-system)
     (arguments
      '(#:phases
@@ -156,11 +158,6 @@ FTP browser, as well as non-interactive commands such as 'ncftpput' and
      `(("automake" ,automake)
        ("autoconf" ,autoconf)
        ("gettext" ,gettext-minimal)))
-    (arguments
-     `(#:phases
-       (modify-phases %standard-phases
-         (add-after 'unpack 'bootstrap
-           (lambda _ (zero? (system* "autoreconf" "-vfi")))))))
     (home-page "http://weex.sourceforge.net/")
     (synopsis "Non-interactive client for FTP synchronization")
     (description
@@ -173,39 +170,53 @@ as required.")
 (define-public libfilezilla
   (package
     (name "libfilezilla")
-    (version "0.11.1")
+    (version "0.15.1")
     (source
      (origin
        (method url-fetch)
-       (uri (string-append "http://download.filezilla-project.org/"
+       (uri (string-append "https://download.filezilla-project.org/"
                            name "/" name "-" version ".tar.bz2"))
        (sha256
         (base32
-         "1xv4is3zaz66h6iblj9pikapsjasjcbxx31bhkgn62xdq1sadfpc"))))
+         "17zlhw5b1a7jzh50cbpy2is3sps5lnzch5yf9qm7mwrviw9c8j10"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("cppunit" ,cppunit)
        ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("nettle" ,nettle)))
     (home-page "https://lib.filezilla-project.org")
     (synopsis "Cross-platform C++ library used by Filezilla client")
     (description
      "This package provides some basic functionality to build high-performing,
-platform-independent programs.")
+platform-independent programs.
+
+Some of the highlights include:
+@itemize
+@item
+A type-safe, multi-threaded event system that's simple to use yet efficient.
+@item
+Timers for periodic events.
+@item
+A @code{datetime} class that not only tracks timestamp but also their accuracy,
+which simplifies dealing with timestamps originating from different sources.
+@item
+Simple process handling for spawning child processes with redirected input and
+output.
+@end itemize\n")
     (license gpl2+)))
 
 (define-public filezilla
   (package
     (name "filezilla")
-    (version "3.27.1")
+    (version "3.39.0")
     (source
      (origin
        (method url-fetch)
-       (uri (string-append "https://sourceforge.net/projects/" name
-                           "/files/FileZilla_Client/" version
-                           "/FileZilla_" version "_src" ".tar.bz2"))
+       (uri (string-append "https://download.filezilla-project.org/client/"
+                           "FileZilla_" version "_src.tar.bz2"))
        (sha256
-        (base32
-         "14lsplbp9fy7lk6cpwi3aj6jskz4j82h67x0fik82z1bns0zm2a3"))))
+        (base32 "0ks42q6mi3qx85zpa98izkyficv2bdh3jnvmy97xjnjyfy9mwlgv"))))
     (build-system gnu-build-system)
     (arguments
       ;; Don't let filezilla phone home to check for updates.
@@ -233,3 +244,42 @@ and others features such as bookmarks, drag and drop, filename filters,
 directory comparison and more.")
     (license gpl2+)
     (properties '((upstream-name . "FileZilla")))))
+
+(define-public vsftpd
+  (package
+    (name "vsftpd")
+    (version "3.0.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://security.appspot.com/downloads/"
+                                  name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1xsyjn68k3fgm2incpb3lz2nikffl9by2safp994i272wvv2nkcx"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:make-flags '("LDFLAGS=-lcrypt")
+       #:tests? #f                      ; No tests exist.
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-installation-directory
+           (lambda* (#:key outputs #:allow-other-keys)
+             (substitute* "Makefile"
+               (("/usr") (assoc-ref outputs "out")))
+             #t))
+         (add-before 'install 'mkdir
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (mkdir-p out)
+               (mkdir (string-append out "/sbin"))
+               (mkdir (string-append out "/man"))
+               (mkdir (string-append out "/man/man5"))
+               (mkdir (string-append out "/man/man8"))
+               #t)))
+         (delete 'configure))))
+    (synopsis "vsftpd FTP daemon")
+    (description "@command{vsftpd} is a daemon that listens on a TCP socket
+for clients and gives them access to local files via File Transfer
+Protocol.")
+    (home-page "https://security.appspot.com/vsftpd.html")
+    (license gpl2)))