From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:38292) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iZsXQ-00030e-GE for guix-patches@gnu.org; Wed, 27 Nov 2019 03:19:05 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iZsXP-0003bX-7C for guix-patches@gnu.org; Wed, 27 Nov 2019 03:19:04 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:47436) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iZsXO-0003bE-MW for guix-patches@gnu.org; Wed, 27 Nov 2019 03:19:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1iZsXO-0001GT-Hd for guix-patches@gnu.org; Wed, 27 Nov 2019 03:19:02 -0500 Subject: [bug#38325] [PATCH] gnu: Add tdlib. Resent-Message-ID: From: Brett Gilio References: <87mucnviyy.fsf@posteo.net> <87blsx91w0.fsf@posteo.net> Date: Wed, 27 Nov 2019 02:18:38 -0600 In-Reply-To: <87blsx91w0.fsf@posteo.net> (Brett Gilio's message of "Wed, 27 Nov 2019 02:09:19 -0600") Message-ID: <8736e920m9.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 38325@debbugs.gnu.org Brett Gilio writes: > From d584c09c37d8e2b70fb5b6b1b2c685698f7ac73d Mon Sep 17 00:00:00 2001 > From: Brett Gilio > Date: Wed, 27 Nov 2019 02:08:02 -0600 > Subject: [PATCH] gnu: Add tdlib. > > * gnu/packages/messaging.scm (tdlib): New variable. > --- > gnu/packages/messaging.scm | 47 ++++++++++++++++++++++++++++++++++++++ > 1 file changed, 47 insertions(+) > > diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm > index 33e752c9a0..b268805b9b 100644 > --- a/gnu/packages/messaging.scm > +++ b/gnu/packages/messaging.scm > @@ -16,6 +16,7 @@ > ;;; Copyright =C2=A9 2018 Leo Famulari > ;;; Copyright =C2=A9 2018 Pierre-Antoine Rouby > ;;; Copyright =C2=A9 2019 Tanguy Le Carrour > +;;; Copyright =C2=A9 2019 Brett Gilio > ;;; > ;;; This file is part of GNU Guix. > ;;; > @@ -57,6 +58,7 @@ > #:use-module (gnu packages glib) > #:use-module (gnu packages gnome) > #:use-module (gnu packages gnupg) > + #:use-module (gnu packages gperf) > #:use-module (gnu packages gtk) > #:use-module (gnu packages guile) > #:use-module (gnu packages icu4c) > @@ -72,6 +74,7 @@ > #:use-module (gnu packages pcre) > #:use-module (gnu packages perl) > #:use-module (gnu packages photo) > + #:use-module (gnu packages php) > #:use-module (gnu packages pkg-config) > #:use-module (gnu packages protobuf) > #:use-module (gnu packages python) > @@ -1946,4 +1949,48 @@ Telegram messenger.") > ;; itself is GPLv2+. > (license license:gpl2+))) >=20=20 > +(define-public tdlib > + (let ((commit "afca63a4f43531058a079e91eb5c81f54ad744b5") > + (revision "1") > + (version "1.5.0")) > + (package > + (name "tdlib") > + (version (git-version version revision commit)) > + (source (origin > + (method git-fetch) > + (uri (git-reference > + (url "https://github.com/tdlib/td.git") > + (commit commit))) > + (sha256 > + (base32 > + "1aa3p4k32mfshgc6fv58gwg8pnaix39rv455hfx6znj7llr8na6k"= )) > + (file-name (git-file-name name version)))) > + (build-system cmake-build-system) > + (arguments > + `(#:tests? #t > + #:phases > + (modify-phases %standard-phases > + (add-after 'unpack 'remove-failing-tests > + (lambda _ > + (substitute* "test/CMakeLists.txt" > + ;; The test cases are compiled into a distinct binary > + ;; which uses mtproto.cpp to attempt to connect to > + ;; a remote server. Removing this file from the sources > + ;; list disables those specific test cases. > + (("\\$\\{CMAKE_CURRENT_SOURCE_DIR\\}/mtproto.cpp") "")) > + #t))))) > + (native-inputs > + `(("gperf" ,gperf) > + ("openssl" ,openssl) > + ("zlib" ,zlib) > + ("php" ,php) > + ("doxygen" ,doxygen))) > + (synopsis "Cross-platform library for building Telegram clients") > + (description "Tdlib is a cross-platform library for creating custom > +Telegram clients following the official Telegram API. It can be easily = used > +from almost any programming language with a C-FFI and features first-cla= ss > +support for high performance Telegram Bot creation.") > + (home-page "https://core.telegram.org/tdlib") > + (license license:boost1.0)))) > + > ;;; messaging.scm ends here Ludo, Hopefully this one is better. I also described how I rectified the issue with the test suite. I suppose I could have removed #:tests? #t, but I was just happy I believe I found the right solution. The test suite for this project is more than a little unconventional (at least to my experience). Brett Gilio