GNU bug report logs - #50652
[PATCH] gnu: Add mjpg-streamer.

Previous Next

Package: guix-patches;

Reported by: phodina <phodina <at> protonmail.com>

Date: Sat, 18 Sep 2021 08:58:01 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 50652 in the body.
You can then email your comments to 50652 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#50652; Package guix-patches. (Sat, 18 Sep 2021 08:58:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to phodina <phodina <at> protonmail.com>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Sat, 18 Sep 2021 08:58:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: phodina <phodina <at> protonmail.com>
To: "guix-patches <at> gnu.org" <guix-patches <at> gnu.org>
Subject: [PATCH] gnu: Add mjpg-streamer.
Date: Sat, 18 Sep 2021 08:57:21 +0000
* 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




Information forwarded to guix-patches <at> gnu.org:
bug#50652; Package guix-patches. (Sat, 18 Sep 2021 10:30:02 GMT) Full text and rfc822 format available.

Message #8 received at 50652 <at> debbugs.gnu.org (full text, mbox):

From: phodina <phodina <at> protonmail.com>
To: "50652 <at> debbugs.gnu.org" <50652 <at> debbugs.gnu.org>
Subject: [PATCH v2] gnu: Add mjpg-streamer.
Date: Sat, 18 Sep 2021 10:29:39 +0000
* 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 <at> gmail.com>
 ;;; Copyright © 2020 Hartmut Goebel <h.goebel <at> crazy-compilers.com>
 ;;; Copyright © 2021 Raghav Gururajan <rg <at> raghavgururajan.name>
+;;; Copyright © 2021 Petr Hodina <phodina <at> 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




Information forwarded to guix-patches <at> gnu.org:
bug#50652; Package guix-patches. (Thu, 30 Sep 2021 21:20:01 GMT) Full text and rfc822 format available.

Message #11 received at 50652 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: phodina <phodina <at> protonmail.com>
Cc: "50652 <at> debbugs.gnu.org" <50652 <at> debbugs.gnu.org>
Subject: Re: bug#50652: [PATCH] gnu: Add mjpg-streamer.
Date: Thu, 30 Sep 2021 23:19:32 +0200
Hi,

phodina <phodina <at> 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’.




Information forwarded to guix-patches <at> gnu.org:
bug#50652; Package guix-patches. (Sat, 02 Oct 2021 20:32:01 GMT) Full text and rfc822 format available.

Message #14 received at 50652 <at> debbugs.gnu.org (full text, mbox):

From: phodina <phodina <at> protonmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: "50652 <at> debbugs.gnu.org" <50652 <at> debbugs.gnu.org>
Subject: Re: bug#50652: [PATCH] gnu: Add mjpg-streamer.
Date: Sat, 02 Oct 2021 20:31:21 +0000
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 <at> gmail.com>
 ;;; Copyright © 2020 Hartmut Goebel <h.goebel <at> crazy-compilers.com>
 ;;; Copyright © 2021 Raghav Gururajan <rg <at> raghavgururajan.name>
+;;; Copyright © 2021 Petr Hodina <phodina <at> 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




Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Mon, 04 Oct 2021 13:49:01 GMT) Full text and rfc822 format available.

Notification sent to phodina <phodina <at> protonmail.com>:
bug acknowledged by developer. (Mon, 04 Oct 2021 13:49:01 GMT) Full text and rfc822 format available.

Message #19 received at 50652-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: phodina <phodina <at> protonmail.com>
Cc: "50652 <at> debbugs.gnu.org" <50652-done <at> debbugs.gnu.org>
Subject: Re: bug#50652: [PATCH] gnu: Add mjpg-streamer.
Date: Mon, 04 Oct 2021 15:48:09 +0200
Hi,

phodina <phodina <at> 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’.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 02 Nov 2021 11:24:07 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 169 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.