summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--python-ledgerblue.spec249
-rw-r--r--sources1
3 files changed, 251 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..99a9da2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/ledgerblue-0.1.47.tar.gz
diff --git a/python-ledgerblue.spec b/python-ledgerblue.spec
new file mode 100644
index 0000000..e8f533f
--- /dev/null
+++ b/python-ledgerblue.spec
@@ -0,0 +1,249 @@
+%global _empty_manifest_terminate_build 0
+Name: python-ledgerblue
+Version: 0.1.47
+Release: 1
+Summary: Python library to communicate with Ledger Blue/Nano S
+License: Apache Software License
+URL: https://github.com/LedgerHQ/blue-loader-python
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/b2/f9/90c59225d803016111e0cbaac283a74778021725bb4c3d425d776c6b2eec/ledgerblue-0.1.47.tar.gz
+BuildArch: noarch
+
+
+%description
+# Python tools for Ledger Blue, Nano S and Nano X
+
+This package contains Python tools to communicate with Ledger Blue, Nano S and Nano X and manage applications life cycle.
+
+It is recommended to install this package in a [Virtual Environment](http://docs.python-guide.org/en/latest/dev/virtualenvs/) in your native environment (not a Docker image) to avoid hidapi issues.
+
+```
+virtualenv ledger
+source ledger/bin/activate
+pip install ledgerblue
+```
+
+## Supported devices
+
+At the moment these tools work for all Nano S and Blue devices, but only for special Nano X developer units which are not available to the general public.
+
+Please check [Ledger Developer Portal](https://developers.ledger.com/docs/nano-app/introduction/) to see how to debug your application on a Nano X simulator using [Speculos](https://github.com/LedgerHQ/speculos)
+
+## Installation pre-requisites
+
+
+ * libudev-dev
+ * libusb-1.0-0-dev
+ * python-dev (python 2.7)
+ * virtualenv
+
+This package can optionally work with [libsecp256k1](https://github.com/ludbb/secp256k1-py) Python bindings compiled with ECDH support. If you wish to enable libsecp256k1 bindings, make sure to install libsecp256k1 as follows:
+
+```
+SECP_BUNDLED_EXPERIMENTAL=1 pip --no-cache-dir install --no-binary secp256k1 secp256k1
+```
+
+To install the custom secp256k1 package on MacOS, you previously need to run:
+```
+brew install libtool
+```
+Which would end up installing glibtool and glibtoolize utilities required for the build process.
+
+## Giving permissions on udev
+
+When running on Linux, make sure the following rules have been added to `/etc/udev/rules.d/`:
+
+```
+SUBSYSTEMS=="usb", ATTRS{idVendor}=="2c97", ATTRS{idProduct}=="0000", MODE="0660", TAG+="uaccess", TAG+="udev-acl" OWNER="<UNIX username>"
+SUBSYSTEMS=="usb", ATTRS{idVendor}=="2c97", ATTRS{idProduct}=="0001", MODE="0660", TAG+="uaccess", TAG+="udev-acl" OWNER="<UNIX username>"
+SUBSYSTEMS=="usb", ATTRS{idVendor}=="2c97", ATTRS{idProduct}=="0004", MODE="0660", TAG+="uaccess", TAG+="udev-acl" OWNER="<UNIX username>"
+```
+
+## Target ID
+
+Use the following Target IDs (--targetId option) when running commands directly:
+
+ * 0x31100002 on Nano S with firmware <= 1.3.1
+ * 0x31100003 on Nano S with firmware 1.4.x
+ * 0x31100004 on Nano S with firmware 1.5.x
+ * 0x31000002 on Blue with firmware <= 2.0
+ * 0x31000004 on Blue with firmware 2.1.x
+ * 0x31010004 on Blue v2 with firmware 2.1.x
+ * 0x33000004 on Nano X with firmware 1.x (**developer units only**)
+
+
+%package -n python3-ledgerblue
+Summary: Python library to communicate with Ledger Blue/Nano S
+Provides: python-ledgerblue
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-ledgerblue
+# Python tools for Ledger Blue, Nano S and Nano X
+
+This package contains Python tools to communicate with Ledger Blue, Nano S and Nano X and manage applications life cycle.
+
+It is recommended to install this package in a [Virtual Environment](http://docs.python-guide.org/en/latest/dev/virtualenvs/) in your native environment (not a Docker image) to avoid hidapi issues.
+
+```
+virtualenv ledger
+source ledger/bin/activate
+pip install ledgerblue
+```
+
+## Supported devices
+
+At the moment these tools work for all Nano S and Blue devices, but only for special Nano X developer units which are not available to the general public.
+
+Please check [Ledger Developer Portal](https://developers.ledger.com/docs/nano-app/introduction/) to see how to debug your application on a Nano X simulator using [Speculos](https://github.com/LedgerHQ/speculos)
+
+## Installation pre-requisites
+
+
+ * libudev-dev
+ * libusb-1.0-0-dev
+ * python-dev (python 2.7)
+ * virtualenv
+
+This package can optionally work with [libsecp256k1](https://github.com/ludbb/secp256k1-py) Python bindings compiled with ECDH support. If you wish to enable libsecp256k1 bindings, make sure to install libsecp256k1 as follows:
+
+```
+SECP_BUNDLED_EXPERIMENTAL=1 pip --no-cache-dir install --no-binary secp256k1 secp256k1
+```
+
+To install the custom secp256k1 package on MacOS, you previously need to run:
+```
+brew install libtool
+```
+Which would end up installing glibtool and glibtoolize utilities required for the build process.
+
+## Giving permissions on udev
+
+When running on Linux, make sure the following rules have been added to `/etc/udev/rules.d/`:
+
+```
+SUBSYSTEMS=="usb", ATTRS{idVendor}=="2c97", ATTRS{idProduct}=="0000", MODE="0660", TAG+="uaccess", TAG+="udev-acl" OWNER="<UNIX username>"
+SUBSYSTEMS=="usb", ATTRS{idVendor}=="2c97", ATTRS{idProduct}=="0001", MODE="0660", TAG+="uaccess", TAG+="udev-acl" OWNER="<UNIX username>"
+SUBSYSTEMS=="usb", ATTRS{idVendor}=="2c97", ATTRS{idProduct}=="0004", MODE="0660", TAG+="uaccess", TAG+="udev-acl" OWNER="<UNIX username>"
+```
+
+## Target ID
+
+Use the following Target IDs (--targetId option) when running commands directly:
+
+ * 0x31100002 on Nano S with firmware <= 1.3.1
+ * 0x31100003 on Nano S with firmware 1.4.x
+ * 0x31100004 on Nano S with firmware 1.5.x
+ * 0x31000002 on Blue with firmware <= 2.0
+ * 0x31000004 on Blue with firmware 2.1.x
+ * 0x31010004 on Blue v2 with firmware 2.1.x
+ * 0x33000004 on Nano X with firmware 1.x (**developer units only**)
+
+
+%package help
+Summary: Development documents and examples for ledgerblue
+Provides: python3-ledgerblue-doc
+%description help
+# Python tools for Ledger Blue, Nano S and Nano X
+
+This package contains Python tools to communicate with Ledger Blue, Nano S and Nano X and manage applications life cycle.
+
+It is recommended to install this package in a [Virtual Environment](http://docs.python-guide.org/en/latest/dev/virtualenvs/) in your native environment (not a Docker image) to avoid hidapi issues.
+
+```
+virtualenv ledger
+source ledger/bin/activate
+pip install ledgerblue
+```
+
+## Supported devices
+
+At the moment these tools work for all Nano S and Blue devices, but only for special Nano X developer units which are not available to the general public.
+
+Please check [Ledger Developer Portal](https://developers.ledger.com/docs/nano-app/introduction/) to see how to debug your application on a Nano X simulator using [Speculos](https://github.com/LedgerHQ/speculos)
+
+## Installation pre-requisites
+
+
+ * libudev-dev
+ * libusb-1.0-0-dev
+ * python-dev (python 2.7)
+ * virtualenv
+
+This package can optionally work with [libsecp256k1](https://github.com/ludbb/secp256k1-py) Python bindings compiled with ECDH support. If you wish to enable libsecp256k1 bindings, make sure to install libsecp256k1 as follows:
+
+```
+SECP_BUNDLED_EXPERIMENTAL=1 pip --no-cache-dir install --no-binary secp256k1 secp256k1
+```
+
+To install the custom secp256k1 package on MacOS, you previously need to run:
+```
+brew install libtool
+```
+Which would end up installing glibtool and glibtoolize utilities required for the build process.
+
+## Giving permissions on udev
+
+When running on Linux, make sure the following rules have been added to `/etc/udev/rules.d/`:
+
+```
+SUBSYSTEMS=="usb", ATTRS{idVendor}=="2c97", ATTRS{idProduct}=="0000", MODE="0660", TAG+="uaccess", TAG+="udev-acl" OWNER="<UNIX username>"
+SUBSYSTEMS=="usb", ATTRS{idVendor}=="2c97", ATTRS{idProduct}=="0001", MODE="0660", TAG+="uaccess", TAG+="udev-acl" OWNER="<UNIX username>"
+SUBSYSTEMS=="usb", ATTRS{idVendor}=="2c97", ATTRS{idProduct}=="0004", MODE="0660", TAG+="uaccess", TAG+="udev-acl" OWNER="<UNIX username>"
+```
+
+## Target ID
+
+Use the following Target IDs (--targetId option) when running commands directly:
+
+ * 0x31100002 on Nano S with firmware <= 1.3.1
+ * 0x31100003 on Nano S with firmware 1.4.x
+ * 0x31100004 on Nano S with firmware 1.5.x
+ * 0x31000002 on Blue with firmware <= 2.0
+ * 0x31000004 on Blue with firmware 2.1.x
+ * 0x31010004 on Blue v2 with firmware 2.1.x
+ * 0x33000004 on Nano X with firmware 1.x (**developer units only**)
+
+
+%prep
+%autosetup -n ledgerblue-0.1.47
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-ledgerblue -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Mon May 15 2023 Python_Bot <Python_Bot@openeuler.org> - 0.1.47-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..1982134
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+40742aae45a89103ecc6f4d77afefab6 ledgerblue-0.1.47.tar.gz