[PATCH 0/2] gnu: Add python-djitellopy.

  • Done
  • quality assurance status badge
Details
2 participants
  • Maxim Cournoyer
  • Sharlatan Hellseher
Owner
unassigned
Submitted by
Sharlatan Hellseher
Severity
normal

Debbugs page

Sharlatan Hellseher wrote 1 years ago
(address . guix-patches@gnu.org)(name . Sharlatan Hellseher)(address . sharlatanus@gmail.com)
cover.1698015372.git.sharlatanus@gmail.com
Hi Guix!

These two patches add DJI Tello dron SDK Python module based on officials:


I did not find appropriate module for such packages and keep them closer to
similar ones in python-xyz. It would be good to have them as packaging/build
process of python-av is a way too complex and it's solved with Guix easily :-)

Sharlatan Hellseher (2):
gnu: Add python-av.
gnu: Add python-djitellopy.

gnu/packages/python-xyz.scm | 139 ++++++++++++++++++++++++++++++++++++
1 file changed, 139 insertions(+)


base-commit: 50f514762bf35b029eb89518c5ab5b3d1bf27f48
--
2.41.0
Sharlatan Hellseher wrote 1 years ago
[PATCH 2/2] gnu: Add python-djitellopy.
(address . 66688@debbugs.gnu.org)(name . Sharlatan Hellseher)(address . sharlatanus@gmail.com)
4b264b1249ff7c4b67c301df8a83f1ab134433b0.1698015372.git.sharlatanus@gmail.com
* gnu/packages/python-xyz.scm (python-djitellopy): New variable.
---
gnu/packages/python-xyz.scm | 40 +++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 1558c74492..ef3ec0ee97 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -29932,6 +29932,46 @@ (define-public python-parallel
applications with variable CPU loads).")
(license license:bsd-3)))
+(define-public python-djitellopy
+ (package
+ (name "python-djitellopy")
+ (version "2.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "djitellopy" version))
+ (sha256
+ (base32 "1kc0syb4hpn7fay0rxpazmczag6jw3pncrrc6v762jj0afiwkrps"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:tests? #f ; No tests provided.
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; XXX: Can't detect opencv-python version. The input opencv might not
+ ;; set the version correctly.
+ (delete 'sanity-check))))
+ ;; opencv provides OpenCV-Python which is Listed as install requirement.
+ (propagated-inputs
+ (list opencv
+ python-av
+ python-numpy
+ python-pillow))
+ (home-page "https://github.com/damiafuentes/DJITelloPy")
+ (synopsis "DJI Tello drone lib with video streaming, swarms and state packets")
+ (description
+ "DJI Tello drone python interface using the official Tello SDK and Tello
+EDU SDK.
+
+This library has the following features:
+@itemize
+@item Implementation of all tello commands
+@item Retrieve a video stream easely
+@item Receive and parse state packets
+@item Control a swarm of drones
+@end itemize")
+ (license license:expat)))
+
(define-public python-djvulibre
(package
(name "python-djvulibre")
--
2.41.0
Sharlatan Hellseher wrote 1 years ago
[PATCH 1/2] gnu: Add python-av.
(address . 66688@debbugs.gnu.org)(name . Sharlatan Hellseher)(address . sharlatanus@gmail.com)
cd5b23a8341b598ef6b770b6e366bbc259e8900c.1698015372.git.sharlatanus@gmail.com
* gnu/packages/python-xyz.scm (python-av): New variable.
---
gnu/packages/python-xyz.scm | 99 +++++++++++++++++++++++++++++++++++++
1 file changed, 99 insertions(+)

Toggle diff (112 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 29ac11df95..1558c74492 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -9059,6 +9059,105 @@ (define-public python-lfdfiles
experimental data and metadata at the Laboratory for Fluorescence Dynamics.")
(license license:bsd-3)))
+(define-public python-av
+ (package
+ (name "python-av")
+ (version "10.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "av" version))
+ (sha256
+ (base32 "01byqsjclkg65mhr6b4i2r2n4y7af9kdd2c35lxny27121b3vzca"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:test-flags
+ #~(list
+ ;; Tests require outbound access to download data samples from
+ ;; http://fate.ffmpeg.org/fate-suite:
+ ;;
+ ;; E urllib.error.URLError: <urlopen error [Errno -3]
+ ;; Temporary failure in name resolution>
+ ;;
+ "--ignore=tests/test_doctests.py"
+ "--ignore=tests/test_timeout.py"
+ "-k"
+ (string-append
+ "not test_data"
+ " and not test_container_probing"
+ " and not test_stream_probing"
+ " and not test_transcode"
+ " and not test_codec_tag"
+ " and not test_parse"
+ " and not test_decode_audio_sample_count"
+ " and not test_decoded_motion_vectors"
+ " and not test_decoded_motion_vectors_no_flag"
+ " and not test_decoded_time_base"
+ " and not test_decoded_video_frame_count"
+ " and not test_encoding_aac"
+ " and not test_encoding_dnxhd"
+ " and not test_encoding_dvvideo"
+ " and not test_encoding_h264"
+ " and not test_encoding_mjpeg"
+ " and not test_encoding_mp2"
+ " and not test_encoding_mpeg1video"
+ " and not test_encoding_mpeg4"
+ " and not test_encoding_pcm_s24le"
+ " and not test_encoding_png"
+ " and not test_encoding_tiff"
+ " and not test_encoding_xvid"
+ " and not test_reading_from_buffer"
+ " and not test_reading_from_buffer_no_seek"
+ " and not test_reading_from_file"
+ " and not test_reading_from_pipe_readonly"
+ " and not test_reading_from_write_readonly"
+ " and not test_writing_to_custom_io_dash"
+ " and not test_writing_to_custom_io_image2"
+ " and not test_decode_half"
+ " and not test_seek_end"
+ " and not test_seek_float"
+ " and not test_seek_int64"
+ " and not test_seek_middle"
+ " and not test_seek_start"
+ " and not test_stream_seek"
+ " and not test_selection"
+ " and not test_stream_tuples"
+ " and not test_movtext"
+ " and not test_vobsub"
+ " and not test_roundtrip"
+ " and not test_stream_probing"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'build-extensions
+ (lambda _
+ (invoke "python" "setup.py" "build_ext" "--inplace"))))))
+ (native-inputs
+ (list pkg-config
+ python-cython
+ python-editorconfig
+ python-numpy
+ python-pillow
+ python-pytest))
+ (inputs
+ ;; XXX: Build is failing with FFmpeg 6.0, unresolved upstream.
+ ;; See https://github.com/PyAV-Org/PyAV/issues/1106
+ (list ffmpeg-5))
+ (home-page "https://github.com/PyAV-Org/PyAV")
+ (synopsis "Pythonic bindings for FFmpeg's libraries")
+ (description
+ "PyAV is a Python library that allows for direct and precise manipulation
+of media through containers, streams, packets, codecs, and frames. It provides
+access to the powerful FFmpeg libraries while managing the complex details as
+much as possible.
+PyAV also facilitates data transformation and integration with
+other packages such as Numpy and Pillow. However, working with media is a
+challenging task and PyAV cannot abstract it away or make all the best decisions
+for you. If you can accomplish your tasks with the ffmpeg command, PyAV may not
+be necessary. Nonetheless, PyAV is an essential tool when working with media
+that requires its specific capabilities.")
+ (license license:bsd-3)))
+
(define-public python-ffmpeg-python
;; The latest release (0.2.0) is old and its test suite crashs on Python 3.10.
(let ((commit "df129c7ba30aaa9ffffb81a48f53aa7253b0b4e6") (revision "0"))
--
2.41.0
Sharlatan Hellseher wrote 1 years ago
(address . 66688@debbugs.gnu.org)
CAO+9K5pkg5b8rduJgBZodTecghVQwe580semMQu3N=Dh66UWUg@mail.gmail.com
Hi Guix,
A gentle ping on this issue, please let me know if I need to adjust or improve
patches.
Thanks,
Oleg
--
… наш разум - превосходная объяснительная машина которая способна
найти смысл почти в чем угодно, истолковать любой феномен, но
совершенно не в состоянии принять мысль о непредсказуемости.
Maxim Cournoyer wrote 1 years ago
(name . Sharlatan Hellseher)(address . sharlatanus@gmail.com)
87jzop4yrb.fsf@gmail.com
Hi!

Sharlatan Hellseher <sharlatanus@gmail.com> writes:

Toggle quote (57 lines)
> * gnu/packages/python-xyz.scm (python-djitellopy): New variable.
> ---
> gnu/packages/python-xyz.scm | 40 +++++++++++++++++++++++++++++++++++++
> 1 file changed, 40 insertions(+)
>
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
> index 1558c74492..ef3ec0ee97 100644
> --- a/gnu/packages/python-xyz.scm
> +++ b/gnu/packages/python-xyz.scm
> @@ -29932,6 +29932,46 @@ (define-public python-parallel
> applications with variable CPU loads).")
> (license license:bsd-3)))
>
> +(define-public python-djitellopy
> + (package
> + (name "python-djitellopy")
> + (version "2.5.0")
> + (source
> + (origin
> + (method url-fetch)
> + (uri (pypi-uri "djitellopy" version))
> + (sha256
> + (base32 "1kc0syb4hpn7fay0rxpazmczag6jw3pncrrc6v762jj0afiwkrps"))))
> + (build-system pyproject-build-system)
> + (arguments
> + (list
> + #:tests? #f ; No tests provided.
> + #:phases
> + #~(modify-phases %standard-phases
> + ;; XXX: Can't detect opencv-python version. The input opencv might not
> + ;; set the version correctly.
> + (delete 'sanity-check))))
> + ;; opencv provides OpenCV-Python which is Listed as install requirement.
> + (propagated-inputs
> + (list opencv
> + python-av
> + python-numpy
> + python-pillow))
> + (home-page "https://github.com/damiafuentes/DJITelloPy")
> + (synopsis "DJI Tello drone lib with video streaming, swarms and state packets")
> + (description
> + "DJI Tello drone python interface using the official Tello SDK and Tello
> +EDU SDK.
> +
> +This library has the following features:
> +@itemize
> +@item Implementation of all tello commands
> +@item Retrieve a video stream easely
> +@item Receive and parse state packets
> +@item Control a swarm of drones
> +@end itemize")
> + (license license:expat)))
> +
> (define-public python-djvulibre
> (package
> (name "python-djvulibre")

I've taken the liberty to do the following edits:

Toggle snippet (48 lines)
modified gnu/packages/python-xyz.scm
@@ -30288,30 +30288,28 @@ (define-public python-djitellopy
(build-system pyproject-build-system)
(arguments
(list
- #:tests? #f ; No tests provided.
+ #:tests? #f ;no test suite
#:phases
#~(modify-phases %standard-phases
- ;; XXX: Can't detect opencv-python version. The input opencv might not
- ;; set the version correctly.
+ ;; OpenCV does not ship metadata files for its Python library, which
+ ;; makes it invisible to the sanity_check script (see:
+ ;; https://github.com/opencv/opencv/issues/24810).
(delete 'sanity-check))))
- ;; opencv provides OpenCV-Python which is Listed as install requirement.
(propagated-inputs
- (list opencv
+ (list opencv ;for opencv-python
python-av
python-numpy
python-pillow))
(home-page "https://github.com/damiafuentes/DJITelloPy")
- (synopsis "DJI Tello drone lib with video streaming, swarms and state packets")
+ (synopsis "DJI Tello drone library with video streaming, swarms and state packets")
(description
"DJI Tello drone python interface using the official Tello SDK and Tello
-EDU SDK.
-
-This library has the following features:
+EDU SDK. This library has the following features:
@itemize
@item Implementation of all tello commands
-@item Retrieve a video stream easely
+@item Retrieve a video stream easily
@item Receive and parse state packets
-@item Control a swarm of drones
+@item Control a swarm of drones.
@end itemize")
(license license:expat)))
--8<---------------cut here---------------end--------------->8---

I'll push it shortly.

--
Thanks,
Maxim
Sharlatan Hellseher wrote 1 years ago
[PATCH 0/2] gnu: Add python-djitellopy.
(address . 66688-done@debbugs.gnu.org)
877ck2oc59.fsf@gmail.com
Pushed as 2ef73c6bf5a6885153f2ab0594961878ee0dbf04
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEmEeB3micIcJkGAhndtcnv/Ys0rUFAmWtTYIACgkQdtcnv/Ys
0rWTYw/+JKT0JqLqEReE3CDtbwgn3rzsunBGASTO8gwbIHzT3GHTCeONIxFh5sLW
ayyVjvi7zoopWc5lk+WgTTPV8cbwXx/I4LH38lf+NNBCHKu3tL1G2d8wrtZnKSqd
pCCl4En1lvmO9AOi6IdxYvuMbn9tAm5Bq++x1YfmAs7MKFZ+Np2WmFR3SnR8FYDZ
8AUY4GKl66H/Jh1VFwS8UJHHw48MWySelaNFeJudOfvgYlmfSzz/z+vj1Ij89028
yqj7WkcRi4w+PQRH2zN+LF8kQka8x/S2k6zwUwnLkGIqVIq3RUw2E0OkZ6dpLwDb
qmT9wPskMWSz+MCbj5uf52ByOD9Kp8dkEiJXh8EF97GHq1UudGFOcAG4YrRR4CBU
BysrmEV7oR3/UKAe/lK4uCosCCeKN9F07KbxqpSyN/sTIouNaFfxk3WeKlNuVSz0
plm0g02wC9+NteQQtww7gZfTsiWiL1LyGQhW8JYqydn6JY1o/sIAe+clXiyog1Yp
4IjUayrjiDmsciPLeDH/8HzEL5tsZtHGnfDWNJqPgpk8vk3E6G2x/kfD9EnV/Jub
5tHDhyJsx5TS7xKO6LGl7Jyt5bUl1+62rDfrrtcJsSrFGqvPUcZL/X4fJVSSLdJp
k4M8u+vQDEW9kmto9BEJ/tjJQNd0l8KTTErBGpuhISi7eVSRtxU=
=Kx5y
-----END PGP SIGNATURE-----

Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 66688@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 66688
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help