From b3148ad0efcc3e5304061a5ca10a2026687af20a Mon Sep 17 00:00:00 2001 From: Raghav Gururajan Date: Mon, 29 Jun 2020 01:39:30 -0400 Subject: [PATCH 10/51] gnu: Add nanomsg. * gnu/packages/networking.scm (nanomsg): New variable. --- gnu/packages/networking.scm | 43 +++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 1e6f70e1ff..692ba7f841 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -119,6 +119,7 @@ #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt) #:use-module (gnu packages readline) + #:use-module (gnu packages ruby) #:use-module (gnu packages samba) #:use-module (gnu packages serialization) #:use-module (gnu packages sqlite) @@ -131,6 +132,48 @@ #:use-module (gnu packages xml) #:use-module (ice-9 match)) +(define-public nanomsg + (package + (name "nanomsg") + (version "1.1.5") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/nanomsg/nanomsg.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "01ddfzjlkf2dgijrmm3j3j8irccsnbgfvjcnwslsfaxnrmrq5s64")))) + (build-system cmake-build-system) + (outputs '("out" "doc")) + (arguments + `(#:configure-flags + (list + "-DNN_ENABLE_COVERAGE=ON") + #:phases + (modify-phases %standard-phases + (add-after 'install 'move-docs + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (doc (assoc-ref outputs "doc"))) + (mkdir-p (string-append doc "/share/doc")) + (rename-file + (string-append out "/share/doc/nanomsg") + (string-append doc "/share/doc/nanomsg")) + #t)))))) + (native-inputs + `(("asciidoctor" ,ruby-asciidoctor) + ("pkg-config" ,pkg-config))) + (synopsis "Scalable socket library") + (description "Nanomsg is a socket library that provides several common +communication patterns. It aims to make the networking layer fast, scalable, +and easy to use. Implemented in C, it works on a wide range of operating +systems with no further dependencies.") + (home-page "https://nanomsg.org/") + (license (license:non-copyleft "file:///COPYING")))) + (define-public blueman (package (name "blueman") -- 2.26.2