Message ID | hD6LlWVBC3R-cbxAiM8cz7I0jB3Sa5ylDtw0hKTMAoO33ko3LiG8m5CLpx5p14Cq8-rBEwIleZW4MWPF60w2O8JMpA-6TC9pVy5QgtT-eCI=@protonmail.com |
---|---|
State | Accepted |
Headers | show |
Series | [bug#50652,v2] gnu: Add mjpg-streamer. | expand |
Context | Check | Description |
---|---|---|
cbaines/applying patch | fail | View Laminar job |
cbaines/issue | success | View issue |
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’.
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")