unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: Add pybitmessage, [PATCH] gnu: Add python2-pyqt-4, [PATCH] gnu: gnu: messaging: Use license: prefix.
@ 2016-08-23 12:03 ng0
  2016-08-25  9:52 ` ng0
                   ` (2 more replies)
  0 siblings, 3 replies; 13+ messages in thread
From: ng0 @ 2016-08-23 12:03 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 441 bytes --]

These 3 patches enable us to have a functional pybitmessage version
0.6.1, released 2 days ago.

For tests you can use either the test channel which can be found on
bitmessage.org (or in the application itself? I don't know, I'm no
newcomer to this application) or the channel I did setup a while ago
(blame my window manager if there's a typo, the copy & paste is
sometimes stuck):
BM-2cTPsDEX29yRnrAmyfwZhC3RySsK4wnQUA
[chan] gnuguixchan


[-- Attachment #2: 0001-gnu-Add-python2-pyqt-4.patch --]
[-- Type: text/x-patch, Size: 1238 bytes --]

From 8687409cf6f424958e222de9eddf4c77750ecc57 Mon Sep 17 00:00:00 2001
From: ng0 <ng0@we.make.ritual.n0.is>
Date: Tue, 23 Aug 2016 10:13:59 +0000
Subject: [PATCH 1/3] gnu: Add python2-pyqt-4.

* gnu/packages/qt.scm (python2-pyqt-4): New variable.
---
 gnu/packages/qt.scm | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index a7eee7c..99c12aa 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1057,6 +1058,15 @@ contain over 620 classes.")
          %standard-phases)))
     (license (list gpl2 gpl3)))) ; choice of either license
 
+(define-public python2-pyqt-4
+  (package (inherit python-pyqt-4)
+           (name "python2-pyqt-4")
+           (native-inputs
+            `(("python-sip" ,python2-sip)
+              ("qt" ,qt-4)))
+           (inputs
+            `(("python" ,python-2)))))
+
 (define-public qtkeychain
   (package
     (name "qtkeychain")
-- 
2.9.3


[-- Attachment #3: 0002-gnu-messaging-Use-license-prefix.patch --]
[-- Type: text/x-patch, Size: 5633 bytes --]

From 523d7da2b50028826de9f306171a60f77d25625e Mon Sep 17 00:00:00 2001
From: ng0 <ng0@we.make.ritual.n0.is>
Date: Tue, 23 Aug 2016 11:07:17 +0000
Subject: [PATCH 2/3] gnu: messaging: Use license: prefix.

* gnu/packages/disk.scm (define-module): Import guix licenses with a prefix.
(libotr): Use the import prefix.
(bitlbee): Likewise.
(hexchat): Likewise.
(ngircd): Likewise.
(pidgin): Likewise.
(pidgin-otr): Likewise.
(znc): Likewise.
(python-nbxmpp): Likewise.
(gajim): Likewise.
---
 gnu/packages/messaging.scm | 31 +++++++++++++++----------------
 1 file changed, 15 insertions(+), 16 deletions(-)

diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index de9ac17..b0546f2 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -5,6 +5,7 @@
 ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -22,9 +23,7 @@
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
 (define-module (gnu packages messaging)
-  #:use-module ((guix licenses)
-                #:select (gpl3+ gpl2+ gpl2 lgpl2.1 lgpl2.0+ bsd-2 non-copyleft
-                          asl2.0))
+  #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix utils)
   #:use-module (guix packages)
   #:use-module (guix download)
@@ -89,7 +88,7 @@ correspondent is assured the messages he sees are authentic and
 unmodified.  (4) Perfect forward secrecy: If you lose control of your private
 keys, no previous conversation is compromised.")
     (home-page "https://otr.cypherpunks.ca/")
-    (license (list lgpl2.1 gpl2))))
+    (license (list license:lgpl2.1 license:gpl2))))
 
 ;; These patches together fix https://github.com/bitlbee/bitlbee/pull/55, are
 ;; already upstream, and should be unnecessary when the next bitlbee comes
@@ -153,7 +152,7 @@ Google Talk), MSN Messenger, Yahoo!  Messenger, AIM and ICQ, and the Twitter
 microblogging network (plus all other Twitter API compatible services like
 identi.ca and status.net).")
     (home-page "http://www.bitlbee.org/")
-    (license (list gpl2+ bsd-2))))
+    (license (list license:gpl2+ license:bsd-2))))
 
 (define-public hexchat
   (package
@@ -187,7 +186,7 @@ conversation and the list of users.  It uses colors to differentiate between
 users and to highlight messages.  It checks spelling using available
 dictionaries.  HexChat can be extended with multiple addons.")
     (home-page "http://hexchat.net/")
-    (license gpl2+)))
+    (license license:gpl2+)))
 
 (define-public ngircd
   (package
@@ -252,7 +251,7 @@ dictionaries.  HexChat can be extended with multiple addons.")
      "ngIRCd is a lightweight Internet Relay Chat server for small or private
 networks.  It is easy to configure, can cope with dynamic IP addresses, and
 supports IPv6, SSL-protected connections as well as PAM for authentication.")
-    (license gpl2+)))
+    (license license:gpl2+)))
 
 (define-public pidgin
   (package
@@ -326,14 +325,14 @@ supports IPv6, SSL-protected connections as well as PAM for authentication.")
 chat protocols.")
     (license
      (list
-      gpl2+    ; Most of the code
-      lgpl2.1  ; GG protocol plugin (libpurple/protocols/gg/lib)
-      lgpl2.0+ ; OSCAR protocol plugin (libpurple/protocols/oscar)
+      license:gpl2+    ; Most of the code
+      license:lgpl2.1  ; GG protocol plugin (libpurple/protocols/gg/lib)
+      license:lgpl2.0+ ; OSCAR protocol plugin (libpurple/protocols/oscar)
       ;; The following licenses cover the zephyr protocol plugin:
-      (non-copyleft
+      (license:non-copyleft
        "file://libpurple/protocols/zephyr/mit-copyright.h"
        "See libpurple/protocols/zephyr/mit-copyright.h in the distribution.")
-      (non-copyleft
+      (license:non-copyleft
        "file://libpurple/protocols/zephyr/mit-sipb-copyright.h"
        "See libpurple/protocols/zephyr/mit-sipb-copyright.h in the distribution.")))))
 
@@ -373,7 +372,7 @@ you.  However, during a conversation, your correspondent is assured the
 messages he sees are authentic and unmodified.  (4) Perfect forward secrecy:
 If you lose control of your private keys, no previous conversation is
 compromised.")
-    (license gpl2)))
+    (license license:gpl2)))
 
 (define-public znc
   (package
@@ -407,7 +406,7 @@ compromised.")
 client from the actual IRC server, and also from selected channels.  Multiple
 clients from different locations can connect to a single ZNC account
 simultaneously and therefore appear under the same nickname on IRC.")
-    (license asl2.0)))
+    (license license:asl2.0)))
 
 (define-public python-nbxmpp
   (package
@@ -430,7 +429,7 @@ simultaneously and therefore appear under the same nickname on IRC.")
      "The goal of this python library is to provide a way for Python
 applications to use Jabber/XMPP networks in a non-blocking way.  This library
 was initially a fork of xmpppy, but is using non-blocking sockets.")
-    (license gpl3+)))
+    (license license:gpl3+)))
 
 (define-public python2-nbxmpp
   (package-with-python2 python-nbxmpp))
@@ -490,6 +489,6 @@ Among its features are: a tabbed chat window and single window modes; support
 for group chat (with Multi-User Chat protocol), invitation, chat to group chat
 transformation; audio and video conferences; file transfer; TLS, GPG and
 end-to-end encryption support; XML console.")
-    (license gpl3+)))
+    (license license:gpl3+)))
 
 ;;; messaging.scm ends here
-- 
2.9.3


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #4: 0003-gnu-Add-pybitmessage.patch --]
[-- Type: text/x-patch, Size: 5126 bytes --]

From ae2e16e0c6e239d9d3e2ee594772c9d564050ec6 Mon Sep 17 00:00:00 2001
From: ng0 <ng0@we.make.ritual.n0.is>
Date: Tue, 23 Aug 2016 11:51:24 +0000
Subject: [PATCH 3/3] gnu: Add pybitmessage.

* gnu/packages/messaging.scm (pybitmessage): New variable.
---
 gnu/packages/messaging.scm | 95 +++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 94 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index b0546f2..5d4ca3f 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -57,7 +57,8 @@
   #:use-module (gnu packages admin)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages tls)
-  #:use-module (gnu packages icu4c))
+  #:use-module (gnu packages icu4c)
+  #:use-module (gnu packages qt))
 
 (define-public libotr
   (package
@@ -491,4 +492,96 @@ transformation; audio and video conferences; file transfer; TLS, GPG and
 end-to-end encryption support; XML console.")
     (license license:gpl3+)))
 
+(define-public pybitmessage
+  (package
+    (name "pybitmessage")
+    (version "0.6.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/Bitmessage/"
+                           "PyBitmessage/archive/v" version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1ffj7raxpp277kphj98190fxrwfx16vmbspk7k3azg3bh5f5idnf"))))
+    (inputs
+     `(("python" ,python-2)
+       ("python:tk" ,python-2 "tk")
+       ("openssl" ,openssl)
+       ("sqlite" ,sqlite)
+       ("qt" ,qt-4)
+       ("python2-pyqt-4" ,python2-pyqt-4)
+       ("python2-sip" ,python2-sip)
+       ("python2-pysqlite" ,python2-pysqlite)
+       ("python2-pyopenssl" ,python2-pyopenssl)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:imported-modules ((guix build python-build-system)
+                           ,@%gnu-build-system-modules)
+       #:make-flags (list (string-append "PREFIX="
+                                         (assoc-ref %outputs "out")))
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'build 'fix-makefile
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (substitute* "Makefile"
+               (("mkdir -p \\$\\{DESTDIR\\}/usr") "")
+               (("/usr/local") "")
+               (("/usr") "")
+               (("#!/bin/sh") (string-append "#!" (which "bash")))
+               (("python2") (which "python"))
+               (("/opt/openssl-compat-bitcoin/lib/")
+                (string-append (assoc-ref inputs "openssl") "/lib/")))))
+         (add-after 'unpack 'fix-unmatched-python-shebangs
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "src/bitmessagemain.py"
+               (("#!/usr/bin/env python2.7")
+                (string-append "#!" (which "python"))))
+             (substitute* "src/bitmessagecli.py"
+               (("#!/usr/bin/env python2.7.x")
+                (string-append "#!" (which "python"))))))
+         (add-after 'unpack 'fix-depends
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "src/depends.py"
+               (("libcrypto.so")
+                (string-append (assoc-ref inputs "openssl")
+                               "/lib/libcrypto.so")))))
+         (add-after 'unpack 'fix-local-files-in-paths
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (substitute* "src/proofofwork.py"
+               (("bitmsghash.so")
+                (string-append (assoc-ref outputs "out")
+                               "/lib/bitmsghash.so")))))
+         (add-after 'unpack 'fix-pyelliptic
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (substitute* "src/pyelliptic/openssl.py"
+               (("libcrypto.so")
+                (string-append (assoc-ref inputs "openssl")
+                               "/lib/libcrypto.so"))
+               (("libssl.so")
+                (string-append (assoc-ref inputs "openssl")
+                               "/lib/libssl.so")))))
+         ;; XXX: Make does not build and install bitmsghash, do it
+         ;; and place it in /lib.
+         (add-before 'build 'build-and-install-bitmsghash
+           (lambda* (#:key outputs #:allow-other-keys)
+             (chdir "src/bitmsghash")
+             (system* "make")
+             (chdir "../..")
+             (install-file "src/bitmsghash/bitmsghash.so"
+                           (string-append (assoc-ref outputs "out") "/lib"))
+             #t))
+         (add-after 'install 'wrap
+           (@@ (guix build python-build-system) wrap))
+         (delete 'check)))) ; not available
+    (license license:expat)
+    (description
+     "Distributed and trustless peer-to-peer communications protocol
+for sending encrypted messages to one person or many subscribers.")
+    (synopsis "Distributed peer-to-peer communication")
+    (home-page "https://bitmessage.org/")))
+
 ;;; messaging.scm ends here
-- 
2.9.3


[-- Attachment #5: Type: text/plain, Size: 70 bytes --]


-- 
ng0
For non-prism friendly talk find me on http://www.psyced.org

^ permalink raw reply related	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2017-02-15 19:31 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-23 12:03 [PATCH] gnu: Add pybitmessage, [PATCH] gnu: Add python2-pyqt-4, [PATCH] gnu: gnu: messaging: Use license: prefix ng0
2016-08-25  9:52 ` ng0
2016-09-07  8:20   ` Efraim Flashner
2016-09-03 15:54 ` Andreas Enge
2016-09-03 16:47   ` ng0
2016-09-03 19:43     ` Andreas Enge
2016-09-04 12:24       ` ng0
2016-09-04 12:39       ` ng0
2016-09-06 22:09         ` ng0
2016-09-07  6:27           ` Efraim Flashner
2017-02-15 11:52 ` Nancy-Anne Cianci
2017-02-15 13:02   ` ng0
     [not found]     ` <23d678c8-feaf-f7eb-2d08-5ccfb1ea9b92@getbackinthe.kitchen>
2017-02-15 19:33       ` ng0

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).