all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#66688] [PATCH 0/2] gnu: Add python-djitellopy.
@ 2023-10-22 23:02 Sharlatan Hellseher
  2023-10-22 23:04 ` [bug#66688] [PATCH 1/2] gnu: Add python-av Sharlatan Hellseher
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Sharlatan Hellseher @ 2023-10-22 23:02 UTC (permalink / raw)
  To: 66688
  Cc: Sharlatan Hellseher, Lars-Dominik Braun, Marius Bakke,
	Munyoki Kilyungi, jgart

Hi Guix!

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

- Tello SDK https://dl-cdn.ryzerobotics.com/downloads/tello/20180910/Tello%20SDK%20Documentation%20EN_1.3.pdf
- Tello EDU SDK https://dl-cdn.ryzerobotics.com/downloads/Tello/Tello%20SDK%202.0%20User%20Guide.pdf

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





^ permalink raw reply	[flat|nested] 6+ messages in thread

* [bug#66688] [PATCH 1/2] gnu: Add python-av.
  2023-10-22 23:02 [bug#66688] [PATCH 0/2] gnu: Add python-djitellopy Sharlatan Hellseher
@ 2023-10-22 23:04 ` Sharlatan Hellseher
  2023-10-22 23:04 ` [bug#66688] [PATCH 2/2] gnu: Add python-djitellopy Sharlatan Hellseher
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 6+ messages in thread
From: Sharlatan Hellseher @ 2023-10-22 23:04 UTC (permalink / raw)
  To: 66688
  Cc: Sharlatan Hellseher, Lars-Dominik Braun, Marius Bakke,
	Munyoki Kilyungi, jgart

* gnu/packages/python-xyz.scm (python-av): New variable.
---
 gnu/packages/python-xyz.scm | 99 +++++++++++++++++++++++++++++++++++++
 1 file changed, 99 insertions(+)

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





^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [bug#66688] [PATCH 2/2] gnu: Add python-djitellopy.
  2023-10-22 23:02 [bug#66688] [PATCH 0/2] gnu: Add python-djitellopy Sharlatan Hellseher
  2023-10-22 23:04 ` [bug#66688] [PATCH 1/2] gnu: Add python-av Sharlatan Hellseher
@ 2023-10-22 23:04 ` Sharlatan Hellseher
  2024-01-04  2:29   ` Maxim Cournoyer
  2023-12-21 13:27 ` [bug#66688] Sharlatan Hellseher
  2024-01-21 16:59 ` bug#66688: [PATCH 0/2] gnu: Add python-djitellopy Sharlatan Hellseher
  3 siblings, 1 reply; 6+ messages in thread
From: Sharlatan Hellseher @ 2023-10-22 23:04 UTC (permalink / raw)
  To: 66688
  Cc: Sharlatan Hellseher, Lars-Dominik Braun, Marius Bakke,
	Munyoki Kilyungi, jgart

* 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")
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [bug#66688]
  2023-10-22 23:02 [bug#66688] [PATCH 0/2] gnu: Add python-djitellopy Sharlatan Hellseher
  2023-10-22 23:04 ` [bug#66688] [PATCH 1/2] gnu: Add python-av Sharlatan Hellseher
  2023-10-22 23:04 ` [bug#66688] [PATCH 2/2] gnu: Add python-djitellopy Sharlatan Hellseher
@ 2023-12-21 13:27 ` Sharlatan Hellseher
  2024-01-21 16:59 ` bug#66688: [PATCH 0/2] gnu: Add python-djitellopy Sharlatan Hellseher
  3 siblings, 0 replies; 6+ messages in thread
From: Sharlatan Hellseher @ 2023-12-21 13:27 UTC (permalink / raw)
  To: 66688; +Cc: Maxim Cournoyer, marius

Hi Guix,

A gentle ping on this issue, please let me know if I need to adjust or improve
patches.

Thanks,
Oleg


-- 
… наш разум - превосходная объяснительная машина которая способна
найти смысл почти в чем угодно, истолковать любой феномен, но
совершенно не в состоянии принять мысль о непредсказуемости.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [bug#66688] [PATCH 2/2] gnu: Add python-djitellopy.
  2023-10-22 23:04 ` [bug#66688] [PATCH 2/2] gnu: Add python-djitellopy Sharlatan Hellseher
@ 2024-01-04  2:29   ` Maxim Cournoyer
  0 siblings, 0 replies; 6+ messages in thread
From: Maxim Cournoyer @ 2024-01-04  2:29 UTC (permalink / raw)
  To: Sharlatan Hellseher
  Cc: Munyoki Kilyungi, jgart, Lars-Dominik Braun, 66688, Marius Bakke

Hi!

Sharlatan Hellseher <sharlatanus@gmail.com> writes:

> * 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:

--8<---------------cut here---------------start------------->8---
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




^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#66688: [PATCH 0/2] gnu: Add python-djitellopy.
  2023-10-22 23:02 [bug#66688] [PATCH 0/2] gnu: Add python-djitellopy Sharlatan Hellseher
                   ` (2 preceding siblings ...)
  2023-12-21 13:27 ` [bug#66688] Sharlatan Hellseher
@ 2024-01-21 16:59 ` Sharlatan Hellseher
  3 siblings, 0 replies; 6+ messages in thread
From: Sharlatan Hellseher @ 2024-01-21 16:59 UTC (permalink / raw)
  To: 66688-done

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


Pushed as 2ef73c6bf5a6885153f2ab0594961878ee0dbf04

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-01-21 17:01 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-10-22 23:02 [bug#66688] [PATCH 0/2] gnu: Add python-djitellopy Sharlatan Hellseher
2023-10-22 23:04 ` [bug#66688] [PATCH 1/2] gnu: Add python-av Sharlatan Hellseher
2023-10-22 23:04 ` [bug#66688] [PATCH 2/2] gnu: Add python-djitellopy Sharlatan Hellseher
2024-01-04  2:29   ` Maxim Cournoyer
2023-12-21 13:27 ` [bug#66688] Sharlatan Hellseher
2024-01-21 16:59 ` bug#66688: [PATCH 0/2] gnu: Add python-djitellopy Sharlatan Hellseher

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.