X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/ccad0e4d6973da7af8badfb7125f35f7e51eb2d7..ffe714b5f441ca22d69ecef34bdbb8e61bf758c4:/gnu/packages/libusb.scm diff --git a/gnu/packages/libusb.scm b/gnu/packages/libusb.scm index 299fbf2238..5ebc066ac8 100644 --- a/gnu/packages/libusb.scm +++ b/gnu/packages/libusb.scm @@ -8,6 +8,8 @@ ;;; Copyright © 2017 Jonathan Brielmaier ;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; Copyright © 2018 Vagrant Cascadian +;;; Copyright © 2020 Marius Bakke +;;; Copyright © 2020 Christopher Howard ;;; ;;; This file is part of GNU Guix. ;;; @@ -51,15 +53,15 @@ (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 +84,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")))) @@ -113,7 +115,8 @@ version of libusb to run with newer libusb.") (sha256 (base32 "0i4bacxkyr7xyqxbmb00ypkrv4swkgm0mghbzjsnw6blvvczgxip")) - (patches (search-patches "libusb-0.1-disable-tests.patch")))))) + (patches (search-patches "libusb-0.1-disable-tests.patch")))) + (arguments `(#:configure-flags (list "CFLAGS=-Wno-error"))))) (define-public libusb4java ;; There is no public release so we take the latest version from git. @@ -125,7 +128,7 @@ version of libusb to run with newer libusb.") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/usb4java/libusb4java.git") + (url "https://github.com/usb4java/libusb4java") (commit commit))) (file-name (git-file-name name version)) (sha256 @@ -163,12 +166,14 @@ with usb4java.") (name "java-usb4java") (version "1.2.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/usb4java/usb4java/" - "archive/usb4java-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/usb4java/usb4java") + (commit (string-append "usb4java-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0gzpsnzwgsdyra3smq288yvxnwrgvdwxr6g8jbknnsk56kv6wc34")))) + "0aip6k24czz5g58qwb963mpick0b6ks774drfpdd8gcdvj9iv87j")))) (build-system ant-build-system) (arguments `(#:jar-name "usb4java.jar" @@ -302,29 +307,74 @@ wrapper for accessing libusb-1.0.") (define-public python2-pyusb (package-with-python2 python-pyusb)) +(define-public python-capablerobot-usbhub + (package + (name "python-capablerobot-usbhub") + (version "0.2.7") + (source + (origin + (method url-fetch) + (uri (pypi-uri "capablerobot_usbhub" version)) + (sha256 + (base32 + "1priic4iq2vn1rc711kzxwhxrwa508rkxrr193qdz2lw26kdhvix")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'install 'install-udev-rules + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (mkdir-p (string-append out "/lib/udev/rules.d")) + (copy-file "50-capablerobot-usbhub.rules" + (string-append out + "/lib/udev/rules.d/" + "50-capablerobot-usbhub.rules")) + #t)))))) + (propagated-inputs + `(("python-click" ,python-click) + ("python-construct" ,python-construct) + ("python-pyusb" ,python-pyusb) + ("python-pyyaml" ,python-pyyaml))) + (home-page + "https://github.com/CapableRobot/CapableRobot_USBHub_Driver") + (synopsis + "Host side driver for the Capable Robot Programmable USB Hub") + (description + "This package provides access to the internal state of the Capable Robot +USB Hub, allowing you to monitor and control the Hub from an upstream +computer. It also creates a transparent CircuitPython Bridge, allowing +unmodified CircuitPython code to run on the host computer and interact with +I2C and SPI devices attached to the USB Hub.") + (license license:expat))) + (define-public libplist (package (name "libplist") - (version "2.0.0") - (source (origin - (method url-fetch) - (uri (string-append "https://www.libimobiledevice.org/downloads/" - "libplist-" version ".tar.bz2")) - (sha256 - (base32 - "00pnh9zf3iwdji2faccns7vagbmbrwbj9a8zp9s53a6rqaa9czis")))) + (version "2.2.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/libimobiledevice" + "/libplist/releases/download/" version + "/libplist-" version ".tar.bz2")) + (sha256 + (base32 "16mxdwaw01x9a3adf0yj3bqjc7afpf2vm1n5hkgj3i3y6zjifmaa")))) (build-system gnu-build-system) (arguments - ;; 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)) + `(;; 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 "https://www.libimobiledevice.org/") + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config) + ("python-cython" ,python-cython))) ; to build Python bindings + (home-page "https://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.") @@ -333,19 +383,20 @@ Apple Property List files in binary or XML.") (define-public libusbmuxd (package (name "libusbmuxd") - (version "1.0.10") + (version "2.0.2") (source (origin (method url-fetch) - (uri (string-append "https://www.libimobiledevice.org/downloads/" - "libusbmuxd-" version ".tar.bz2")) + (uri (string-append "https://github.com/libimobiledevice" + "/libusbmuxd/releases/download/" version + "/libusbmuxd-" version ".tar.bz2")) (sha256 (base32 - "1wn9zq2224786mdr12c5hxad643d29wg4z6b7jn888jx4s8i78hs")))) + "084vg570g1qb506jd7axg6c080mfsmbf52v3lngzlknsaf2q0snc")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) ("libplist" ,libplist))) - (home-page "https://www.libimobiledevice.org/") + (home-page "https://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 @@ -355,33 +406,29 @@ connections from and to iOS devices by connecting to a socket provided by a (define-public libimobiledevice (package (name "libimobiledevice") - (version "1.2.0") + (version "1.3.0") (source (origin (method url-fetch) - (uri (string-append "https://www.libimobiledevice.org/downloads/" - "libimobiledevice-" version ".tar.bz2")) + (uri (string-append "https://github.com/libimobiledevice" + "/libimobiledevice/releases/download/" + version "/libimobiledevice-" version + ".tar.bz2")) (sha256 (base32 - "0dqhy4qwj30mw8pwckvjmgnj1qqrh6p8c6jknmhvylshhzh0ssvq")))) + "1xmhfnypg6j7shl73wfkrrn4mj9dh8qzaj3258q9zkb5cc669wjk")))) (build-system gnu-build-system) (arguments - `(#:configure-flags - (list (string-append "PYTHON_LDFLAGS=-L" - (assoc-ref %build-inputs "python") - "/lib -lpython" - ,(version-major+minor (package-version python)) - "m")))) + '(#:configure-flags '("PYTHON_VERSION=3"))) (propagated-inputs - `(("openssl" ,openssl-1.0) + `(("openssl" ,openssl) ("libplist" ,libplist) ("libusbmuxd" ,libusbmuxd))) (inputs `(("python" ,python))) (native-inputs `(("pkg-config" ,pkg-config) - ("python-cython" ,python-cython) - ("libtool" ,libtool))) - (home-page "https://www.libimobiledevice.org/") + ("python-cython" ,python-cython))) + (home-page "https://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 @@ -394,21 +441,22 @@ music and video to the device.") (define-public ifuse (package (name "ifuse") - (version "1.1.3") + (version "1.1.4") (source (origin (method url-fetch) - (uri (string-append "https://www.libimobiledevice.org/downloads/" - "ifuse-" version ".tar.bz2")) + (uri (string-append "https://github.com/libimobiledevice" + "/ifuse/releases/download/" version + "/ifuse-" version ".tar.bz2")) (sha256 (base32 - "1p9a4n36jb194cnp6v57cz2bggwbywaz8pbpb95ch83pzdkdx257")))) + "11wdv44qwia77sh38n36809ysaib52rwd4fvqwb5ybsbz4p70l1m")))) (inputs `(("fuse" ,fuse) ("libimobiledevice" ,libimobiledevice))) (native-inputs `(("pkg-config" ,pkg-config))) (build-system gnu-build-system) - (home-page "https://www.libimobiledevice.org/") + (home-page "https://libimobiledevice.org/") (synopsis "Mount iOS devices") (description "This package provides @command{ifuse}, a command to mount iOS devices and access their contents.") @@ -417,14 +465,15 @@ iOS devices and access their contents.") (define-public usbmuxd (package (name "usbmuxd") - (version "1.1.0") + (version "1.1.1") (source (origin (method url-fetch) - (uri (string-append "https://www.libimobiledevice.org/downloads/" - "usbmuxd-" version ".tar.bz2")) + (uri (string-append "https://github.com/libimobiledevice" + "/usbmuxd/releases/download/" version + "/usbmuxd-" version ".tar.bz2")) (sha256 (base32 - "0bdlc7a8plvglqqx39qqampqm6y0hcdws76l9dffwl22zss4i29y")))) + "17idzpxrvkbff0jpynf35df95lh7wsm8vndynp63bxib2w09gv60")))) (inputs `(("libplist" ,libplist) ("libusb" ,libusb) @@ -432,7 +481,7 @@ iOS devices and access their contents.") (native-inputs `(("pkg-config" ,pkg-config))) (build-system gnu-build-system) - (home-page "https://www.libimobiledevice.org/") + (home-page "https://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 @@ -443,24 +492,26 @@ over USB.") (define-public libmtp (package (name "libmtp") - (version "1.1.16") + (version "1.1.17") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/libmtp/libmtp/" version "/libmtp-" version ".tar.gz")) (sha256 (base32 - "185vh9bds6dcy00ycggg69g4v7m3api40zv8vrcfb3fk3vfzjs2v")))) + "1p3r38nvdip40ab1h4scj3mzfjkx6kd14szjqyw9r6wz5pslr8zq")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) + (inputs + `(("libgcrypt" ,libgcrypt))) (propagated-inputs ;; libmtp.pc refers to all these. - `(("libgcrypt" ,libgcrypt) - ("libusb" ,libusb))) + `(("libusb" ,libusb))) (arguments `(#:configure-flags - (list (string-append "--with-udev=" + (list "--disable-static" + (string-append "--with-udev=" (assoc-ref %outputs "out") "/lib/udev")))) (home-page "http://libmtp.sourceforge.net/") @@ -513,14 +564,16 @@ devices.") (define-public hidapi (package (name "hidapi") - (version "0.8.0-rc1") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/signal11/hidapi/archive/hidapi-" - version ".tar.gz")) - (sha256 - (base32 - "0qdgyj9rgb7n0nk3ghfswrhzzknxqn4ibn3wj8g4r828pw07451w")))) + (version "0.9.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/libusb/hidapi") + (commit (string-append "hidapi-" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1p4g8lgwj4rki6lbn5l6rvwj0xlbn1xfh4d255bg5pvgczmwmc4i")))) (build-system gnu-build-system) (inputs `(("libusb" ,libusb) @@ -530,7 +583,7 @@ devices.") ("automake" ,automake) ("libtool" ,libtool) ("pkg-config" ,pkg-config))) - (home-page "http://www.signal11.us/oss/hidapi/") + (home-page "https://github.com/libusb/hidapi") (synopsis "HID API library") (description "HIDAPI is a library which allows an application to interface with USB and Bluetooth