From unknown Sat Jun 14 18:01:19 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#49539 <49539@debbugs.gnu.org> To: bug#49539 <49539@debbugs.gnu.org> Subject: Status: [PATCH] gnu: Add nginx-rtmp-module. Reply-To: bug#49539 <49539@debbugs.gnu.org> Date: Sun, 15 Jun 2025 01:01:19 +0000 retitle 49539 [PATCH] gnu: Add nginx-rtmp-module. reassign 49539 guix-patches submitter 49539 Jack Hill severity 49539 normal tag 49539 patch thanks From debbugs-submit-bounces@debbugs.gnu.org Mon Jul 12 16:39:43 2021 Received: (at submit) by debbugs.gnu.org; 12 Jul 2021 20:39:43 +0000 Received: from localhost ([127.0.0.1]:38949 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m32iI-0001KF-Nf for submit@debbugs.gnu.org; Mon, 12 Jul 2021 16:39:43 -0400 Received: from lists.gnu.org ([209.51.188.17]:51318) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m32iG-0001K7-9b for submit@debbugs.gnu.org; Mon, 12 Jul 2021 16:39:36 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:37956) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m32iG-00035B-2H for guix-patches@gnu.org; Mon, 12 Jul 2021 16:39:36 -0400 Received: from minsky.hcoop.net ([104.248.1.95]:58884) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m32iE-0001g9-Dr for guix-patches@gnu.org; Mon, 12 Jul 2021 16:39:35 -0400 Received: from [2001:470:8:9f5:f850:c9a2:75c6:a2d9] (helo=alperton.home.eronel.org) by minsky.hcoop.net with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1m32iC-0004Yy-Pw for guix-patches@gnu.org; Mon, 12 Jul 2021 16:39:32 -0400 From: Jack Hill To: guix-patches@gnu.org Subject: [PATCH] gnu: Add nginx-rtmp-module. Date: Mon, 12 Jul 2021 16:39:20 -0400 Message-Id: <20210712203920.9243-1-jackhill@jackhill.us> X-Mailer: git-send-email 2.32.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=104.248.1.95; envelope-from=jackhill@jackhill.us; helo=minsky.hcoop.net X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.1 (/) * gnu/packages/web.scm (nginx-rtmp-module): New variable. --- gnu/packages/web.scm | 61 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 2cc8619b19..ad51bfdf55 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -50,6 +50,7 @@ ;;; Copyright © 2021 Stefan Reichör ;;; Copyright © 2021 la snesne ;;; Copyright © 2021 Matthew James Kraai +;;; Copyright © 2021 Jack Hill ;;; ;;; This file is part of GNU Guix. ;;; @@ -771,6 +772,66 @@ documentation.") (description "This NGINX module provides a scripting support with Lua programming language."))) +(define-public nginx-rtmp-module + (package + (inherit nginx) + (name "nginx-rtmp-module") + (version "1.2.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/arut/nginx-rtmp-module") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0y45bswk213yhkc2v1xca2rnsxrhx8v6azxz9pvi71vvxcggqv6h")))) + (build-system gnu-build-system) + (inputs + `(("nginx-sources" ,(package-source nginx)) + ,@(package-inputs nginx))) + (arguments + (substitute-keyword-arguments + `(#:configure-flags '("--add-dynamic-module=.") + #:make-flags '("modules") + #:modules ((guix build utils) + (guix build gnu-build-system)) + ,@(package-arguments nginx)) + ((#:phases phases) + `(modify-phases ,phases + ;; The LICENSE file will be overwritten with the one from nginx + ;; when unpacking the nginx source, so copy this one to its own + ;; file. + (add-after 'unpack 'preserve-license-file + (lambda _ (copy-file "LICENSE" "LICENSE.rtmp"))) + (add-after 'preserve-license-file 'unpack-nginx-sources + (lambda* (#:key inputs native-inputs #:allow-other-keys) + (begin + ;; The nginx source code is part of the module’s source. + (format #t "decompressing nginx source code~%") + (let ((tar (assoc-ref inputs "tar")) + (nginx-srcs (assoc-ref inputs "nginx-sources"))) + (invoke (string-append tar "/bin/tar") + "xvf" nginx-srcs "--strip-components=1")) + #t))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((modules-dir (string-append (assoc-ref outputs "out") + "/etc/nginx/modules"))) + (install-file "objs/ngx_rtmp_module.so" modules-dir) + #t))) + (delete 'fix-root-dirs) + (delete 'install-man-page))))) + (home-page "https://github.com/arut/nginx-rtmp-module") + (synopsis "NGINX module for audo and video streaming with RTMP") + (description "This NGINX module provides streaming with the @acronym{RTMP, +Real-Time Messaging Protocol}, @acronym{DASH, Dynamic Adaptive Streaming over HTTP}, +and @acronym{HLS, HTTP Live Streaming} protocols. It allows NGINX to accept +incoming RTMP streams for recording or redistribution. It also supports +on-demand streaming from a file on disk and pulling from an upstream RTMP +steam. Remote control of the module is possible over HTTP.") + (license license:bsd-2))) + (define-public lighttpd (package (name "lighttpd") -- 2.32.0 From debbugs-submit-bounces@debbugs.gnu.org Mon Jul 12 16:52:51 2021 Received: (at 49539) by debbugs.gnu.org; 12 Jul 2021 20:52:51 +0000 Received: from localhost ([127.0.0.1]:38954 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m32v5-0001d4-Hn for submit@debbugs.gnu.org; Mon, 12 Jul 2021 16:52:51 -0400 Received: from mout.web.de ([212.227.15.14]:47141) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m32v3-0001cp-Dl for 49539@debbugs.gnu.org; Mon, 12 Jul 2021 16:52:49 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=web.de; s=dbaedf251592; t=1626123163; bh=PQHNDc7jUfu6KR9X9b2hJYf5jqNSc99DQqeH+8xGtS4=; h=X-UI-Sender-Class:Subject:To:References:From:Date:In-Reply-To; b=cWvu0VnGP7vNvTx977Scedys+XI2UDFudEBl7W3OewLVSvG8guda+kk8tm/1OC9E3 eF2cpxLBW/9OPR5YXO3lDjzI72nLfWYnLfGRa7ehLitcTVbgjC5pkDzbisEtjIIoYe HLySMuIKitA9rhAg0Prgtr10IyRsmOtZewrqIqjo= X-UI-Sender-Class: c548c8c5-30a9-4db5-a2e7-cb6cb037b8f9 Received: from [192.168.178.113] ([88.152.185.61]) by smtp.web.de (mrweb004 [213.165.67.108]) with ESMTPSA (Nemesis) id 0MJIMc-1m1NxJ1adG-002rCc for <49539@debbugs.gnu.org>; Mon, 12 Jul 2021 22:52:43 +0200 Subject: Re: [bug#49539] [PATCH] gnu: Add nginx-rtmp-module. To: 49539@debbugs.gnu.org References: <20210712203920.9243-1-jackhill@jackhill.us> From: Jonathan Brielmaier Message-ID: <984dcf9d-6046-3e68-fd97-586a113180b8@web.de> Date: Mon, 12 Jul 2021 22:52:42 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Icedove/78.11.0 MIME-Version: 1.0 In-Reply-To: <20210712203920.9243-1-jackhill@jackhill.us> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: de-DE Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:vrqR2E5frfvuwXAzqso9Qka4sCmbZmxeOXkZ984dYedscNSDaBX FdltzdBi2ej91n0+QriwINpSXbUgVo5ROXD9ZXA3GHEeHk0mxzIwrUDl6u30t4mrsoLzFPS RjMQlcQWy4P7ccFKQNwq/RqOxFAmKTJeyo4XuSlYkYRW43YYtrTMyD/Tv0xUzCFm7JuxL+u LIYcBtnPh0cm/n7C2E+nQ== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:BPTmCR+Pea4=:2cL/6VYbGxbEcVYBDRgb3L q6Q+YPEAzyaYgn0wsOSBEBblhqh6u7BTILYd8IGWT90WNzpdaqTfTu9AaOwqVIL6dWJcsP6Ey 5CDpCN6tMZlJJuIEHB2UE+7AYgSuTueRb6fVCEuGSq1OTdthLmuIdIJJABz5XKbVg06PSE8Kj LMs2WafT4py8WHml9GQL2KFxwnnjX7blCDe8jLXeKJy9NWUHQm/vhbTWS6nEz8nuvC7z0Uciy /hsYrmdcD8giCUsPOreLpVqjUpQnPvOZQYa4CVwLvT5Ki7xAyFQvA9Tv6AHNYDzfQywINosdX jMEhFQhzQVATQr0YKxi4bkvNL0lijsBuihEq//NXuSf94v154qICQlhgxhtFdxuU3jXE01Khl AJ6On3GoVrmqdla+BiTA5Z1Asim+9sSUQSXDlWfy7vxaFDW5gdShfP9+3Fd/N/PJXWSmhXwoh yQMOn/ThhSsUwzqJfrBYognPVQZtYW2S0p2Chom/2mNurDhXkkToQv+rKPz+VvovypmRctKLa EnQisXp+QMx1zAqyqFM+iAo9tHYS/Qfbbn0UBojEH5IGyAyMhJebgRdgN5/iyWM27Ksv03LcY KjeAVI8qPuFLHv8ub7beCyQmCkt5ujXaIRm6NjIk1x3yWXgACl1SlfV49lE2QuXO2nVEtX6Bb JH9kU/+oXbQVSFIdGDm8X/5G4pjx0IqWFXLIw5//chUfiIwODPZk08UxyN0HssTU+BI8KtZCX Q/HsoSR6Mgyz5MT//nz1mPj41Q56R30lbn3zmNfnNqRPMQwrXS/I3fVBgZbiWyKIg1oVXRxJy lrxcO1NHF6/RZHB8rqqO9CGgr8chnapUIyufvW2c8Cp03GGCeoUZDwSrlEj/pjsCHMQCHtLLV eMsIpyQwDodtlHn6WcXy5YAyfv8y6BoV6wAmLRPK/A4PSunD8sWuVD68DCNUo/b97MVMyB7qw KrII1WJaEDsB1xnOa2L2hD8NOkEINjRD2naLpWtZtMXnY7NdJ9bwij/xAaSrDGmj0kEUd+S1A rARLIuAhOVs4KQTA2EF+ajQ4Wbn9dtHOVYQOEDh2fIdcN7YvuGmDZXfQCN3cIo7/3ubRrB5c4 sc0ZCuIu48rtwPNyz7if9lpF4msGKum7PN4TUUEnV6U1J5TE3EmsZDJYg== X-Spam-Score: -2.2 (--) X-Debbugs-Envelope-To: 49539 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.2 (---) On 12.07.21 22:39, Jack Hill wrote: > * gnu/packages/web.scm (nginx-rtmp-module): New variable. [...] > + (synopsis "NGINX module for audo and video streaming with RTMP") ^ audio > + (description "This NGINX module provides streaming with the @acronym{RTMP, > +Real-Time Messaging Protocol}, @acronym{DASH, Dynamic Adaptive Streaming over HTTP}, > +and @acronym{HLS, HTTP Live Streaming} protocols. It allows NGINX to accept > +incoming RTMP streams for recording or redistribution. It also supports > +on-demand streaming from a file on disk and pulling from an upstream RTMP > +steam. Remote control of the module is possible over HTTP.") ^ stream? From debbugs-submit-bounces@debbugs.gnu.org Mon Jul 12 17:11:44 2021 Received: (at 49539) by debbugs.gnu.org; 12 Jul 2021 21:11:45 +0000 Received: from localhost ([127.0.0.1]:38972 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m33DM-00025n-Oj for submit@debbugs.gnu.org; Mon, 12 Jul 2021 17:11:44 -0400 Received: from minsky.hcoop.net ([104.248.1.95]:57482) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m33DL-00025a-Ew for 49539@debbugs.gnu.org; Mon, 12 Jul 2021 17:11:44 -0400 Received: from marsh.hcoop.net ([45.55.52.66]) by minsky.hcoop.net with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1m33DF-0005pm-O3; Mon, 12 Jul 2021 17:11:37 -0400 Date: Mon, 12 Jul 2021 17:11:37 -0400 (EDT) From: Jack Hill X-X-Sender: jackhill@marsh.hcoop.net To: Jonathan Brielmaier Subject: Re: [bug#49539] [PATCH] gnu: Add nginx-rtmp-module. In-Reply-To: <984dcf9d-6046-3e68-fd97-586a113180b8@web.de> Message-ID: References: <20210712203920.9243-1-jackhill@jackhill.us> <984dcf9d-6046-3e68-fd97-586a113180b8@web.de> User-Agent: Alpine 2.21 (DEB 202 2017-01-01) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 49539 Cc: 49539@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On Mon, 12 Jul 2021, Jonathan Brielmaier wrote: > On 12.07.21 22:39, Jack Hill wrote: >> * gnu/packages/web.scm (nginx-rtmp-module): New variable. > [...] >> + (synopsis "NGINX module for audo and video streaming with RTMP") > ^ audio Whoops, thank you for catching this. >> + (description "This NGINX module provides streaming with the >> @acronym{RTMP, >> +Real-Time Messaging Protocol}, @acronym{DASH, Dynamic Adaptive Streaming >> over HTTP}, >> +and @acronym{HLS, HTTP Live Streaming} protocols. It allows NGINX to >> accept >> +incoming RTMP streams for recording or redistribution. It also supports >> +on-demand streaming from a file on disk and pulling from an upstream RTMP >> +steam. Remote control of the module is possible over HTTP.") > > ^ stream? At least steam is a real word to the spellchecker :) I'll post v2 with these fixed shortly. Thanks! Jack From debbugs-submit-bounces@debbugs.gnu.org Mon Jul 12 17:13:46 2021 Received: (at 49539) by debbugs.gnu.org; 12 Jul 2021 21:13:46 +0000 Received: from localhost ([127.0.0.1]:38978 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m33FH-00028x-2p for submit@debbugs.gnu.org; Mon, 12 Jul 2021 17:13:46 -0400 Received: from minsky.hcoop.net ([104.248.1.95]:57494) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m33FF-00028j-AP for 49539@debbugs.gnu.org; Mon, 12 Jul 2021 17:13:41 -0400 Received: from [2001:470:8:9f5:f850:c9a2:75c6:a2d9] (helo=alperton.home.eronel.org) by minsky.hcoop.net with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1m33FA-0005rS-7D for 49539@debbugs.gnu.org; Mon, 12 Jul 2021 17:13:36 -0400 From: Jack Hill To: 49539@debbugs.gnu.org Subject: [PATCH v2] gnu: Add nginx-rtmp-module. Date: Mon, 12 Jul 2021 17:13:22 -0400 Message-Id: <20210712211322.14238-1-jackhill@jackhill.us> X-Mailer: git-send-email 2.32.0 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 49539 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/web.scm (nginx-rtmp-module): New variable. --- gnu/packages/web.scm | 61 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 2cc8619b19..a659ad456a 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -50,6 +50,7 @@ ;;; Copyright © 2021 Stefan Reichör ;;; Copyright © 2021 la snesne ;;; Copyright © 2021 Matthew James Kraai +;;; Copyright © 2021 Jack Hill ;;; ;;; This file is part of GNU Guix. ;;; @@ -771,6 +772,66 @@ documentation.") (description "This NGINX module provides a scripting support with Lua programming language."))) +(define-public nginx-rtmp-module + (package + (inherit nginx) + (name "nginx-rtmp-module") + (version "1.2.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/arut/nginx-rtmp-module") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0y45bswk213yhkc2v1xca2rnsxrhx8v6azxz9pvi71vvxcggqv6h")))) + (build-system gnu-build-system) + (inputs + `(("nginx-sources" ,(package-source nginx)) + ,@(package-inputs nginx))) + (arguments + (substitute-keyword-arguments + `(#:configure-flags '("--add-dynamic-module=.") + #:make-flags '("modules") + #:modules ((guix build utils) + (guix build gnu-build-system)) + ,@(package-arguments nginx)) + ((#:phases phases) + `(modify-phases ,phases + ;; The LICENSE file will be overwritten with the one from nginx + ;; when unpacking the nginx source, so copy this one to its own + ;; file. + (add-after 'unpack 'preserve-license-file + (lambda _ (copy-file "LICENSE" "LICENSE.rtmp"))) + (add-after 'preserve-license-file 'unpack-nginx-sources + (lambda* (#:key inputs native-inputs #:allow-other-keys) + (begin + ;; The nginx source code is part of the module’s source. + (format #t "decompressing nginx source code~%") + (let ((tar (assoc-ref inputs "tar")) + (nginx-srcs (assoc-ref inputs "nginx-sources"))) + (invoke (string-append tar "/bin/tar") + "xvf" nginx-srcs "--strip-components=1")) + #t))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((modules-dir (string-append (assoc-ref outputs "out") + "/etc/nginx/modules"))) + (install-file "objs/ngx_rtmp_module.so" modules-dir) + #t))) + (delete 'fix-root-dirs) + (delete 'install-man-page))))) + (home-page "https://github.com/arut/nginx-rtmp-module") + (synopsis "NGINX module for audio and video streaming with RTMP") + (description "This NGINX module provides streaming with the @acronym{RTMP, +Real-Time Messaging Protocol}, @acronym{DASH, Dynamic Adaptive Streaming over HTTP}, +and @acronym{HLS, HTTP Live Streaming} protocols. It allows NGINX to accept +incoming RTMP streams for recording or redistribution. It also supports +on-demand streaming from a file on disk and pulling from an upstream RTMP +stream. Remote control of the module is possible over HTTP.") + (license license:bsd-2))) + (define-public lighttpd (package (name "lighttpd") -- 2.32.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 22 00:05:42 2021 Received: (at 49539) by debbugs.gnu.org; 22 Jul 2021 04:05:42 +0000 Received: from localhost ([127.0.0.1]:39141 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m6Pxp-0002LF-86 for submit@debbugs.gnu.org; Thu, 22 Jul 2021 00:05:42 -0400 Received: from out0.migadu.com ([94.23.1.103]:16061) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m6Pxm-0002L6-Gl for 49539@debbugs.gnu.org; Thu, 22 Jul 2021 00:05:36 -0400 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mgsn.dev; s=key1; t=1626926733; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=LaAUxB6YNBVUt3PXyivSvJ79AfHvjhr2KT+2hBdvZzg=; b=e8Kni7orv9X+ipJV86z92C75/fBjHTDKXOQLw05Q9y1inBNT0QR7kFdYduQ3bWdLOCp8Ex F5Vka5wUnHcOyY+bGzhd9hu3XLb8ISC+mz1u3V7vsTrW8UJGEX8d4wG9KgSomplNAJ1dT+ H5+3xjty2YEbI6Y64/FfhHLSWIBMxAY= From: Sarah Morgensen To: Jack Hill Subject: Re: bug#49539: [PATCH] gnu: Add nginx-rtmp-module. References: <20210712211322.14238-1-jackhill@jackhill.us> Date: Wed, 21 Jul 2021 21:05:29 -0700 In-Reply-To: <20210712211322.14238-1-jackhill@jackhill.us> (Jack Hill's message of "Mon, 12 Jul 2021 17:13:22 -0400") Message-ID: <86im13ro1i.fsf_-_@mgsn.dev> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Migadu-Flow: FLOW_OUT X-Migadu-Auth-User: iskarian@mgsn.dev X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 49539 Cc: 49539@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi! Jack Hill writes: > * gnu/packages/web.scm (nginx-rtmp-module): New variable. > --- > gnu/packages/web.scm | 61 ++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 61 insertions(+) > > diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm > index 2cc8619b19..a659ad456a 100644 > --- a/gnu/packages/web.scm > +++ b/gnu/packages/web.scm > @@ -50,6 +50,7 @@ > ;;; Copyright =C2=A9 2021 Stefan Reich=C3=B6r > ;;; Copyright =C2=A9 2021 la snesne > ;;; Copyright =C2=A9 2021 Matthew James Kraai > +;;; Copyright =C2=A9 2021 Jack Hill > ;;; > ;;; This file is part of GNU Guix. > ;;; > @@ -771,6 +772,66 @@ documentation.") > (description "This NGINX module provides a scripting support with Lua > programming language."))) >=20=20 > +(define-public nginx-rtmp-module > + (package > + (inherit nginx) > + (name "nginx-rtmp-module") > + (version "1.2.2") > + (source > + (origin > + (method git-fetch) > + (uri (git-reference > + (url "https://github.com/arut/nginx-rtmp-module") > + (commit (string-append "v" version)))) > + (file-name (git-file-name name version)) > + (sha256 > + (base32 "0y45bswk213yhkc2v1xca2rnsxrhx8v6azxz9pvi71vvxcggqv6h"))= )) > + (build-system gnu-build-system) > + (inputs > + `(("nginx-sources" ,(package-source nginx)) > + ,@(package-inputs nginx))) > + (arguments > + (substitute-keyword-arguments > + `(#:configure-flags '("--add-dynamic-module=3D.") > + #:make-flags '("modules") > + #:modules ((guix build utils) > + (guix build gnu-build-system)) > + ,@(package-arguments nginx)) > + ((#:phases phases) > + `(modify-phases ,phases > + ;; The LICENSE file will be overwritten with the one from ngi= nx > + ;; when unpacking the nginx source, so copy this one to its o= wn > + ;; file. > + (add-after 'unpack 'preserve-license-file > + (lambda _ (copy-file "LICENSE" "LICENSE.rtmp"))) > + (add-after 'preserve-license-file 'unpack-nginx-sources > + (lambda* (#:key inputs native-inputs #:allow-other-keys) > + (begin > + ;; The nginx source code is part of the module=E2=80=99= s source. > + (format #t "decompressing nginx source code~%") > + (let ((tar (assoc-ref inputs "tar")) > + (nginx-srcs (assoc-ref inputs "nginx-sources"))) > + (invoke (string-append tar "/bin/tar") > + "xvf" nginx-srcs "--strip-components=3D1")) You can probably drop the direct reference to tar and just use `(invoke "tar" ...)` Also, if you want to avoid the extra step of renaming the original LICENSE, you can use `--transform=3Ds,/LICENSE$,/LICENSE.nginx,` as an argument to tar. > + #t))) > + (replace 'install > + (lambda* (#:key outputs #:allow-other-keys) > + (let ((modules-dir (string-append (assoc-ref outputs "out= ") > + "/etc/nginx/modules"))) > + (install-file "objs/ngx_rtmp_module.so" modules-dir) > + #t))) > + (delete 'fix-root-dirs) > + (delete 'install-man-page))))) > + (home-page "https://github.com/arut/nginx-rtmp-module") > + (synopsis "NGINX module for audio and video streaming with RTMP") > + (description "This NGINX module provides streaming with the @acronym= {RTMP, > +Real-Time Messaging Protocol}, @acronym{DASH, Dynamic Adaptive Streaming= over HTTP}, > +and @acronym{HLS, HTTP Live Streaming} protocols. It allows NGINX to ac= cept > +incoming RTMP streams for recording or redistribution. It also supports > +on-demand streaming from a file on disk and pulling from an upstream RTMP > +stream. Remote control of the module is possible over HTTP.") > + (license license:bsd-2))) > + > (define-public lighttpd > (package > (name "lighttpd") -- Sarah From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 22 16:53:41 2021 Received: (at 49539) by debbugs.gnu.org; 22 Jul 2021 20:53:42 +0000 Received: from localhost ([127.0.0.1]:41711 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m6fhN-0003dX-NO for submit@debbugs.gnu.org; Thu, 22 Jul 2021 16:53:41 -0400 Received: from minsky.hcoop.net ([104.248.1.95]:51074) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m6fhK-0003dG-Ij for 49539@debbugs.gnu.org; Thu, 22 Jul 2021 16:53:40 -0400 Received: from marsh.hcoop.net ([45.55.52.66]) by minsky.hcoop.net with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1m6fhE-0007bW-NA; Thu, 22 Jul 2021 16:53:32 -0400 Date: Thu, 22 Jul 2021 16:53:32 -0400 (EDT) From: Jack Hill X-X-Sender: jackhill@marsh.hcoop.net To: Sarah Morgensen Subject: Re: [bug#49539] [PATCH] gnu: Add nginx-rtmp-module. In-Reply-To: <86im13ro1i.fsf_-_@mgsn.dev> Message-ID: References: <20210712211322.14238-1-jackhill@jackhill.us> <86im13ro1i.fsf_-_@mgsn.dev> User-Agent: Alpine 2.21 (DEB 202 2017-01-01) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="925712948-905846704-1626987212=:2109" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 49539 Cc: 49539@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --925712948-905846704-1626987212=:2109 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8BIT On Wed, 21 Jul 2021, Sarah Morgensen wrote: > Jack Hill writes: > >> + ((#:phases phases) >> + `(modify-phases ,phases >> + ;; The LICENSE file will be overwritten with the one from nginx >> + ;; when unpacking the nginx source, so copy this one to its own >> + ;; file. >> + (add-after 'unpack 'preserve-license-file >> + (lambda _ (copy-file "LICENSE" "LICENSE.rtmp"))) >> + (add-after 'preserve-license-file 'unpack-nginx-sources >> + (lambda* (#:key inputs native-inputs #:allow-other-keys) >> + (begin >> + ;; The nginx source code is part of the module’s source. >> + (format #t "decompressing nginx source code~%") >> + (let ((tar (assoc-ref inputs "tar")) >> + (nginx-srcs (assoc-ref inputs "nginx-sources"))) >> + (invoke (string-append tar "/bin/tar") >> + "xvf" nginx-srcs "--strip-components=1")) > > You can probably drop the direct reference to tar and just use `(invoke > "tar" ...)` > > Also, if you want to avoid the extra step of renaming the original > LICENSE, you can use `--transform=s,/LICENSE$,/LICENSE.nginx,` as an > argument to tar. Thanks for suggesting these improvements! I've incorporated them into a version 3 that I'll post shortly. Best, Jack P.S. The same opportunities for improvement exists in some of our other nginx modules, from which I copied this phase. The next time we update those might be a good time to clean them up. --925712948-905846704-1626987212=:2109-- From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 22 16:56:19 2021 Received: (at 49539) by debbugs.gnu.org; 22 Jul 2021 20:56:19 +0000 Received: from localhost ([127.0.0.1]:41718 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m6fjs-0003ha-4V for submit@debbugs.gnu.org; Thu, 22 Jul 2021 16:56:19 -0400 Received: from minsky.hcoop.net ([104.248.1.95]:51098) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m6fjp-0003hL-Vq for 49539@debbugs.gnu.org; Thu, 22 Jul 2021 16:56:14 -0400 Received: from [2001:470:8:9f5:903a:9988:22e1:4d65] (helo=alperton.home.eronel.org) by minsky.hcoop.net with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1m6fjk-0007j2-OV; Thu, 22 Jul 2021 16:56:08 -0400 From: Jack Hill To: 49539@debbugs.gnu.org Subject: [PATCH v3] gnu: Add nginx-rtmp-module. Date: Thu, 22 Jul 2021 16:55:56 -0400 Message-Id: <20210722205556.12542-1-jackhill@jackhill.us> X-Mailer: git-send-email 2.32.0 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 49539 Cc: iskarian@mgsn.dev X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/web.scm (nginx-rtmp-module): New variable. --- gnu/packages/web.scm | 59 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 2cc8619b19..c0db8d9436 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -50,6 +50,7 @@ ;;; Copyright © 2021 Stefan Reichör ;;; Copyright © 2021 la snesne ;;; Copyright © 2021 Matthew James Kraai +;;; Copyright © 2021 Jack Hill ;;; ;;; This file is part of GNU Guix. ;;; @@ -771,6 +772,64 @@ documentation.") (description "This NGINX module provides a scripting support with Lua programming language."))) +(define-public nginx-rtmp-module + (package + (inherit nginx) + (name "nginx-rtmp-module") + (version "1.2.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/arut/nginx-rtmp-module") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0y45bswk213yhkc2v1xca2rnsxrhx8v6azxz9pvi71vvxcggqv6h")))) + (build-system gnu-build-system) + (inputs + `(("nginx-sources" ,(package-source nginx)) + ,@(package-inputs nginx))) + (arguments + (substitute-keyword-arguments + `(#:configure-flags '("--add-dynamic-module=.") + #:make-flags '("modules") + #:modules ((guix build utils) + (guix build gnu-build-system)) + ,@(package-arguments nginx)) + ((#:phases phases) + `(modify-phases ,phases + (add-after 'unpack 'unpack-nginx-sources + (lambda* (#:key inputs native-inputs #:allow-other-keys) + (begin + ;; The nginx source code is part of the module’s source. + (format #t "decompressing nginx source code~%") + (invoke "tar" "xvf" (assoc-ref inputs "nginx-sources") + ;; This packages's LICENSE file would be + ;; overwritten with the one from nginx when + ;; unpacking the nginx source, so rename the nginx + ;; one when unpacking. + "--transform=s,/LICENSE$,/LICENSE.nginx," + "--strip-components=1") + #t))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((modules-dir (string-append (assoc-ref outputs "out") + "/etc/nginx/modules"))) + (install-file "objs/ngx_rtmp_module.so" modules-dir) + #t))) + (delete 'fix-root-dirs) + (delete 'install-man-page))))) + (home-page "https://github.com/arut/nginx-rtmp-module") + (synopsis "NGINX module for audio and video streaming with RTMP") + (description "This NGINX module provides streaming with the @acronym{RTMP, +Real-Time Messaging Protocol}, @acronym{DASH, Dynamic Adaptive Streaming over HTTP}, +and @acronym{HLS, HTTP Live Streaming} protocols. It allows NGINX to accept +incoming RTMP streams for recording or redistribution. It also supports +on-demand streaming from a file on disk and pulling from an upstream RTMP +stream. Remote control of the module is possible over HTTP.") + (license license:bsd-2))) + (define-public lighttpd (package (name "lighttpd") -- 2.32.0 From debbugs-submit-bounces@debbugs.gnu.org Sat Jul 24 18:08:02 2021 Received: (at 49539) by debbugs.gnu.org; 24 Jul 2021 22:08:02 +0000 Received: from localhost ([127.0.0.1]:47164 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m7PoQ-0008E0-4R for submit@debbugs.gnu.org; Sat, 24 Jul 2021 18:08:02 -0400 Received: from out2.migadu.com ([188.165.223.204]:29506) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m7PoM-0008Di-Kl for 49539@debbugs.gnu.org; Sat, 24 Jul 2021 18:08:00 -0400 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mgsn.dev; s=key1; t=1627164476; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=O9np+muwR0JHHS6CvDE9I1rpwtlse6enGZfSve+G+Y4=; b=AE0PMPPuVVenzzmhfY8rYeUr1l9tgwljzJ/sFwoJrwwT3NCPy4Sf6JbBYxZKl4lxGlOF6R ptSbiXDGMMlc+NzDq/uYlEqimT81do4H91SdE0VUmP8liidE7QkFwoglFACsN288U5YclT mrbQJpx6Up6BCJzZJHgvK9zeAlND+J0= From: Sarah Morgensen To: Jack Hill Subject: Re: bug#49539: [PATCH] gnu: Add nginx-rtmp-module. References: <20210712211322.14238-1-jackhill@jackhill.us> <86im13ro1i.fsf_-_@mgsn.dev> Date: Sat, 24 Jul 2021 15:07:54 -0700 In-Reply-To: (Jack Hill's message of "Thu, 22 Jul 2021 16:53:32 -0400 (EDT)") Message-ID: <86sg03pdqd.fsf_-_@mgsn.dev> MIME-Version: 1.0 Content-Type: text/plain X-Migadu-Flow: FLOW_OUT X-Migadu-Auth-User: iskarian@mgsn.dev X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49539 Cc: 49539@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi, Glad I could help. I forgot to mention also, the `begin` probably isn't necessary (it's probably leftover from when it was a snippet somewhere), but as you say that can be taken care of over time. Jack Hill writes: [...] > P.S. The same opportunities for improvement exists in some of our other nginx > modules, from which I copied this phase. The next time we update those might be > a good time to clean them up. How common is this? Would it warrant an nginx-build-system, or perhaps even a common idiom/general system for packages using multiple sources? Or are the ways in which these packages uses secondary sources different enough that unifying them would be difficult? -- Sarah From debbugs-submit-bounces@debbugs.gnu.org Thu Jul 29 15:48:32 2021 Received: (at 49539-done) by debbugs.gnu.org; 29 Jul 2021 19:48:32 +0000 Received: from localhost ([127.0.0.1]:58331 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m9C1A-0007Cc-JU for submit@debbugs.gnu.org; Thu, 29 Jul 2021 15:48:32 -0400 Received: from eggs.gnu.org ([209.51.188.92]:49504) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m9C18-0007CP-UC for 49539-done@debbugs.gnu.org; Thu, 29 Jul 2021 15:48:31 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:46862) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m9C13-0000RO-Eh; Thu, 29 Jul 2021 15:48:25 -0400 Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=45324 helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m9C13-0002Ny-7H; Thu, 29 Jul 2021 15:48:25 -0400 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: Jack Hill Subject: Re: bug#49539: [PATCH] gnu: Add nginx-rtmp-module. References: <20210722205556.12542-1-jackhill@jackhill.us> Date: Thu, 29 Jul 2021 21:48:23 +0200 In-Reply-To: <20210722205556.12542-1-jackhill@jackhill.us> (Jack Hill's message of "Thu, 22 Jul 2021 16:55:56 -0400") Message-ID: <87a6m4296g.fsf_-_@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 49539-done Cc: 49539-done@debbugs.gnu.org, iskarian@mgsn.dev X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Hi, Jack Hill skribis: > * gnu/packages/web.scm (nginx-rtmp-module): New variable. Applied. Thank you and thanks to Sarah for reviewing! Ludo=E2=80=99. From unknown Sat Jun 14 18:01:19 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Fri, 27 Aug 2021 11:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator