all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#50652] [PATCH] gnu: Add mjpg-streamer.
@ 2021-09-18  8:57 phodina via Guix-patches via
  2021-09-18 10:29 ` [bug#50652] [PATCH v2] " phodina via Guix-patches via
  0 siblings, 1 reply; 5+ messages in thread
From: phodina via Guix-patches via @ 2021-09-18  8:57 UTC (permalink / raw)
  To: 50652

* gnu/packages/video.scm: (mjpg-streamer): New variable.

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 1b9179c6a8..162493051d 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -447,6 +447,37 @@ library.")
     (home-page "http://libquicktime.sourceforge.net/")
     (license license:lgpl2.1+)))

+(define-public mjpg-streamer
+  (package
+    (name "mjpg-streamer")
+    (version "310b29f4a94c46652b20c4b7b6e5cf24e532af39")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/jacksonliam/mjpg-streamer")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0y6xqx4pbdsiis6pqms9b91sba6ah414flrmlhrsmq9058nil755"))))
+    (build-system cmake-build-system)
+    (arguments
+     '(#:tests? #f                      ; no tests
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'chdir
+           (lambda* _
+             (chdir "mjpg-streamer-experimental"))))))
+    (inputs `(("libjpeg-turbo" ,libjpeg-turbo)))
+    (synopsis "Stream JPEG over IP network")
+    (description "Command line application that copies JPEG frames from one or
+more input plugins to multiple output plugins.  It can be used to stream JPEG
+files over an IP-based network from a webcam to various types of viewers such
+as Chrome, Firefox, Cambozola, VLC, mplayer, and other software capable of
+receiving MJPG streams.")
+    (home-page "https://github.com/jacksonliam/mjpg-streamer")
+    (license license:gpl2)))
+
 (define-public mjpegtools
   (package
     (name "mjpegtools")
--
2.32.0




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

* [bug#50652] [PATCH v2] gnu: Add mjpg-streamer.
  2021-09-18  8:57 [bug#50652] [PATCH] gnu: Add mjpg-streamer phodina via Guix-patches via
@ 2021-09-18 10:29 ` phodina via Guix-patches via
  2021-09-30 21:19   ` [bug#50652] [PATCH] " Ludovic Courtès
  0 siblings, 1 reply; 5+ messages in thread
From: phodina via Guix-patches via @ 2021-09-18 10:29 UTC (permalink / raw)
  To: 50652@debbugs.gnu.org

* gnu/packages/video.scm: (mjpg-streamer): New variable.

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 1b9179c6a8..47b09b7ab6 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -53,6 +53,7 @@
 ;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
+;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -447,6 +448,39 @@ library.")
     (home-page "http://libquicktime.sourceforge.net/")
     (license license:lgpl2.1+)))

+(define-public mjpg-streamer
+  (let ((commit "310b29f4a94c46652b20c4b7b6e5cf24e532af39")
+        (revision "1"))
+    (package
+      (name "mjpg-streamer")
+      (version commit)
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/jacksonliam/mjpg-streamer")
+                      (commit version)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "0y6xqx4pbdsiis6pqms9b91sba6ah414flrmlhrsmq9058nil755"))))
+      (build-system cmake-build-system)
+      (arguments
+       '(#:tests? #f                    ; no tests
+         #:phases
+         (modify-phases %standard-phases
+           (add-after 'unpack 'chdir
+             (lambda* _
+               (chdir "mjpg-streamer-experimental"))))))
+      (inputs `(("libjpeg-turbo" ,libjpeg-turbo)))
+      (synopsis "Stream JPEG over IP network")
+      (description "Command line application that copies JPEG frames from one or
+more input plugins to multiple output plugins.  It can be used to stream JPEG
+files over an IP-based network from a webcam to various types of viewers such
+as Chrome, Firefox, Cambozola, VLC, mplayer, and other software capable of
+receiving MJPG streams.")
+      (home-page "https://github.com/jacksonliam/mjpg-streamer")
+      (license license:gpl2))))
+
 (define-public mjpegtools
   (package
     (name "mjpegtools")
--
2.32.0




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

* [bug#50652] [PATCH] gnu: Add mjpg-streamer.
  2021-09-18 10:29 ` [bug#50652] [PATCH v2] " phodina via Guix-patches via
@ 2021-09-30 21:19   ` Ludovic Courtès
  2021-10-02 20:31     ` phodina via Guix-patches via
  0 siblings, 1 reply; 5+ messages in thread
From: Ludovic Courtès @ 2021-09-30 21:19 UTC (permalink / raw)
  To: phodina; +Cc: 50652@debbugs.gnu.org

Hi,

phodina <phodina@protonmail.com> skribis:

> * gnu/packages/video.scm: (mjpg-streamer): New variable.

[...]

> +(define-public mjpg-streamer
> +  (let ((commit "310b29f4a94c46652b20c4b7b6e5cf24e532af39")
> +        (revision "1"))

Normally we only package releases.  If there’s a good reason to pick a
commit instead, please add a comment right above it so we know why.

> +    (package
> +      (name "mjpg-streamer")
> +      (version commit)

Please see
<https://guix.gnu.org/manual/en/html_node/Version-Numbers.html> on how
to construct version numbers for snapshots.

> +      (home-page "https://github.com/jacksonliam/mjpg-streamer")
> +      (license license:gpl2))))

Source headers such as
<https://github.com/jacksonliam/mjpg-streamer/blob/master/mjpg-streamer-experimental/plugins/input_control/dynctrl.c>
explicitly say “or any later version”, so it should be ‘license:gpl2+’.

Unfortunately
<https://github.com/jacksonliam/mjpg-streamer/tree/master/mjpg-streamer-experimental/www>
alone shows a .jar (binary file) and a bunch of “minified” (non-source)
JS files.

Our criterion is that it should be possible to build the package from
source, so we should remove at least all pre-built binary files and,
ideally, pre-built minified JS.  I invite you to give it a try and
report back, whether or not it succeeds.

Thanks,
Ludo’.




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

* [bug#50652] [PATCH] gnu: Add mjpg-streamer.
  2021-09-30 21:19   ` [bug#50652] [PATCH] " Ludovic Courtès
@ 2021-10-02 20:31     ` phodina via Guix-patches via
  2021-10-04 13:48       ` bug#50652: " Ludovic Courtès
  0 siblings, 1 reply; 5+ messages in thread
From: phodina via Guix-patches via @ 2021-10-02 20:31 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 50652@debbugs.gnu.org

Hi Ludo,

thanks for the review. The jar and JQuery files are now removed.
The website is still running and the streaming in web browser
works (ungoogled-chromium, version: 93.0.4577.82-0.3f62dbc).

The rest of the files are should be fine as they are not binaries
 not minifed versions.

--8<---------------cut here---------------start------------->8---

* gnu/packages/video.scm: (mjpg-streamer): New variable.

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index b6acebcecc..95e2f7e84e 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -52,6 +52,7 @@
 ;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
+;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -446,6 +447,51 @@ library.")
     (home-page "http://libquicktime.sourceforge.net/")
     (license license:lgpl2.1+)))

+(define-public mjpg-streamer
+    (package
+      (name "mjpg-streamer")
+      (version "1.0.0")
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/jacksonliam/mjpg-streamer")
+                      (commit (string-append "v" version))))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "0w81pg228154blzbzr590xwhcll9baxyqxl6wxrgqsi9cd7pzq23"))
+                (modules '((guix build utils)))
+                (snippet '(begin
+                   (with-directory-excursion "mjpg-streamer-experimental/www"
+                     (for-each delete-file-recursively
+                             '("cambozola.jar"
+                               "JQuerySpinBtn.css"
+                               "JQuerySpinBtn.js"
+                               "jquery.js"
+                               "jquery.rotate.js"
+                               "jquery.ui.core.min.js"
+                               "jquery.ui.custom.css"
+                               "jquery.ui.tabs.min.js"
+                               "jquery.ui.widget.min.js"))
+                   #t)))))
+      (build-system cmake-build-system)
+      (arguments
+       '(#:tests? #f                    ; no test suite
+         #:phases
+         (modify-phases %standard-phases
+           (add-after 'unpack 'chdir
+             (lambda* _
+               (chdir "mjpg-streamer-experimental"))))))
+      (inputs `(("libjpeg-turbo" ,libjpeg-turbo)))
+      (synopsis "Stream JPEG over IP network")
+      (description "Command line application that copies JPEG frames from one or
+more input plugins to multiple output plugins.  It can be used to stream JPEG
+files over an IP-based network from a webcam to various types of viewers such
+as Chrome, Firefox, Cambozola, VLC, mplayer, and other software capable of
+receiving MJPG streams.")
+      (home-page "https://github.com/jacksonliam/mjpg-streamer")
+      (license license:gpl2+)))
+
 (define-public mjpegtools
   (package
     (name "mjpegtools")
--
2.32.0




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

* bug#50652: [PATCH] gnu: Add mjpg-streamer.
  2021-10-02 20:31     ` phodina via Guix-patches via
@ 2021-10-04 13:48       ` Ludovic Courtès
  0 siblings, 0 replies; 5+ messages in thread
From: Ludovic Courtès @ 2021-10-04 13:48 UTC (permalink / raw)
  To: phodina; +Cc: 50652@debbugs.gnu.org

Hi,

phodina <phodina@protonmail.com> skribis:

> thanks for the review. The jar and JQuery files are now removed.
> The website is still running and the streaming in web browser
> works (ungoogled-chromium, version: 93.0.4577.82-0.3f62dbc).
>
> The rest of the files are should be fine as they are not binaries
>  not minifed versions.

Great.

> * gnu/packages/video.scm: (mjpg-streamer): New variable.

I re-indented and applied.

Thank you!
Ludo’.




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

end of thread, other threads:[~2021-10-04 13:54 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-18  8:57 [bug#50652] [PATCH] gnu: Add mjpg-streamer phodina via Guix-patches via
2021-09-18 10:29 ` [bug#50652] [PATCH v2] " phodina via Guix-patches via
2021-09-30 21:19   ` [bug#50652] [PATCH] " Ludovic Courtès
2021-10-02 20:31     ` phodina via Guix-patches via
2021-10-04 13:48       ` bug#50652: " Ludovic Courtès

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.