unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
From: Reza Housseini <reza.housseini@gmail.com>
To: help-guix@gnu.org
Subject: Help packaging pynitrokey
Date: Tue, 24 Sep 2024 11:10:19 +0200	[thread overview]
Message-ID: <87tte5zabo.fsf@housseini.me> (raw)

[-- Attachment #1: Type: text/plain, Size: 477 bytes --]

Hi List

I want to package pynitrokey [1] to be able to use my Nitrokey 3 device
[2] in guix. Unfortunately there is alot to package for this. I got
stuck packaging the python/rust package cmsis-pack-manager [3]. Has
anyone already worked on this or is able to give me a hand?

Find attached my failed attempt at it.

Thanks and best,
Reza


[1] https://github.com/Nitrokey/pynitrokey/
[2] https://docs.nitrokey.com/nitrokey3/
[3] https://github.com/pyocd/cmsis-pack-manager/


[-- Attachment #2: Guix package for pynitrokey --]
[-- Type: text/plain, Size: 27032 bytes --]

(define-module (gnu packages python-additions)
  #:use-module ((guix licenses) #:prefix license:)
  #:use-module (gnu packages)
  #:use-module (gnu packages algebra)
  #:use-module (gnu packages adns)
  #:use-module (gnu packages aidc)
  #:use-module (gnu packages attr)
  #:use-module (gnu packages backup)
  #:use-module (gnu packages bash)
  #:use-module (gnu packages bioinformatics)
  #:use-module (gnu packages check)
  #:use-module (gnu packages cmake)
  #:use-module (gnu packages compression)
  #:use-module (gnu packages crates-io)
  #:use-module (gnu packages crypto)
  #:use-module (gnu packages databases)
  #:use-module (gnu packages dbm)
  #:use-module (gnu packages django)
  #:use-module (gnu packages djvu)
  #:use-module (gnu packages docker)
  #:use-module (gnu packages enchant)
  #:use-module (gnu packages engineering)
  #:use-module (gnu packages file)
  #:use-module (gnu packages fontutils)
  #:use-module (gnu packages freedesktop)
  #:use-module (gnu packages gcc)
  #:use-module (gnu packages geo)
  #:use-module (gnu packages ghostscript)
  #:use-module (gnu packages gl)
  #:use-module (gnu packages glib)
  #:use-module (gnu packages gnome)
  #:use-module (gnu packages gnupg)
  #:use-module (gnu packages graphviz)
  #:use-module (gnu packages graphics)
  #:use-module (gnu packages gsasl)
  #:use-module (gnu packages gstreamer)
  #:use-module (gnu packages gtk)
  #:use-module (gnu packages haskell-xyz)
  #:use-module (gnu packages icu4c)
  #:use-module (gnu packages image)
  #:use-module (gnu packages imagemagick)
  #:use-module (gnu packages jupyter)
  #:use-module (gnu packages kerberos)
  #:use-module (gnu packages libevent)
  #:use-module (gnu packages libffi)
  #:use-module (gnu packages libidn)
  #:use-module (gnu packages libusb)
  #:use-module (gnu packages linux)
  #:use-module (gnu packages llvm)
  #:use-module (gnu packages machine-learning)
  #:use-module (gnu packages man)
  #:use-module (gnu packages markup)
  #:use-module (gnu packages maths)
  #:use-module (gnu packages monitoring)
  #:use-module (gnu packages multiprecision)
  #:use-module (gnu packages networking)
  #:use-module (gnu packages ncurses)
  #:use-module (gnu packages openstack)
  #:use-module (gnu packages pcre)
  #:use-module (gnu packages pdf)
  #:use-module (gnu packages perl)
  #:use-module (gnu packages photo)
  #:use-module (gnu packages pkg-config)
  #:use-module (gnu packages protobuf)
  #:use-module (gnu packages python)
  #:use-module (gnu packages python-build)
  #:use-module (gnu packages python-check)
  #:use-module (gnu packages python-compression)
  #:use-module (gnu packages python-crypto)
  #:use-module (gnu packages python-science)
  #:use-module (gnu packages python-web)
  #:use-module (gnu packages python-xyz)
  #:use-module (gnu packages qt)
  #:use-module (gnu packages rdf)
  #:use-module (gnu packages readline)
  #:use-module (gnu packages regex)
  #:use-module (gnu packages rust)
  #:use-module (gnu packages rust-apps)
  #:use-module (gnu packages sdl)
  #:use-module (gnu packages scanner)
  #:use-module (gnu packages search)
  #:use-module (gnu packages security-token)
  #:use-module (gnu packages serialization)
  #:use-module (gnu packages shells)
  #:use-module (gnu packages sphinx)
  #:use-module (gnu packages ssh)
  #:use-module (gnu packages swig)
  #:use-module (gnu packages terminals)
  #:use-module (gnu packages tex)
  #:use-module (gnu packages texinfo)
  #:use-module (gnu packages textutils)
  #:use-module (gnu packages time)
  #:use-module (gnu packages tls)
  #:use-module (gnu packages version-control)
  #:use-module (gnu packages video)
  #:use-module (gnu packages web)
  #:use-module (gnu packages wxwidgets)
  #:use-module (gnu packages base)
  #:use-module (gnu packages xml)
  #:use-module (gnu packages xorg)
  #:use-module (gnu packages xdisorg)
  #:use-module (gnu packages tcl)
  #:use-module (gnu packages bdw-gc)
  #:use-module (gnu packages serialization)
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix gexp)
  #:use-module (guix git-download)
  #:use-module (guix hg-download)
  #:use-module (guix gexp)
  #:use-module (guix utils)
  #:use-module (guix build-system gnu)
  #:use-module (guix build-system cargo)
  #:use-module (guix build-system cmake)
  #:use-module (guix build-system python)
  #:use-module (guix build-system pyproject)
  #:use-module (guix build-system trivial)
  ;;#:use-module (srfi srfi-1)
  #:use-module (srfi srfi-26)
  #:autoload   (guix git) (git-checkout))

(define-public python-fido2
  (package
    (name "python-fido2")
    (version "1.1.2")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "fido2" version))
       (sha256
	(base32 "0wy56v4hvqxw3z2vkl51dg22qmjp50mjcbdk0691jxkg209xj431"))))
    (build-system pyproject-build-system)
    (arguments (list #:tests? #f))
    (native-inputs (list poetry))
    (propagated-inputs (list python-cryptography python-pyscard))
    (home-page "https://github.com/Yubico/python-fido2")
    (synopsis "FIDO2/WebAuthn library for implementing clients and servers.")
    (description
     "FIDO2/@code{WebAuthn} library for implementing clients and servers.")
    (license license:bsd-2)))

(define-public python-nkdfu
  (package
    (name "python-nkdfu")
    (version "0.2")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "nkdfu" version))
       (sha256
	(base32 "1y7m17k4l1ayigar6kr8xnb18yspa6gxwg4lns2p5i42sgfpapzj"))))
    (build-system pyproject-build-system)
    (arguments (list #:tests? #f))
    (native-inputs (list python-flit))
    (propagated-inputs (list python-fire python-intelhex python-libusb1
                             python-tqdm))
    (home-page "https://github.com/Nitrokey/nkdfu")
    (synopsis "DFU tool for updating Nitrokeys' firmware")
    (description "DFU tool for updating Nitrokeys firmware")
    (license license:gpl2)))

(define-public python-oath
  (package
    (name "python-oath")
    (version "1.4.4")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "oath" version))
       (sha256
	(base32 "02qwzrsw3b6wv2gmlkrglznawxfa3lhh1s9ya99kykic1z920sxx"))))
    (build-system pyproject-build-system)
    (home-page "https://github.com/bdauvergne/python-oath")
    (synopsis
     "Python implementation of the three main OATH specifications: HOTP, TOTP and OCRA")
    (description
     "Python implementation of the three main OATH specifications: HOTP, TOTP and OCRA")
    (license license:bsd-3)))

(define-public python-pyinstaller
  (package
    (name "python-pyinstaller")
    (version "6.1.0")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "pyinstaller" version))
       (sha256
	(base32 "1vrqr23n6amgsd0p629bmf2x3nk5lsymhhkd98yvyi1k1z34jgcg"))))
    (build-system pyproject-build-system)
    (propagated-inputs (list python-altgraph
                             python-importlib-metadata
                             ;;python-macholib
                             python-packaging
                             python-pefile
                             ;;python-pyinstaller-hooks-contrib
                             ;;python-pywin32-ctypes
                             python-setuptools))
    (native-inputs (list zlib python-execnet python-psutil python-pytest))
    (home-page "https://www.pyinstaller.org/")
    (synopsis
     "PyInstaller bundles a Python application and all its dependencies into a single package.")
    (description
     "@code{PyInstaller} bundles a Python application and all its dependencies into a
single package.")
    (license license:gpl2)))

(define-public python-bincopy
  (package
    (name "python-bincopy")
    (version "19.1.0")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "bincopy" version))
       (sha256
	(base32 "0mnj2zyl132lz3vccpf6y3qpxhk67lhr4gz7sk7v91j462nn8db8"))))
    (build-system pyproject-build-system)
    (propagated-inputs (list python-argparse-addons python-humanfriendly
                             python-pyelftools))
    (home-page "https://github.com/eerimoq/bincopy")
    (synopsis
     "Mangling of various file formats that conveys binary information (Motorola S-Record, Intel HEX and binary files).")
    (description
     "Mangling of various file formats that conveys binary information (Motorola
S-Record, Intel HEX and binary files).")
    (license license:expat)))

(define-public python-click-command-tree
  (package
    (name "python-click-command-tree")
    (version "1.1.1")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "click-command-tree" version))
       (sha256
	(base32 "184r8q0n1aly45yp67m1zj2hlzzzw6kh56wl57yz5pvlc4w9rfpi"))))
    (build-system pyproject-build-system)
    (propagated-inputs (list python-click))
    (home-page "https://github.com/whwright/click-command-tree")
    (synopsis "click plugin to show the command tree of your CLI")
    (description "click plugin to show the command tree of your CLI")
    (license license:expat)))

(define-public python-click-option-group
  (package
    (name "python-click-option-group")
    (version "0.5.6")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "click-option-group" version))
       (sha256
	(base32 "0xz73kgavgq8zxrfmlb2fly9l1i55ds4752h718cq61mhw1ngl4p"))))
    (build-system pyproject-build-system)
    (propagated-inputs (list python-click))
    (native-inputs (list python-coverage python-coveralls python-pytest
			 python-pytest-cov))
    (home-page "https://github.com/click-contrib/click-option-group")
    (synopsis "Option groups missing in Click")
    (description "Option groups missing in Click")
    (license license:expat)))

(define-public python-hexdump
  (package
    (name "python-hexdump")
    (version "3.3")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "hexdump" version ".zip"))
       (sha256
	(base32 "1nr0dy3m8grdmd2hp3ym6x8vv9yki8zfgbba6vwy7b0n1hxs90fp"))))
    (build-system pyproject-build-system)
    (native-inputs (list zip))
    (home-page "https://bitbucket.org/techtonik/hexdump/")
    (synopsis "dump binary data to hex format and restore from there")
    (description "dump binary data to hex format and restore from there")
    (license license:expat)))

(define-public python-pyinstaller-versionfile
  (package
    (name "python-pyinstaller-versionfile")
    (version "2.1.1")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "pyinstaller_versionfile" version))
       (sha256
	(base32 "15v95a38rqjlambhc6y1j9iq5zknbldrawziib7wfj1c5sfwmhqr"))))
    (build-system pyproject-build-system)
    (propagated-inputs (list python-jinja2 python-packaging
                             python-pyyaml))
    (home-page "https://github.com/DudeNr33/pyinstaller-versionfile")
    (synopsis "Create a version file from a simple YAML config file")
    (description "Create a version file from a simple YAML config file")
    (license license:expat)))

(define-public python-oscrypto
  (package
    (name "python-oscrypto")
    (version "1.3.0")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "oscrypto" version))
       (sha256
	(base32 "1927dmhfqq6g3ycyfl9khmifdmwaxmmabk5p3lr0hdsvrdcyypvg"))))
    (build-system pyproject-build-system)
    (arguments (list #:tests? #f))
    (propagated-inputs (list python-asn1crypto))
    (home-page "https://github.com/wbond/oscrypto")
    (synopsis
     "TLS (SSL) sockets, key generation, encryption, decryption, signing, verification and KDFs using the OS crypto libraries. Does not require a compiler, and relies on the OS for patching. Works on Windows, OS X and Linux/BSD.")
    (description
     "TLS (SSL) sockets, key generation, encryption, decryption, signing, verification
and KDFs using the OS crypto libraries.  Does not require a compiler, and relies
on the OS for patching.  Works on Windows, OS X and Linux/BSD.")
    (license license:expat)))

(define-public python-sly
  (package
    (name "python-sly")
    (version "1.5")
    (source (origin
              (method url-fetch)
              (uri (string-append
		    "https://github.com/dabeaz/sly/archive/tags/"
		    version ".tar.gz"))
	      (sha256
	       (base32 "183xngwc34hkbsla9agiv7f8mf44773d76q39n95ifmbnxppisgy"))))
    (build-system pyproject-build-system)
    (arguments (list #:tests? #f))
    (propagated-inputs (list python-ruamel.yaml))
    (home-page "https://github.com/dabeaz/sly")
    (synopsis "\"SLY - Sly Lex Yacc\"")
    (description "\"SLY - Sly Lex Yacc\"")
    (license license:expat)))

(define-public python-ruamel.yaml.clib-0.2.7
  (package
    (inherit python-ruamel.yaml.clib)
    (version "0.2.7")
    (source
     (origin
       ;; pypi release code has cythonized code without corresponding source.
       (method hg-fetch)
       (uri (hg-reference
             (url "http://hg.code.sf.net/p/ruamel-yaml-clib/code")
             (changeset version)))
       (file-name (string-append "python-ruamel.yaml.clib-" version "-checkout"))
       (sha256
        (base32
         "119vvz2f6m5i0443r82j2r4hqqlmryffp25spv2cqky2cwjp5lj0"))
       (modules '((guix build utils)))
       (snippet
        '(begin
           (delete-file "_ruamel_yaml.c")))))))

(define-public python-ruamel.yaml-0.17
  (package
    (inherit python-ruamel.yaml)
    (version "0.17.40")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "ruamel.yaml" version))
       (sha256
	(base32
	 "0g9irxrlim93z9ccgjyx4bfhbkdlqin0hzmhnn1d8rb7y23bj930"))))
    (propagated-inputs
     (list python-ruamel.yaml.clib-0.2.7))))

(define-public python-lark
  (package
    (name "python-lark")
    (version "1.1.9")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "lark" version))
       (sha256
        (base32 "1fhg4hvdhsjbwd41ipacmzf7adc2dlnjvqm0mg2c490894v55yhm"))))
    (build-system pyproject-build-system)
    (arguments '(#:tests? #f))
    (home-page "https://github.com/lark-parser/lark")
    (synopsis "a modern parsing library")
    (description "a modern parsing library")
    (license license:expat)))

(define-public rust-rxml-0.10
  (package
    (name "rust-rxml")
    (version "0.10.0")
    (source
     (origin
       (method url-fetch)
       (uri (crate-uri "rxml" version))
       (file-name (string-append name "-" version ".tar.gz"))
       (sha256
        (base32 "1r7i3fwxd5262j995nc7m1j4kbw5d43022g5x2gsn72yn0jl3hiw"))))
    (build-system cargo-build-system)
    (arguments
     `(#:cargo-inputs (("rust-bytes" ,rust-bytes-1)
                       ("rust-futures-core" ,rust-futures-core-0.3)
                       ("rust-pin-project-lite" ,rust-pin-project-lite-0.2)
                       ("rust-rxml-proc" ,rust-rxml-proc-0.10)
                       ("rust-rxml-validation" ,rust-rxml-validation-0.10)
                       ("rust-smartstring" ,rust-smartstring-1)
                       ("rust-tokio" ,rust-tokio-1)
                       ("rust-weak-table" ,rust-weak-table-0.3))
       #:cargo-development-inputs (("rust-criterion" ,rust-criterion-0.5)
                                   ("rust-tokio" ,rust-tokio-1)
                                   ("rust-tokio-test" ,rust-tokio-test-0.4))))
    (home-page "https://codeberg.org/jssfr/rxml")
    (synopsis
     "Minimalistic, restricted XML 1.0 parser which does not include dangerous XML features")
    (description
     "This package provides Minimalistic, restricted XML 1.0 parser which does not include dangerous XML
features.")
    (license license:expat)))

(define-public rust-minidom-0.15
  (package
    (name "rust-minidom")
    (version "0.15.2")
    (source
     (origin
       (method url-fetch)
       (uri (crate-uri "minidom" version))
       (file-name (string-append name "-" version ".tar.gz"))
       (sha256
        (base32 "0y32595a7f055890jgmhf5cm49q21jk152bnl5vipkiqaw3i8mpl"))))
    (build-system cargo-build-system)
    (arguments
     `(#:cargo-inputs (("rust-rxml" ,rust-rxml-0.10))))
    (home-page "https://gitlab.com/xmpp-rs/xmpp-rs")
    (synopsis
     "small, simple DOM implementation on top of rxml, targeting the subset of XML useful for XMPP")
    (description
     "This package provides a small, simple DOM implementation on top of rxml,
targeting the subset of XML useful for XMPP.")
    (license license:mpl2.0)))

(define-public python-cmsis-pack-manager
  (package
    (name "python-cmsis-pack-manager")
    (version "032a73a93e108e1b0e268ea47d92dbe573002846")
    (source (origin
	      (method git-fetch)
	      (uri (git-reference
		    (url "https://github.com/pyocd/cmsis-pack-manager.git")
		    (commit version)))
	      (sha256
	       (base32
		"09xhcfq18q56m268zxvkqdaf9df7hrric5xxa6zyqqkf4020pjfl"))))
    (build-system cargo-build-system)
    (arguments
     (list
      #:imported-modules `(,@%cargo-build-system-modules
                           ,@%pyproject-build-system-modules)
      #:modules '((guix build cargo-build-system)
                  ((guix build pyproject-build-system) #:prefix py:)
                  (guix build utils))
      #:phases
      #~(modify-phases %standard-phases
          (add-after 'prepare-python-module 'build-python-module
            (assoc-ref py:%standard-phases 'build))
          (add-after 'build-python-module 'install-python-module
            (assoc-ref py:%standard-phases 'install)))
      #:cargo-inputs
      `(("rust-anyhow" ,rust-anyhow-1)
	("rust-ctor" ,rust-ctor-0.2)
	("rust-simplelog" ,rust-simplelog-0.12)
	("rust-futures" ,rust-futures-0.3)
	("rust-minidom" ,rust-minidom-0.15)
	;;  ("rust-beef" ,rust-beef-0.5)
	;;  ("rust-bytecount" ,rust-bytecount-0.6)
	;;  ("rust-chrono" ,rust-chrono-0.4)
	;;  ("rust-compact-str" ,rust-compact-str-0.7)
	;;  ("rust-encoding-rs" ,rust-encoding-rs-0.8)
	;;  ("rust-itoa" ,rust-itoa-1)
	;;  ("rust-itoap" ,rust-itoap-1)
	;;  ("rust-once-cell" ,rust-once-cell-1)
	;;  ("rust-pyo3-ffi" ,rust-pyo3-ffi-0.19)
	;;  ("rust-ryu" ,rust-ryu-1)
	;;  ("rust-serde" ,rust-serde-1)
	;;  ("rust-serde-json" ,rust-serde-json-1)
	;;  ("rust-simdutf8" ,rust-simdutf8-0.1)
	;;  ("rust-smallvec" ,rust-smallvec-1)
	;;  ("rust-cc" ,rust-cc-1)
	;;  ("rust-pyo3-build-config" ,rust-pyo3-build-config-0.19)
	;;  ("rust-version-check" ,rust-version-check-0.9)
	)
      #:install-source? #false))
    (propagated-inputs (list python-appdirs python-cffi python-pyyaml))
    (native-inputs (list maturin
			 python-hypothesis
			 python-jinja2
			 python-pytest))
    (home-page "https://github.com/pyocd/cmsis-pack-manager")
    (synopsis
     "Python manager for CMSIS-Pack index and cache with fast Rust backend")
    (description
     "Python manager for CMSIS-Pack index and cache with fast Rust backend")
    (license license:asl2.0)))

(define-public python-pyocd
  (package
    (name "python-pyocd")
    (version "0.36.0")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "pyocd" version))
       (sha256
	(base32 "0j464acdr6dbmidg518b1zw88jnriiw6yz7va16hbzysr6n84xwk"))))
    (build-system pyproject-build-system)
    (propagated-inputs (list python-capstone
                             python-cmsis-pack-manager
                             python-colorama
                             python-hidapi
                             python-importlib-metadata
                             python-importlib-resources
                             python-intelhex
                             python-intervaltree
                             python-lark
                             python-natsort
                             python-prettytable
                             python-pyelftools
                             ;;python-pylink-square
                             python-pyusb
                             python-pyyaml
                             python-six
                             python-typing-extensions))
    (native-inputs (list libusb
			 python-coverage
			 python-flake8
			 python-pylint
			 python-pytest
			 python-pytest-cov
			 python-tox))
    (home-page "https://github.com/pyocd/pyOCD")
    (synopsis "Cortex-M debugger for Python")
    (description "Cortex-M debugger for Python")
    (license license:asl2.0)))

(define-public python-spsdk
  (package
    (name "python-spsdk")
    (version "2.1.1")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "spsdk" version))
       (sha256
	(base32 "088gs4n1fm1izpsz4rp363l0c6iq0v1685amb8ljjds9sxqc6l92"))))
    (build-system pyproject-build-system)
    (arguments
     '(#:tests? #f
       #:phases
       (modify-phases %standard-phases
	 (add-after 'unpack 'remove-proprietary-dependencies
	   (lambda _
	     (substitute* "requirements.txt"
	       (("^pypemicro.*$") "")))))))
    (propagated-inputs (list python-asn1crypto
                             python-astunparse
                             python-bincopy
                             python-bitstring
                             python-click
                             python-click-command-tree
                             python-click-option-group
                             python-colorama
                             python-commentjson
                             python-crcmod
                             python-cryptography
                             python-deepmerge
                             python-fastjsonschema
                             ;;python-hexdump
                             python-jinja2
                             ;;python-libusbsio
                             python-oscrypto
                             ;;python-pylink-square
                             python-pyocd
                             ;;python-pyocd-pemicro
                             python-pyserial
                             python-requests
                             python-ruamel.yaml-0.17
                             python-sly
                             python-typing-extensions))
    (home-page "https://github.com/NXPmicro/spsdk")
    (synopsis "Open Source Secure Provisioning SDK for NXP MCU/MPU")
    (description "Open Source Secure Provisioning SDK for NXP MCU/MPU")
    (license license:expat)))

(define-public python-tlv8
  (package
    (name "python-tlv8")
    (version "0.10.0")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "tlv8" version))
       (sha256
	(base32 "11164vjaw38f0l4blbpsj58yr68vx1za5hia4x99k03v4s8aac3r"))))
    (build-system pyproject-build-system)
    (home-page "https://github.com/jlusiardi/tlv8_python")
    (synopsis
     "Python module to handle type-length-value (TLV) encoded data 8-bit type, 8-bit length, and N-byte value as described within the Apple HomeKit Accessory Protocol Specification Non-Commercial Version Release R2.")
    (description
     "Python module to handle type-length-value (TLV) encoded data 8-bit type, 8-bit
length, and N-byte value as described within the Apple @code{HomeKit} Accessory
Protocol Specification Non-Commercial Version Release R2.")
    (license license:asl2.0)))

(define-public python-types-tqdm
  (package
    (name "python-types-tqdm")
    (version "4.66.0.2")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "types-tqdm" version))
       (sha256
	(base32 "0pylandfajknxprd2y06hxzfihy0cnyvh1gm3775yj0x9kjaalwm"))))
    (build-system pyproject-build-system)
    (home-page "https://github.com/python/typeshed")
    (synopsis "Typing stubs for tqdm")
    (description "Typing stubs for tqdm")
    (license license:asl2.0)))

(define-public python-drawsvg
  (package
    (name "python-drawsvg")
    (version "2.3.0")
    (source
     (origin
       (method url-fetch)
       (uri (string-append
             "https://github.com/cduck/drawsvg/archive/tags/"
             version
             ".tar.gz"))
       (sha256
        (base32
         "07z5rfbgr4pfmbn65bhhn5km35r244p9rpkmgx1cy575pqpcryay"))))
    (build-system pyproject-build-system)
    (arguments (list #:tests? #f))
    (native-inputs (list cairo python-ipywidgets))
    (home-page "https://github.com/cduck/drawsvg")
    (synopsis
     "Programmatically generate SVG (vector) images, animations, and interactive Jupyter widgets")
    (description
     "A Python 3 library for programmatically generating SVG images and animations that can render and display your drawings in a Jupyter notebook or Jupyter lab.

Most common SVG tags are supported and others can easily be added by writing a small subclass of DrawableBasicElement or DrawableParentElement. Nearly all SVG attributes are supported via keyword args (e.g. Python keyword argument fill_opacity=0.5 becomes SVG attribute fill-opacity=\"0.5\").

An interactive Jupyter notebook widget, drawsvg.widgets.DrawingWidget, is included that can update drawings based on mouse events. The widget does not yet work in Jupyter lab.")
    (license license:asl2.0)))

(define-public python-pynitrokey
  (package
    (name "python-pynitrokey")
    (version "0.4.44")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "pynitrokey" version))
       (sha256
	(base32 "0mlw7fb9imbfxcggavn9jkmidryc4i6kl8s6z1d0bw04824z2qj9"))))
    (build-system pyproject-build-system)
    (native-inputs (list libnitrokey))
    (propagated-inputs (list python-black
                             python-certifi
                             python-cffi
                             python-click
                             ;;python-click-aliases
                             python-cryptography
                             python-ecdsa
                             python-fido2
                             python-flake8
                             python-flit
                             python-frozendict
                             python-intelhex
                             python-ipython
                             python-isort
                             python-mypy
                             python-nkdfu
                             python-oath
                             python-protobuf
                             ;;python-pyinstaller
                             ;;python-pyinstaller-versionfile
                             python-pyscard
                             python-pyserial
                             python-pytest
                             ;;python-pytest-reporter-html1
                             python-dateutil
                             python-pyusb
                             python-requests
                             python-semver
                             python-spsdk
                             python-tlv8
                             python-tqdm
                             python-types-requests
                             python-types-tqdm
                             python-typing-extensions
                             python-urllib3))
    (home-page "https://docs.nitrokey.com/software/nitropy/")
    (synopsis "Python Library for Nitrokey devices.")
    (description "Python Library for Nitrokey devices.")
    (license license:asl2.0)))

python-pynitrokey

                 reply	other threads:[~2024-09-24  9:11 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87tte5zabo.fsf@housseini.me \
    --to=reza.housseini@gmail.com \
    --cc=help-guix@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).