gnu: Add cl-ana.statistical-learning.
[jackhill/guix/guix.git] / gnu / packages / libusb.scm
index e27cffa..878f9e5 100644 (file)
 (define-public libusb
   (package
     (name "libusb")
-    (version "1.0.22")
+    (version "1.0.23")
     (source
      (origin
       (method url-fetch)
-      (uri (string-append "mirror://sourceforge/libusb/libusb-1.0/"
-                          "libusb-" version "/libusb-" version ".tar.bz2"))
+      (uri (string-append "https://github.com/libusb/libusb/"
+                          "releases/download/v" version
+                          "/libusb-" version ".tar.bz2"))
       (sha256
-       (base32
-        "0mw1a5ss4alg37m6bd4k44v35xwrcwp5qm4s686q1nsgkbavkbkm"))))
+       (base32 "13dd2a9x290d1q8nb1lqiaf36grcvns5ripk5k2xm0lajmpc04fv"))))
     (build-system gnu-build-system)
 
     ;; XXX: Enabling udev is now recommended, but eudev indirectly depends on
@@ -82,9 +82,9 @@ devices on various operating systems.")
      (origin
       (method url-fetch)
       (uri (string-append "mirror://sourceforge/libusb/"
-                          name "-" (version-major+minor version) "/"
-                          name "-" version "/"
-                          name "-" version ".tar.bz2"))
+                          "libusb-compat-" (version-major+minor version) "/"
+                          "libusb-compat-" version "/"
+                          "libusb-compat-" version ".tar.bz2"))
       (sha256
        (base32
         "0nn5icrfm9lkhzw1xjvaks9bq3w6mjg86ggv3fn7kgi4nfvg8kj0"))))
@@ -305,21 +305,38 @@ wrapper for accessing libusb-1.0.")
 (define-public libplist
   (package
     (name "libplist")
-    (version "2.0.0")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "http://www.libimobiledevice.org/downloads/"
-                                  "libplist-" version ".tar.bz2"))
-              (sha256
-               (base32
-                "00pnh9zf3iwdji2faccns7vagbmbrwbj9a8zp9s53a6rqaa9czis"))))
+    (version "2.1.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/libimobiledevice/libplist.git")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "02vraf4j46bp746s0gz7vga2gv2dy3zd1v1bsy9x8algg9fpcb7n"))))
     (build-system gnu-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'bootstrap 'configure-later
+           ;; Don't run ./configure during bootstrap.
+           (lambda _
+             (setenv "NOCONFIGURE" "set")
+             #t)))
+       ;; Tests fail randomly when run in parallel because several of them write
+       ;; and read to/from the same file--e.g., "4.plist" is accessed by
+       ;; 'large.test' and 'largecmp.test'.
+       #:parallel-tests? #f))
     (inputs
      `(("python" ,python)))
     (native-inputs
-     `(("pkg-config" ,pkg-config)
-       ("python-cython" ,python-cython)))
-    (home-page "http://www.libimobiledevice.org/")
+     `(("autoconf" ,autoconf)
+       ("automake" ,automake)
+       ("libtool" ,libtool)
+       ("pkg-config" ,pkg-config)
+       ("python-cython" ,python-cython))) ; to build Python bindings
+    (home-page "https://www.libimobiledevice.org/")
     (synopsis "C library to handle Apple Property List files")
     (description "This package provides a small portable C library to handle
 Apple Property List files in binary or XML.")
@@ -331,7 +348,7 @@ Apple Property List files in binary or XML.")
     (version "1.0.10")
     (source (origin
               (method url-fetch)
-              (uri (string-append "http://www.libimobiledevice.org/downloads/"
+              (uri (string-append "https://www.libimobiledevice.org/downloads/"
                                   "libusbmuxd-" version ".tar.bz2"))
               (sha256
                (base32
@@ -340,7 +357,7 @@ Apple Property List files in binary or XML.")
     (native-inputs
      `(("pkg-config" ,pkg-config)
        ("libplist" ,libplist)))
-    (home-page "http://www.libimobiledevice.org/")
+    (home-page "https://www.libimobiledevice.org/")
     (synopsis "Library to multiplex connections from and to iOS devices")
     (description "This package provides a client library to multiplex
 connections from and to iOS devices by connecting to a socket provided by a
@@ -353,7 +370,7 @@ connections from and to iOS devices by connecting to a socket provided by a
     (version "1.2.0")
     (source (origin
               (method url-fetch)
-              (uri (string-append "http://www.libimobiledevice.org/downloads/"
+              (uri (string-append "https://www.libimobiledevice.org/downloads/"
                                   "libimobiledevice-" version ".tar.bz2"))
               (sha256
                (base32
@@ -367,25 +384,74 @@ connections from and to iOS devices by connecting to a socket provided by a
                             ,(version-major+minor (package-version python))
                             "m"))))
     (propagated-inputs
-     `(("openssl" ,openssl)
+     `(("openssl" ,openssl-1.0)
+       ("libplist" ,libplist)
        ("libusbmuxd" ,libusbmuxd)))
     (inputs
-     `(("libplist" ,libplist)
-       ("python" ,python)))
+     `(("python" ,python)))
     (native-inputs
      `(("pkg-config" ,pkg-config)
        ("python-cython" ,python-cython)
        ("libtool" ,libtool)))
-    (home-page "http://www.libimobiledevice.org/")
+    (home-page "https://www.libimobiledevice.org/")
     (synopsis "Protocol library and tools to communicate with Apple devices")
     (description "libimobiledevice is a software library that talks the
 protocols to support Apple devices.  It allows other software to easily access
-the device's filesystem, retrieve information about the device and it's
+the device's file system, retrieve information about the device and its
 internals, backup/restore the device, manage installed applications, retrieve
-addressbook/calendars/notes and bookmarks and (using libgpod) synchronize
+address books, calendars, notes, and bookmarks, and (using libgpod) synchronize
 music and video to the device.")
     (license license:lgpl2.1+)))
 
+(define-public ifuse
+  (package
+    (name "ifuse")
+    (version "1.1.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://www.libimobiledevice.org/downloads/"
+                                  "ifuse-" version ".tar.bz2"))
+              (sha256
+               (base32
+                "1p9a4n36jb194cnp6v57cz2bggwbywaz8pbpb95ch83pzdkdx257"))))
+    (inputs
+     `(("fuse" ,fuse)
+       ("libimobiledevice" ,libimobiledevice)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (build-system gnu-build-system)
+    (home-page "https://www.libimobiledevice.org/")
+    (synopsis "Mount iOS devices")
+    (description "This package provides @command{ifuse}, a command to mount
+iOS devices and access their contents.")
+    (license license:lgpl2.1+)))
+
+(define-public usbmuxd
+  (package
+    (name "usbmuxd")
+    (version "1.1.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://www.libimobiledevice.org/downloads/"
+                                  "usbmuxd-" version ".tar.bz2"))
+              (sha256
+               (base32
+                "0bdlc7a8plvglqqx39qqampqm6y0hcdws76l9dffwl22zss4i29y"))))
+    (inputs
+     `(("libplist" ,libplist)
+       ("libusb" ,libusb)
+       ("libimobiledevice" ,libimobiledevice)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (build-system gnu-build-system)
+    (home-page "https://www.libimobiledevice.org/")
+    (synopsis "Multiplex connections over USB to an iOS device")
+    (description "This package provides the @code{usbmuxd} daemon
+which multiplexes connections over USB to an iOS device.  To
+users, it means you can sync your music, contacts, photos, etc.
+over USB.")
+    (license license:gpl2+)))
+
 (define-public libmtp
   (package
     (name "libmtp")