;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
;;; Copyright © 2016, 2017, 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
-;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2016, 2017, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Peter Feigl <peter.feigl@nexoid.at>
;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages popt)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-build)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
setup, maintenance, supervision, or any long-running processes.")
(home-page "https://github.com/leahneukirchen/nq")
(license license:public-domain)))
+(define-public python-qmk-dotty-dict
+ (package
+ (name "python-qmk-dotty-dict")
+ (version "1.3.0.post1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "qmk_dotty_dict" version))
+ (sha256
+ (base32 "18kyzk9a00xbxjsph2a9p03zx05f9dw993n66mlamgv06qwiwq9v"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'disable-broken-test
+ (lambda _ (delete-file "tests/test_dotty_cache.py"))))))
+ (native-inputs
+ `(("python-setuptools-scm" ,python-setuptools-scm)
+ ("python-pytest" ,python-pytest)))
+ (home-page "https://github.com/pawelzny/dotty_dict")
+ (synopsis "Dictionary wrapper for quick access to deeply nested keys.")
+ (description "Dictionary wrapper for quick access to deeply nested keys.")
+ (license license:expat)))
+
+(define-public python-hjson
+ (package
+ (name "python-hjson")
+ (version "3.0.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "hjson" version))
+ (sha256
+ (base32 "1mgwmim5k3pnlcxr63cz110jr28r78zrbkkfa6j9x0z501rgsf18"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:tests? #false)) ; txt file is missing
+ (home-page "http://github.com/hjson/hjson-py")
+ (synopsis "Hjson, a user interface for JSON.")
+ (description "Hjson, a user interface for JSON.")
+ (license license:expat)))
+
+(define-public python-spinners
+ (package
+ (name "python-spinners")
+ (version "0.0.24")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "spinners" version))
+ (sha256
+ (base32 "0zz2z6dpdjdq5z8m8w8dfi8by0ih1zrdq0caxm1anwhxg2saxdhy"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'relax-requirement-on-tox
+ (lambda _
+ (substitute* "requirements-dev.txt"
+ (("tox==2.8.2") "tox")
+ (("pylint.*") "")
+ (("coverage.*") "coverage\n")))))))
+ (native-inputs
+ `(("python-coverage" ,python-coverage)
+ ("python-tox" ,python-tox)
+ ("python-nose" ,python-nose)))
+ (home-page "https://github.com/manrajgrover/py-spinners")
+ (synopsis "Spinners for terminals")
+ (description "Spinners for terminals")
+ (license license:expat)))
+
+(define-public python-log-symbols
+ (package
+ (name "python-log-symbols")
+ (version "0.0.14")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "log-symbols" version))
+ (sha256
+ (base32 "0mh5d0igw33libfmbsr1ri1p1y644p36nwaa2w6kzrd8w5pvq2yg"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'relax-requirement-on-tox
+ (lambda _
+ (substitute* "requirements-dev.txt"
+ (("tox==2.8.2") "tox")
+ (("pylint.*") "")
+ (("coverage.*") "coverage\n")))))))
+ (propagated-inputs
+ `(("python-colorama" ,python-colorama)))
+ (native-inputs
+ `(("python-coverage" ,python-coverage)
+ ("python-tox" ,python-tox)
+ ("python-nose" ,python-nose)))
+ (home-page "https://github.com/manrajgrover/py-log-symbols")
+ (synopsis "Colored symbols for various log levels for Python")
+ (description "Colored symbols for various log levels for Python")
+ (license license:expat)))
+
+(define-public python-halo
+ (package
+ (name "python-halo")
+ (version "0.0.31")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "halo" version))
+ (sha256
+ (base32 "1mn97h370ggbc9vi6x8r6akd5q8i512y6kid2nvm67g93r9a6rvv"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'relax-requirement-on-tox
+ (lambda _
+ (substitute* "requirements-dev.txt"
+ (("tox.*") "tox\n")
+ (("pylint.*") "pylint\n")
+ (("coverage.*") "coverage\n")))))))
+ (propagated-inputs
+ `(#;("python-backports.shutil-get-terminal-size"
+ ,python-backports.shutil-get-terminal-size)
+ ("python-colorama" ,python-colorama)
+ ("python-log-symbols" ,python-log-symbols)
+ ("python-six" ,python-six)
+ ("python-spinners" ,python-spinners)
+ ("python-termcolor" ,python-termcolor)))
+ (native-inputs
+ `(("python-twine" ,python-twine)
+ ("python-coverage" ,python-coverage)
+ ("python-tox" ,python-tox)
+ ("python-pylint" ,python-pylint)
+ ("python-nose" ,python-nose)))
+ (home-page "https://github.com/manrajgrover/halo")
+ (synopsis "Beautiful terminal spinners in Python")
+ (description "Beautiful terminal spinners in Python")
+ (license license:expat)))
+
+(define-public python-milc
+ (package
+ (name "python-milc")
+ (version "1.6.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "milc" version))
+ (sha256
+ (base32 "0bbqgyzzcq7hpp8xypd188ga49zf9kv7qljbd29ms9kvl45d9j5j"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-appdirs" ,python-appdirs)
+ ("python-argcomplete" ,python-argcomplete)
+ ("python-colorama" ,python-colorama)
+ ("python-halo" ,python-halo)
+ ("python-spinners" ,python-spinners)))
+ (home-page "https://milc.clueboard.co/")
+ (synopsis "Opinionated Batteries-Included Python 3 CLI Framework.")
+ (description "Opinionated Batteries-Included Python 3 CLI Framework.")
+ (license license:expat)))
+
+(define-public python-hid
+ (package
+ (name "python-hid")
+ (version "1.0.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "hid" version))
+ (sha256
+ (base32 "1h9zi0kyicy3na1azfsgb57ywxa8p62bq146pb44ncvsyf1066zn"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'foo
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "hid/__init__.py"
+ (("libhidapi-hidraw.so.0")
+ (string-append (assoc-ref inputs "hidapi") "/lib/libhidapi-hidraw.so.0"))))))))
+ (inputs
+ `(("hidapi" ,hidapi)))
+ (native-inputs
+ `(("python-nose" ,python-nose)))
+ (home-page "https://github.com/apmorton/pyhidapi")
+ (synopsis "ctypes bindings for hidapi")
+ (description "ctypes bindings for hidapi")
+ (license license:expat)))
+
+(define-public python-qmk
+ (package
+ (name "python-qmk")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "qmk" version))
+ (sha256
+ (base32 "1jpr22k539yc1rhn69igvh0s7hrd40vkkgmrn0vwqj257k3ywqns"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'build
+ (lambda _
+ (invoke "python3" "-m" "pip" "install" "."))))))
+ (native-inputs
+ `(("python-build" ,python-pypa-build)
+ ("python-setuptools" ,python-setuptools)))
+ (propagated-inputs
+ `(("python-hid" ,python-hid)
+ ("python-hjson" ,python-hjson)
+ ("python-jsonschema" ,python-jsonschema)
+ ("python-milc" ,python-milc)
+ ("python-pygments" ,python-pygments)
+ ("python-pyusb" ,python-pyusb)
+ ("python-qmk-dotty-dict" ,python-qmk-dotty-dict)
+ ("python-setuptools" ,python-setuptools)))
+ (home-page "")
+ (synopsis "A program to help users work with QMK Firmware.")
+ (description "A program to help users work with QMK Firmware.")
+ (license license:expat)))
+
+(define-public qmk-toolbox
+ (package
+ (name "qmk-toolbox")
+ (version "0.1.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/qmk/qmk_toolbox")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1ypsa0fzb5svyyjnsg67dwy0k1didfmspiwk89y8j9c8w71n6dis"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f
+ #:make-flags '("-C" "linux")
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((bin (string-append (assoc-ref outputs "out") "/bin")))
+ (install-file "linux/qmk_toolbox" bin)))))))
+ (inputs
+ `(("gtk+" ,gtk+)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "https://github.com/qmk/qmk_toolbox")
+ (synopsis "Toolbox for QMK keyboard firmware")
+ (description "This is a collection of flashing tools for QMK keyboard
+firmwar. It supports auto-detection and auto-flashing of firmware to
+keyboards.")
+ (license license:expat)))
+
(define-public lsofgraph
(let ((commit "1d414bdc727c00a8c6cbfffc3c43128c60d6f0de")
(revision "1"))