diff --git a/gnu/packages/lsof.scm b/gnu/packages/lsof.scm index eff361dc8c..f8742b6af9 100644 --- a/gnu/packages/lsof.scm +++ b/gnu/packages/lsof.scm @@ -25,48 +25,35 @@ #:use-module (guix build-system gnu) #:use-module (gnu packages perl)) -(define %ftp-base - "ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/") - (define-public lsof (package (name "lsof") (version "4.89") - (source (origin - (method url-fetch) - (uri (list (string-append %ftp-base "lsof_" - version ".tar.bz2") - (string-append %ftp-base "OLD/lsof_" - version ".tar.bz2") + (source + (origin + (method url-fetch) + (uri + (apply append + (map + (lambda (mirror-uri) + (let ((tarball (string-append name "_" version ".tar.bz2"))) + (list + (string-append mirror-uri "/" tarball) + ;; Upon every new release, the previous one is moved here: + (string-append mirror-uri "/OLD/" tarball)))) + (list + "ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/" - ;; Add mirrors because the FTP server at purdue.edu - ;; bails out when it cannot do a reverse DNS lookup, as - ;; noted at . - (string-append - "ftp://ftp.fu-berlin.de/pub/unix/tools/lsof/lsof_" - version ".tar.bz2") - (string-append - "ftp://ftp.fu-berlin.de/pub/unix/tools/lsof/OLD/lsof_" - version ".tar.bz2") - (string-append - "http://www.mirrorservice.org/sites/" - "lsof.itap.purdue.edu/pub/tools/unix/lsof/lsof_" - version ".tar.bz2") - (string-append - "http://www.mirrorservice.org/sites/" - "lsof.itap.purdue.edu/pub/tools/unix/lsof/OLD/lsof_" - version ".tar.bz2") - (string-append - "ftp://ftp.mirrorservice.org/sites/" - "lsof.itap.purdue.edu/pub/tools/unix/lsof/lsof_" - version ".tar.bz2") - (string-append - "ftp://ftp.mirrorservice.org/sites/" - "lsof.itap.purdue.edu/pub/tools/unix/lsof/OLD/lsof_" - version ".tar.bz2"))) - (sha256 - (base32 - "061p18v0mhzq517791xkjs8a5dfynq1418a1mwxpji69zp2jzb41")))) + ;; Add mirrors because the canonical FTP server at purdue.edu + ;; bails out when it cannot do a reverse DNS lookup, as noted + ;; at . + "ftp://ftp.fu-berlin.de/pub/unix/tools/lsof/" + (string-append "http://www.mirrorservice.org/sites/" + "lsof.itap.purdue.edu/pub/tools/unix/lsof") + (string-append "ftp://ftp.mirrorservice.org/sites/" + "lsof.itap.purdue.edu/pub/tools/unix/lsof"))))) + (sha256 + (base32 "061p18v0mhzq517791xkjs8a5dfynq1418a1mwxpji69zp2jzb41")))) (build-system gnu-build-system) (inputs `(("perl" ,perl))) (arguments