[PATCH 0/3] Add weechat-matrix and weechat-wee-slack

  • Done
  • quality assurance status badge
Details
3 participants
  • Arun Isaac
  • Efraim Flashner
  • jgart
Owner
unassigned
Submitted by
Arun Isaac
Severity
normal
A
A
Arun Isaac wrote on 30 Oct 2021 22:21
(address . guix-patches@gnu.org)(name . Arun Isaac)(address . arunisaac@systemreboot.net)
20211030202149.18310-1-arunisaac@systemreboot.net
Hi,

This patchset adds weechat-matrix and weechat-wee-slack. These are scripts
that implement a matrix client and a slack client for weechat.

Regards,
Arun

Arun Isaac (3):
gnu: Add python-webcolors.
gnu: Add weechat-matrix.
gnu: Add weechat-wee-slack.

gnu/packages/messaging.scm | 119 +++++++++++++++++++++++++++++++++++-
gnu/packages/python-web.scm | 40 ++++++++++++
2 files changed, 158 insertions(+), 1 deletion(-)

--
2.33.0
A
A
Arun Isaac wrote on 30 Oct 2021 22:25
[PATCH 1/3] gnu: Add python-webcolors.
(address . 51520@debbugs.gnu.org)(name . Arun Isaac)(address . arunisaac@systemreboot.net)
20211030202514.18639-1-arunisaac@systemreboot.net
* gnu/packages/python-web.scm (python-webcolors): New variable.
---
gnu/packages/python-web.scm | 40 +++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 62de043e70..08e2006a3e 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -44,6 +44,7 @@
;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2021 Pradana Aumars <paumars@courrier.dev>
+;;; Copyright © 2021 Arun Isaac <arunisaac@systemreboot.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -6250,3 +6251,42 @@ (define-public python-w3lib
comments, or tags from HTML snippets, extract base url from HTML snippets,
translate entities on HTML strings, among other things.")
(license license:bsd-3)))
+
+(define-public python-webcolors
+ (package
+ (name "python-webcolors")
+ (version "1.11.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "webcolors" version))
+ (sha256
+ (base32 "1rkda75h2p65zx6r84c9mjavn4xpviqvqrklvdvcklapd5in1wvn"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+ (when tests?
+ (add-installed-pythonpath inputs outputs)
+ (invoke "pytest")))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)))
+ (home-page "https://github.com/ubernostrum/webcolors")
+ (synopsis "HTML/CSS color definitions library")
+ (description "@code{python-webcolors} is a module for working with
+HTML/CSS color definitions. Normalizing and converting between the following
+formats is supported.
+
+@itemize
+@item Specification-defined color names
+@item Six-digit hexadecimal
+@item Three-digit hexadecimal
+@item Integer rgb() triplet
+@item Percentage rgb() triplet
+@end itemize
+
+Only the RGB colorspace is supported. Conversion to/from the HSL colorspace
+can be handled by the @code{colorsys} module in the Python standard library.")
+ (license license:bsd-3)))
--
2.33.0
A
A
Arun Isaac wrote on 30 Oct 2021 22:25
[PATCH 2/3] gnu: Add weechat-matrix.
(address . 51520@debbugs.gnu.org)(name . Arun Isaac)(address . arunisaac@systemreboot.net)
20211030202514.18639-2-arunisaac@systemreboot.net
* gnu/packages/messaging.scm (weechat-matrix): New variable.
---
gnu/packages/messaging.scm | 69 +++++++++++++++++++++++++++++++++++++-
1 file changed, 68 insertions(+), 1 deletion(-)

Toggle diff (87 lines)
diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index d07c1c6566..e684c60c0c 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -9,7 +9,7 @@
;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca>
;;; Copyright © 2016, 2017, 2018, 2019 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com>
-;;; Copyright © 2017, 2018, 2020 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2017, 2018, 2020, 2021 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017–2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
@@ -2992,4 +2992,71 @@ (define-public matterbridge
(home-page "https://github.com/42wim/matterbridge")
(license license:asl2.0)))
+(define-public weechat-matrix
+ (package
+ (name "weechat-matrix")
+ (version "0.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/poljar/weechat-matrix")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1iv55n4k05139f7jzkhczgw4qp6qwilrvfsy3c6v2m1kxffj12d3"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (delete 'build)
+ (replace 'install
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((weechat-python (string-append (assoc-ref outputs "out")
+ "/share/weechat/python")))
+ ;; Avoid circular import by renaming the matrix module to
+ ;; weechat_matrix.
+ (substitute* (cons "main.py"
+ (append (find-files "matrix")
+ (find-files "tests")))
+ (("from matrix") "from weechat_matrix")
+ (("import matrix") "import weechat_matrix"))
+ ;; Install python modules.
+ (invoke "make" "install-lib"
+ (string-append "INSTALLDIR="
+ (site-packages inputs outputs)
+ "/weechat_matrix"))
+ ;; Extend PYTHONPATH to find installed python modules.
+ (add-installed-pythonpath inputs outputs)
+ ;; Augment sys.path so that dependencies are found.
+ (substitute* "main.py"
+ (("import os\n" all)
+ (apply string-append
+ all
+ "import sys\n"
+ (map (lambda (path)
+ (string-append "sys.path.append('" path "')\n"))
+ (string-split (getenv "PYTHONPATH") #\:)))))
+ ;; Install script.
+ (mkdir-p weechat-python)
+ (copy-file "main.py"
+ (string-append weechat-python "/matrix.py")))))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "pytest")))))))
+ (inputs
+ `(("python-matrix-nio" ,python-matrix-nio)
+ ("python-pygments" ,python-pygments)
+ ("python-pyopenssl" ,python-pyopenssl)
+ ("python-webcolors" ,python-webcolors)))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)))
+ (home-page "https://github.com/poljar/weechat-matrix")
+ (synopsis "Weechat Matrix protocol script")
+ (description "@code{weechat-matrix} is a Python plugin for Weechat that lets
+Weechat communicate over the Matrix protocol.")
+ (license license:isc)))
+
;;; messaging.scm ends here
--
2.33.0
A
A
Arun Isaac wrote on 30 Oct 2021 22:25
[PATCH 3/3] gnu: Add weechat-wee-slack.
(address . 51520@debbugs.gnu.org)(name . Arun Isaac)(address . arunisaac@systemreboot.net)
20211030202514.18639-3-arunisaac@systemreboot.net
* gnu/packages/messaging.scm (weechat-wee-slack): New variable.
---
gnu/packages/messaging.scm | 50 ++++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)

Toggle diff (61 lines)
diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index e684c60c0c..60a9fc3033 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -3059,4 +3059,54 @@ (define-public weechat-matrix
Weechat communicate over the Matrix protocol.")
(license license:isc)))
+(define-public weechat-wee-slack
+ (package
+ (name "weechat-wee-slack")
+ (version "2.8.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/wee-slack/wee-slack")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0xfklr0gsc9jgxfyrrb2j756lclz9g8imcb0pk0xgyj8mhsw23zk"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (delete 'build)
+ (replace 'install
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ ;; Augment sys.path so that dependencies are found.
+ (substitute* "wee_slack.py"
+ (("import sys\n" all)
+ (apply string-append
+ all
+ (map (lambda (path)
+ (string-append "sys.path.append('" path "')\n"))
+ (string-split (getenv "PYTHONPATH") #\:)))))
+ ;; Install script.
+ (install-file "wee_slack.py"
+ (string-append (assoc-ref outputs "out")
+ "/share/weechat/python"))))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "pytest")))))))
+ (inputs
+ `(("python-websocket-client" ,python-websocket-client)))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)))
+ (home-page "https://github.com/wee-slack/wee-slack")
+ (synopsis "Weechat Slack script")
+ (description "@code{weechat-wee-slack} is a WeeChat native client for
+Slack. It provides supplemental features only available in the web/mobile
+clients such as synchronizing read markers, typing notification, threads (and
+more)! It connects via the Slack API, and maintains a persistent websocket
+for notification of events.")
+ (license license:expat)))
+
;;; messaging.scm ends here
--
2.33.0
J
Just what I needed!
(address . 51520@debbugs.gnu.org)
20211030191724.GB14778@gac.attlocal.net
Just what I needed!

:)
E
E
Efraim Flashner wrote on 7 Nov 2021 22:00
Re: [bug#51520] [PATCH 0/3] Add weechat-matrix and weechat-wee-slack
(address . 51520-done@debbugs.gnu.org)
YYg+d4XgRZci4Ex+@3900XT
Thanks. Patches pushed.

--
Efraim Flashner <efraim@flashner.co.il> ????? ?????
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAmGIPncACgkQQarn3Mo9
g1ESOw/+OLEDn2y2XwnrqS3mSSH8OMDb4klRihgkeZa4SGAONZ6u3U0M1cvc5Yxm
rcXovoImwj5y1bjYQNTdZw3NSBwiF3FOReo0u4kMjk8Jo09E8RNQpTJnZeJV4xU1
xZHSq0M6FmTHBg8ygcPMSLXI/0iPvzWWcESa3r20SJyFNWne5YYeFYnqadbrSN3u
aNhP9T2sW+0MUArnhZoYke0JEKIFbGeR8ori4I2nx3Oz5OKbw6YwNvRE2ulI3oVK
sRP7R7+o6JTjgLhSSjRZKs6/tmC+rzZTCliCTVo0kRc1HnOh8HvZhrRkwkzb88vI
9XIFVE+6zIrQ5t6gPJc32qXYffzdWiJO/Advbxa8smb0ACKa16m7mZyWJuZYRyX4
54yaXWQ3Xt9YQvGRcoOFbctAMvYptnXU2fqGMiHYCVeLc5uSnBmN1KyMpOmMY4aF
CaZT8URnAI1hGZO+Z01kGMBOIAAI9CqSTHpTt+ukdj6TUyKIDfmSWNXO12ttUOTN
PnqddZiIJVTJxSj0lzk+tIPT1clmSqgK6Az1MUyeWIVUQMs3gXG96gs59qwqHKSl
1QRfeaSAU09rp3e7bKQssuHdUD82ZGAiC5yOD5/ar2XaOkeMeR7YukNgmOcJ7PuX
eWADAXbFmiNMh4zIgPG8sxMOzKcJRt60c5Gd6KGpb33xEJJZdCs=
=IC/E
-----END PGP SIGNATURE-----


Closed
?