From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id zHYhD5+w7GAWigAAgWs5BA (envelope-from ) for ; Mon, 12 Jul 2021 23:14:07 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id UKtFCp+w7GB1EgAAB5/wlQ (envelope-from ) for ; Mon, 12 Jul 2021 21:14:07 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id D5060148E5 for ; Mon, 12 Jul 2021 23:14:06 +0200 (CEST) Received: from localhost ([::1]:38956 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m33Fd-0000ki-Uh for larch@yhetil.org; Mon, 12 Jul 2021 17:14:05 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:44166) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m33Fa-0000fy-2K for guix-patches@gnu.org; Mon, 12 Jul 2021 17:14:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:55665) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m33FZ-0001dL-RS for guix-patches@gnu.org; Mon, 12 Jul 2021 17:14:01 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1m33FZ-00029b-Of for guix-patches@gnu.org; Mon, 12 Jul 2021 17:14:01 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#49539] [PATCH v2] gnu: Add nginx-rtmp-module. Resent-From: Jack Hill Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 12 Jul 2021 21:14:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 49539 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 49539@debbugs.gnu.org Received: via spool by 49539-submit@debbugs.gnu.org id=B49539.16261244268250 (code B ref 49539); Mon, 12 Jul 2021 21:14:01 +0000 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 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-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1626124446; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post; bh=hPZVY2N/DydrhYOP6ynZwto5fYEtCu/pPG4VFgRkzO4=; b=WqJJPRz83W0GI96+5fTdpQMJ6DHq5WogJMkbbhoKUoOt/4EWe8uetNyKLbw4hiWxp/mA3U SDOkoubm7fqsEMQZlPLo7Ed4LSNbo4iVC7EFiY8pRFdXy8mHaL+jJt5ntL2OgdUeLuBFIi q94E2GiO545zKxN2EnLM/+hEOuzW71fgJyX2nl0T215hQmk4+XWo3H1kRf+mhIzSAT0EEa X/ReyJ3rk0R5cXlY9DcBYaXhWzRrhUqrDhvE+FJ2DjcZ38Yy9bJiOZLOiGKIPn3TqrlHP7 vvvilCEdhbhx5Fw2W89BXvBWG8wgiJc+Vun2w3FEpdEVaITJrk8iJedWDdqrTg== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1626124446; a=rsa-sha256; cv=none; b=dLql4OuuyM2WtZ1P/5PjNnH+i6Z1pnVbk+odH/5WkUvvSPdSPoSV9biDpYzodhGUH3wQl9 YmL1CA+afTp+0rWITSpPRcKJF9xXASzk6jmH2G7OOnBWkXSC+pNd9lPmjl/F0JiLDt06sK 11v/kkO7GRfnXlu11yF27JSAO3VETjXig6vLSJv0II79OeZzJRcM1mZvOxEPlrzJrhnAqc JvfodhliCD3oi2KLsmlEN3BIGbo/3Zhu4iKpf944YC1ySOBhhaDvhmMfXsn9zbmlrxcq+v wr9tvR6iJ5e3jwqdIDDnnBMoS5yZnU1PHrzvc7VVaufZsUlAH1NckkSMPLFrhw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Spam-Score: -1.40 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Queue-Id: D5060148E5 X-Spam-Score: -1.40 X-Migadu-Scanner: scn0.migadu.com X-TUID: sa49lEX+0mwv * 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