From patchwork Sun Feb 17 19:22:45 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christopher Baines X-Patchwork-Id: 1115 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 8345416C4B; Sun, 17 Feb 2019 19:24:36 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,UNPARSEABLE_RELAY, URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 23D4616BFF for ; Sun, 17 Feb 2019 19:24:36 +0000 (GMT) Received: from localhost ([127.0.0.1]:45572 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gvS3H-0001Ul-Ik for patchwork@mira.cbaines.net; Sun, 17 Feb 2019 14:24:35 -0500 Received: from eggs.gnu.org ([209.51.188.92]:38183) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gvS2r-00017a-4O for guix-patches@gnu.org; Sun, 17 Feb 2019 14:24:11 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gvS2p-0007Yh-3N for guix-patches@gnu.org; Sun, 17 Feb 2019 14:24:08 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:52368) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gvS2k-0007Vf-QG for guix-patches@gnu.org; Sun, 17 Feb 2019 14:24:04 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1gvS2k-00075c-Lh for guix-patches@gnu.org; Sun, 17 Feb 2019 14:24:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#34514] [PATCH 05/34] gnu: Add ruby-rbnacl. Resent-From: Christopher Baines Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 17 Feb 2019 19:24:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 34514 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 34514@debbugs.gnu.org Received: via spool by 34514-submit@debbugs.gnu.org id=B34514.155043140326972 (code B ref 34514); Sun, 17 Feb 2019 19:24:02 +0000 Received: (at 34514) by debbugs.gnu.org; 17 Feb 2019 19:23:23 +0000 Received: from localhost ([127.0.0.1]:51585 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gvS26-000702-M4 for submit@debbugs.gnu.org; Sun, 17 Feb 2019 14:23:23 -0500 Received: from li622-129.members.linode.com ([212.71.249.129]:47204 helo=mira.cbaines.net) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gvS1z-0006xO-5W for 34514@debbugs.gnu.org; Sun, 17 Feb 2019 14:23:15 -0500 Received: from localhost (130.85.159.143.dyn.plus.net [143.159.85.130]) by mira.cbaines.net (Postfix) with ESMTPSA id AB38D16C50 for <34514@debbugs.gnu.org>; Sun, 17 Feb 2019 19:23:14 +0000 (GMT) Received: from localhost (localhost [local]) by localhost (OpenSMTPD) with ESMTPA id 803819a8 for <34514@debbugs.gnu.org>; Sun, 17 Feb 2019 19:23:14 +0000 (UTC) From: Christopher Baines Date: Sun, 17 Feb 2019 19:22:45 +0000 Message-Id: <20190217192314.5666-5-mail@cbaines.net> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190217192314.5666-1-mail@cbaines.net> References: <87sgwm44a9.fsf@cbaines.net> <20190217192314.5666-1-mail@cbaines.net> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/ruby.scm (ruby-rbnacl): New variable. --- gnu/packages/ruby.scm | 56 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 9bcdbec4fd..b17a03e7cc 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -35,6 +35,7 @@ #:use-module (gnu packages base) #:use-module (gnu packages check) #:use-module (gnu packages compression) + #:use-module (gnu packages crypto) #:use-module (gnu packages databases) #:use-module (gnu packages dbm) #:use-module (gnu packages rails) @@ -1336,6 +1337,61 @@ same log file.") (home-page "https://github.com/bdurand/lumberjack") (license license:expat))) +(define-public ruby-rbnacl + (package + (name "ruby-rbnacl") + (version "6.0.1") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "rbnacl" version)) + (sha256 + (base32 + "0ajxy5kj2jw09wdsla3jmha8w07vj5l14288xr9djpl327g3lzhn")))) + (build-system ruby-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-unnecessary-dependencies + (lambda _ + ;; Coveralls relates to a network service, and Rubocop to code + ;; linting and both are unnecessary to run the tests + (substitute* "Gemfile" + ((".*rubocop.*") "\n") + ((".*guard-rspec.*") "\n") + ((".*coveralls.*") "\n")) + (substitute* "spec/spec_helper.rb" + (("require \"coveralls\"") "") + (("Coveralls.wear!") "")))) + (add-after 'unpack 'use-libsodium-from-store + (lambda* (#:key inputs #:allow-other-keys) + (substitute* '("lib/rbnacl/init.rb" + "lib/rbnacl/sodium.rb") + (("\"sodium\", \"libsodium\\.so\\.18\", \"libsodium\\.so\\.23\"") + (string-append "\"" + (assoc-ref inputs "libsodium") "/lib/libsodium.so" + "\""))))) + ;; Run Rspec directly to avoid the Rubocop dependency in the Rakefile + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "rspec")) + #t))))) + (propagated-inputs + `(("ruby-ffi" ,ruby-ffi))) + (inputs + `(("libsodium" ,libsodium))) + (native-inputs + `(("bundler" ,bundler) + ("ruby-rspec" ,ruby-rspec))) + (synopsis "Ruby FFI binding to libsodium") + (description + "This package provides Ruby FFI bindings to the Networking and +Cryptography (NaCl) library, also known as libsodium. This provides a +high-level toolkit for building cryptographic systems and protocols.") + (home-page "https://github.com/crypto-rb/rbnacl") + (license license:expat))) + (define-public ruby-nenv (package (name "ruby-nenv")