From patchwork Wed Sep 21 00:13:19 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hilton Chain X-Patchwork-Id: 42792 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 078CD27BBEA; Wed, 21 Sep 2022 01:21:29 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,FROM_SUSPICIOUS_NTLD,MAILING_LIST_MULTI,PDS_OTHER_BAD_TLD, SPF_HELO_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 2AC0B27BBE9 for ; Wed, 21 Sep 2022 01:21:28 +0100 (BST) Received: from localhost ([::1]:33004 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oanUU-0006QN-0V for patchwork@mira.cbaines.net; Tue, 20 Sep 2022 20:21:26 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:46582) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oanNL-0000OQ-5Z for guix-patches@gnu.org; Tue, 20 Sep 2022 20:14:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:60938) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oanNK-0007kF-Ta for guix-patches@gnu.org; Tue, 20 Sep 2022 20:14:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oanNK-0007Bb-Od for guix-patches@gnu.org; Tue, 20 Sep 2022 20:14:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#57675] [PATCH v7 10/11] gnu: webrtc-for-telegram-desktop: Update to 621f3da5. Resent-From: Hilton Chain Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 21 Sep 2022 00:14:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 57675 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 57675@debbugs.gnu.org Cc: Liliana Marie Prikler Received: via spool by 57675-submit@debbugs.gnu.org id=B57675.166371922027558 (code B ref 57675); Wed, 21 Sep 2022 00:14:02 +0000 Received: (at 57675) by debbugs.gnu.org; 21 Sep 2022 00:13:40 +0000 Received: from localhost ([127.0.0.1]:60010 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oanMy-0007AP-1J for submit@debbugs.gnu.org; Tue, 20 Sep 2022 20:13:40 -0400 Received: from mail.boiledscript.com ([144.168.59.46]:53892) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oanMw-0007AC-Bd for 57675@debbugs.gnu.org; Tue, 20 Sep 2022 20:13:39 -0400 Date: Wed, 21 Sep 2022 08:13:19 +0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ultrarare.space; s=dkim; t=1663719212; 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=UImwixcFBAEg+uWz6HW0xh33jEMYxUhBFW2xz6Vulds=; b=DGOeyXyRz/1GYL6dV3YgAw3bFAHecW0vqiwiSwdb50mGsfWQQSbuZBg4w3xJi1hKbSNnWp QxCnkbHHEwiXCaIzhCrw4vb5WGRHbdJVSsx4JvbZ0I8G/sK2YNKWd3GEzcjAxCpNItBn5e qLybD/gKxGRnS/ZQHEPQ2I5+Dmtk0YNvLeI9/O5I+YMlWKcHeDsHho6HlFcmSgnlePFUpE wZ6sb8hJ45eaNtLEiCnMcW8td32AAGKTpyrYTcj0sc3aWFA88c7DRHLhFMUSD46KkZ/96y pGr9HdUUifzQRWqz/bmU8Nsg2o86WyQ6Y33nBYF6G211WTez9v36y8meyvBnkQ== Message-ID: In-Reply-To: References: MIME-Version: 1.0 Authentication-Results: mail.boiledscript.com; auth=pass smtp.mailfrom=hako@ultrarare.space X-Spamd-Bar: / 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+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" Reply-to: Hilton Chain X-ACL-Warn: , Hilton Chain via Guix-patches X-Patchwork-Original-From: Hilton Chain via Guix-patches via From: Hilton Chain X-getmail-retrieved-from-mailbox: Patches * gnu/packages/patches/webrtc-for-telegram-desktop-fix-gcc12-cstdint.patch: New file. * gnu/local.mk (dist_patch_DATA): Add patch. * gnu/packages/telegram.scm (crc32c-for-telegram-desktop): New variable. (libvpx-for-telegram-desktop): Remove variable. (webrtc-for-telegram-desktop): Update to 621f3da5. [patches]: Add webrtc-for-telegram-desktop-fix-gcc12-cstdint.patch. [snippet]: Unbundle libvpx and openh264. [native-inputs]: Drop perl. [inputs]: Replace pipewire with pipewire-0.3. Add abseil-cpp-cxxstd17, libdrm, libglvnd, libvpx, libxfixes, mesa, openh264. Remove alsa-lib, libx11 and pulseaudio. [arguments]<#:phases>: Adjusted according to unbundled packages. [license]: Adjusted accordingly. --- gnu/local.mk | 1 + ...r-telegram-desktop-fix-gcc12-cstdint.patch | 21 ++++ gnu/packages/telegram.scm | 95 ++++++++++--------- 3 files changed, 72 insertions(+), 45 deletions(-) create mode 100644 gnu/packages/patches/webrtc-for-telegram-desktop-fix-gcc12-cstdint.patch diff --git a/gnu/local.mk b/gnu/local.mk index ef1bae5f3c..10ee65fdd5 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1969,6 +1969,7 @@ dist_patch_DATA = \ %D%/packages/patches/warsow-qfusion-fix-bool-return-type.patch \ %D%/packages/patches/webkitgtk-adjust-bubblewrap-paths.patch \ %D%/packages/patches/webrtc-audio-processing-big-endian.patch \ + %D%/packages/patches/webrtc-for-telegram-desktop-fix-gcc12-cstdint.patch \ %D%/packages/patches/websocketpp-fix-for-cmake-3.15.patch \ %D%/packages/patches/widelands-add-missing-map-include.patch \ %D%/packages/patches/widelands-system-wide_minizip.patch \ diff --git a/gnu/packages/patches/webrtc-for-telegram-desktop-fix-gcc12-cstdint.patch b/gnu/packages/patches/webrtc-for-telegram-desktop-fix-gcc12-cstdint.patch new file mode 100644 index 0000000000..f1fd29d0d3 --- /dev/null +++ b/gnu/packages/patches/webrtc-for-telegram-desktop-fix-gcc12-cstdint.patch @@ -0,0 +1,21 @@ +From 86d2bcd7afb8706663d29e30f65863de5a626142 Mon Sep 17 00:00:00 2001 +From: Xiretza +Date: Sun, 15 May 2022 12:47:41 +0200 +Subject: [PATCH] fix(h265_pps_parser): fix missing cstdint include + +--- + src/common_video/h265/h265_pps_parser.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/common_video/h265/h265_pps_parser.h b/src/common_video/h265/h265_pps_parser.h +index 28c95ea9..c180b1b9 100644 +--- a/src/common_video/h265/h265_pps_parser.h ++++ b/src/common_video/h265/h265_pps_parser.h +@@ -12,6 +12,7 @@ + #define COMMON_VIDEO_H265_PPS_PARSER_H_ + + #include "absl/types/optional.h" ++#include + + namespace rtc { + class BitBuffer; diff --git a/gnu/packages/telegram.scm b/gnu/packages/telegram.scm index b67f0358a7..6ae7311cfa 100644 --- a/gnu/packages/telegram.scm +++ b/gnu/packages/telegram.scm @@ -30,6 +30,8 @@ (define-module (gnu packages telegram) #:use-module (gnu packages digest) #:use-module (gnu packages fcitx) #:use-module (gnu packages fcitx5) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) @@ -58,6 +60,7 @@ (define-module (gnu packages telegram) #:use-module (gnu packages tls) #:use-module (gnu packages video) #:use-module (gnu packages web) + #:use-module (gnu packages xdisorg) #:use-module (gnu packages xiph) #:use-module (gnu packages xorg) #:use-module ((guix licenses) #:prefix license:) @@ -74,35 +77,35 @@ (define-module (gnu packages telegram) (define %telegram-version "2.9.3") -(define libvpx-for-telegram-desktop - (let ((commit "5b63f0f821e94f8072eb483014cfc33b05978bb9") - (revision "112")) +(define libyuv-for-telegram-desktop + (let ((commit "ad890067f661dc747a975bc55ba3767fe30d4452") + (revision "2211")) (origin (method git-fetch) (uri (git-reference - (url "https://chromium.googlesource.com/webm/libvpx") + (url "https://chromium.googlesource.com/libyuv/libyuv") (commit commit))) (file-name (git-file-name - "libvpx-for-telegram-desktop" - (git-version "1.9.0" revision commit))) + "libyuv-for-telegram-desktop" + (git-version "0" revision commit))) (sha256 (base32 - "1psvxaddihlw1k5n0anxif3qli6zyw2sa2ywn6mkb8six9myrp68"))))) + "01knnk4h247rq536097n9n3s3brxlbby3nv3ppdgsqfda3k159ll"))))) -(define libyuv-for-telegram-desktop - (let ((commit "ad890067f661dc747a975bc55ba3767fe30d4452") - (revision "2211")) +(define crc32c-for-telegram-desktop + (let ((commit "21fc8ef30415a635e7351ffa0e5d5367943d4a94") + (revision "78")) (origin (method git-fetch) (uri (git-reference - (url "https://chromium.googlesource.com/libyuv/libyuv") + (url "https://github.com/google/crc32c") (commit commit))) (file-name (git-file-name - "libyuv-for-telegram-desktop" + "crc32c-for-telegram-desktop" (git-version "0" revision commit))) (sha256 (base32 - "01knnk4h247rq536097n9n3s3brxlbby3nv3ppdgsqfda3k159ll"))))) + "0cddf8z7v33gfb2k60lkzwa97g20m1v81cnvllm3q9ylpnx8g6f4"))))) (define cmake-helpers-for-telegram-desktop (origin @@ -297,8 +300,8 @@ (define tgcalls-for-telegram-desktop "0fvad87hyxli83xn19mgf8jjrrh6y6iaig14pckpbkg33vf4wqkj")))) (define-public webrtc-for-telegram-desktop - (let ((commit "91d836dc84a16584c6ac52b36c04c0de504d9c34") - (revision "166")) + (let ((commit "621f3da55331733bf0d1b223786b96b68c03dca1") + (revision "327")) (hidden-package (package (name "webrtc-for-telegram-desktop") @@ -314,57 +317,61 @@ (define-public webrtc-for-telegram-desktop (file-name (git-file-name name version)) (sha256 - (base32 "0plwdp6xgxi27hif5j7kpq425cidxyxbbga3z2f64dsninwy5p1x")) + (base32 "1ks1572k1jj7pmzwm79p2gdgi31dd4bs761bphnx32zyq4c6skxk")) + (patches + (search-patches + ;; https://github.com/desktop-app/tg_owt/pull/101 + "webrtc-for-telegram-desktop-fix-gcc12-cstdint.patch")) (modules '((guix build utils) (ice-9 ftw) (srfi srfi-1))) (snippet #~(begin (let ((keep - '( ;; Custom forks which are incompatible with the ones in Guix. - "abseil-cpp" "libsrtp" "openh264" "rnnoise" + '("abseil-cpp" "libsrtp" "rnnoise" ;; Not available in Guix. - "pffft" "usrsctp" - ;; Has cmake support files for libvpx input. - "libvpx"))) + "crc32c" "pffft"))) (with-directory-excursion "src/third_party" (for-each delete-file-recursively (lset-difference string=? (scandir ".") - (cons* "." ".." keep))))))))) + (cons* "." ".." keep))))) + ;; Use system openh264. + (substitute* "CMakeLists.txt" + (("\\include\\(cmake\\/libopenh264\\.cmake\\)")"")))))) (build-system cmake-build-system) (arguments - (list #:tests? #f ; No target - #:configure-flags - #~`("-DCMAKE_C_FLAGS=-fPIC" - "-DCMAKE_CXX_FLAGS=-fPIC") + (list #:tests? #f ; No target #:phases #~(modify-phases %standard-phases (add-after 'unpack 'copy-inputs (lambda _ - (let* ((libvpx-to (string-append (getcwd) - "/src/third_party/libvpx/source/libvpx")) - (libyuv-to (string-append (getcwd) - "/src/third_party/libyuv"))) - (copy-recursively #$libvpx-for-telegram-desktop libvpx-to) - (copy-recursively #$libyuv-for-telegram-desktop libyuv-to))))))) - (native-inputs (list perl pkg-config python-wrapper yasm)) + (copy-recursively + #$libyuv-for-telegram-desktop + (string-append (getcwd) "/src/third_party/libyuv")) + (copy-recursively + #$crc32c-for-telegram-desktop + (string-append (getcwd) "/src/third_party/crc32c/src"))))))) + (native-inputs (list pkg-config python-wrapper yasm)) (inputs - (list alsa-lib + (list abseil-cpp-cxxstd17 ffmpeg libjpeg-turbo - glib - libxcomposite - libxdamage - libxrender - libxrandr + libvpx + openh264 openssl opus - pipewire + ;; TG_OWT_USE_PROTOBUF protobuf - pulseaudio - libx11 + ;; TG_OWT_USE_PIPEWIRE + glib libdrm libglvnd mesa pipewire-0.3 + ;; TG_OWT_USE_X11 + libxcomposite + libxdamage libxext + libxfixes + libxrandr + libxrender libxtst)) (synopsis "WebRTC support for Telegram Desktop") (description "WebRTC-for-Telegram-Desktop is a custom WebRTC fork by @@ -376,13 +383,11 @@ (define-public webrtc-for-telegram-desktop license:asl2.0 ;; LibYuv (license:non-copyleft "file:///src/third_party/libyuv/LICENSE") - ;; OpenH264 - license:bsd-2 ;; PFFFT (license:non-copyleft "file:///src/third_party/pffft/LICENSE") ;; RnNoise license:gpl3 - ;; LibSRTP, LibVPx, UsrSCTP and Others + ;; LibSRTP, Crc32c and Others license:bsd-3)))))) (define-public rlottie-for-telegram-desktop