gnu: Add telegram-purple.
* gnu/packages/messaging.scm (telegram-purple): New variable. * gnu/packages/patches/telegram-purple-adjust-test.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Co-authored-by: Ludovic Courtès <ludo@gnu.org>master
parent
932d160056
commit
e9a041577a
|
@ -1166,6 +1166,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/tcsh-fix-out-of-bounds-read.patch \
|
%D%/packages/patches/tcsh-fix-out-of-bounds-read.patch \
|
||||||
%D%/packages/patches/teensy-loader-cli-help.patch \
|
%D%/packages/patches/teensy-loader-cli-help.patch \
|
||||||
%D%/packages/patches/teeworlds-use-latest-wavpack.patch \
|
%D%/packages/patches/teeworlds-use-latest-wavpack.patch \
|
||||||
|
%D%/packages/patches/telegram-purple-adjust-test.patch \
|
||||||
%D%/packages/patches/texi2html-document-encoding.patch \
|
%D%/packages/patches/texi2html-document-encoding.patch \
|
||||||
%D%/packages/patches/texi2html-i18n.patch \
|
%D%/packages/patches/texi2html-i18n.patch \
|
||||||
%D%/packages/patches/thefuck-test-environ.patch \
|
%D%/packages/patches/thefuck-test-environ.patch \
|
||||||
|
|
|
@ -1763,4 +1763,86 @@ non-interoperable protocol, which allows it to support features like group
|
||||||
messaging that aren’t available to clients that connect over XMPP.")
|
messaging that aren’t available to clients that connect over XMPP.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
|
(define-public telegram-purple
|
||||||
|
(package
|
||||||
|
(name "telegram-purple")
|
||||||
|
(version "1.3.1")
|
||||||
|
(home-page "https://github.com/majn/telegram-purple")
|
||||||
|
(source (origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url home-page)
|
||||||
|
(commit (string-append "v" version))
|
||||||
|
(recursive? #t)))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0p93jpjpx7hszwffzgixw04zkrpsiyzz4za3gfr4j07krc4771fp"))
|
||||||
|
(modules '((guix build utils)))
|
||||||
|
(snippet
|
||||||
|
'(begin
|
||||||
|
(substitute* "Makefile.in"
|
||||||
|
;; By default these two directories point to Pidgin's own
|
||||||
|
;; prefix.
|
||||||
|
(("^PLUGIN_DIR_PURPLE=.*")
|
||||||
|
(string-append
|
||||||
|
"exec_prefix := @exec_prefix@\n"
|
||||||
|
"PLUGIN_DIR_PURPLE := @libdir@/purple-2\n"))
|
||||||
|
(("^DATA_ROOT_DIR_PURPLE=.*")
|
||||||
|
"DATA_ROOT_DIR_PURPLE := @datarootdir@\n")
|
||||||
|
|
||||||
|
;; Honor sysconfdir instead of trying to write to /etc.
|
||||||
|
(("DESTDIR\\)/etc/telegram-purple")
|
||||||
|
"DESTDIR)@sysconfdir@/telegram-purple"))
|
||||||
|
#t))
|
||||||
|
(patches (search-patches "telegram-purple-adjust-test.patch"))
|
||||||
|
(file-name (git-file-name name version))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(native-inputs
|
||||||
|
`(("pkg-config" ,pkg-config)
|
||||||
|
("which" ,which)))
|
||||||
|
(inputs
|
||||||
|
`(("pidgin" ,pidgin)
|
||||||
|
("libgcrypt" ,libgcrypt)
|
||||||
|
("libwebp" ,libwebp)
|
||||||
|
("glib" ,glib)
|
||||||
|
("gettext" ,gnu-gettext)
|
||||||
|
("gtk+" ,gtk+-2)
|
||||||
|
("zlib" ,zlib)))
|
||||||
|
(arguments
|
||||||
|
`(#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
;; We're using release tag for repository checkout - let's prepare
|
||||||
|
;; header defining GIT_COMMIT manually instead of running git to
|
||||||
|
;; identify version which is being compiled. Git repository
|
||||||
|
;; is removed anyway and only source code is kept.
|
||||||
|
(add-after 'unpack 'prepare-commit.h
|
||||||
|
(lambda _
|
||||||
|
(with-output-to-file "./commit.h"
|
||||||
|
(lambda ()
|
||||||
|
(display
|
||||||
|
(string-append "//generated by guix, use version instead of "
|
||||||
|
"commit\n"
|
||||||
|
"#ifndef GIT_COMMIT\n"
|
||||||
|
"# define GIT_COMMIT \"v"
|
||||||
|
,version "\"\n"
|
||||||
|
"#endif\n"))))
|
||||||
|
#t))
|
||||||
|
(add-before 'configure 'set-SHELL-variables
|
||||||
|
;; Set these environment variables so that 'tgl/configure' uses the
|
||||||
|
;; right shell and not /bin/sh.
|
||||||
|
(lambda _
|
||||||
|
(let ((bash (which "bash")))
|
||||||
|
(setenv "SHELL" bash)
|
||||||
|
(setenv "CONFIG_SHELL" bash)
|
||||||
|
#t))))))
|
||||||
|
(synopsis "Telegram messaging support for Pidgin")
|
||||||
|
(description
|
||||||
|
"Telegram-purple is a plugin for Libpurple, the communication library
|
||||||
|
used by the Pidgin instant messaging client, that adds support for the
|
||||||
|
Telegram messenger.")
|
||||||
|
|
||||||
|
;; Code under tgl/ (the Telegram library) is LGPLv2.1+, but the plugin
|
||||||
|
;; itself is GPLv2+.
|
||||||
|
(license license:gpl2+)))
|
||||||
|
|
||||||
;;; messaging.scm ends here
|
;;; messaging.scm ends here
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
This test incorrectly expects the libpurple search path to initially
|
||||||
|
contain exactly one element. Remove this incorrect assertion.
|
||||||
|
|
||||||
|
--- telegram-purple-1.3.1-checkout/test/loadtest.c 2018-10-27 16:25:06.258459600 +0200
|
||||||
|
+++ telegram-purple-1.3.1-checkout/test/loadtest.c 2018-10-27 16:25:11.830434770 +0200
|
||||||
|
@@ -156,7 +156,7 @@ static void tdf_inject_plugin (void) {
|
||||||
|
printf ("Injecting our module into purple_plugins_* ...\n");
|
||||||
|
purple_plugins_init ();
|
||||||
|
GList *search_paths = purple_plugins_get_search_paths ();
|
||||||
|
- assert (!search_paths->prev && !search_paths->next && search_paths->data);
|
||||||
|
+ assert (!search_paths->prev && search_paths->data);
|
||||||
|
GList *new_paths = g_list_append (search_paths, g_strdup ("bin/"));
|
||||||
|
assert (new_paths == search_paths);
|
||||||
|
// Load "my" path before the default.
|
Reference in New Issue