From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ben Woodcroft Subject: [PATCH] Add yaggo. Date: Wed, 24 Jun 2015 14:35:03 +1000 Message-ID: <558A3377.6060301@uq.edu.au> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------070305040908010601030007" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:37525) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z7cQd-000755-G0 for guix-devel@gnu.org; Wed, 24 Jun 2015 00:36:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Z7cQZ-0000Nc-CJ for guix-devel@gnu.org; Wed, 24 Jun 2015 00:36:51 -0400 Received: from mailhub1.soe.uq.edu.au ([130.102.132.208]:44248 helo=newmailhub.uq.edu.au) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z7cQY-0000MG-Qe for guix-devel@gnu.org; Wed, 24 Jun 2015 00:36:47 -0400 Received: from smtp2.soe.uq.edu.au (smtp2.soe.uq.edu.au [10.138.113.41]) by newmailhub.uq.edu.au (8.14.5/8.14.5) with ESMTP id t5O4Z5GZ036170 for ; Wed, 24 Jun 2015 14:35:06 +1000 Received: from [192.168.1.101] ([103.25.181.216]) (authenticated bits=0) by smtp2.soe.uq.edu.au (8.14.5/8.14.5) with ESMTP id t5O4Z4Ad030078 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for ; Wed, 24 Jun 2015 14:35:05 +1000 List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: "guix-devel@gnu.org" This is a multi-part message in MIME format. --------------070305040908010601030007 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Actually, I lie, this patch only sort of works. The issue is that it only works when a ruby package is also installed, GEM_PATH does not get set as part of the ruby-build-system for yaggo. The lib/ files are copied to what I gather is the correct place, but the env isn't right. The same also appears to be true of other ruby packages e.g. ruby-hoe: $ guix package -i ruby-hoe .. ben@u:~/git/guix$ guix package --search-paths warning: failed to install locale: Invalid argument export PATH="/home/ben/.guix-profile/bin:/home/ben/.guix-profile/sbin" export PYTHONPATH="/home/ben/.guix-profile/lib/python3.4/site-packages" export PKG_CONFIG_PATH="/home/ben/.guix-profile/lib/pkgconfig:/home/ben/.guix-profile/share/pkgconfig" export GUILE_LOAD_PATH="/home/ben/.guix-profile/share/guile/site/2.0" export GUILE_LOAD_COMPILED_PATH="/home/ben/.guix-profile/share/guile/site/2.0" export CPATH="/home/ben/.guix-profile/include" export LIBRARY_PATH="/home/ben/.guix-profile/lib" export ACLOCAL_PATH="/home/ben/.guix-profile/share/aclocal" i.e. no GEM_PATH entry, hence: $ sow -h /gnu/store/9iifw37m8vd5bkj0fh67ndc5f2da46wb-ruby-2.2.2/lib/ruby/2.2.0/rubygems/dependency.rb:315:in `to_specs': Could not find 'hoe' (>= 0) among 9 total gem(s) (Gem::LoadError) Checked in 'GEM_PATH=/home/ben/.gem/ruby/2.2.0:/gnu/store/9iifw37m8vd5bkj0fh67ndc5f2da46wb-ruby-2.2.2/lib/ruby/gems/2.2.0', execute `gem env` for more information from /gnu/store/9iifw37m8vd5bkj0fh67ndc5f2da46wb-ruby-2.2.2/lib/ruby/2.2.0/rubygems/dependency.rb:324:in `to_spec' from /gnu/store/9iifw37m8vd5bkj0fh67ndc5f2da46wb-ruby-2.2.2/lib/ruby/2.2.0/rubygems/core_ext/kernel_gem.rb:64:in `gem' from /home/ben/.guix-profile/bin/sow:22:in `
' Files are there though: $ ls /home/ben/.guix-profile/lib/ruby/gems/2.2.0/gems/ hoe-3.13.1 yaggo-1.5.4 FYI: I actually only care about yaggo because it is a build dependency of jellyfish, but I'm having some problems with make check so no patch yet. Thanks, ben --------------070305040908010601030007 Content-Type: text/x-patch; name="0001-gnu-Add-yaggo.patch" Content-Disposition: attachment; filename="0001-gnu-Add-yaggo.patch" Content-Transfer-Encoding: quoted-printable X-MIME-Autoconverted: from 8bit to quoted-printable by newmailhub.uq.edu.au id t5O4Z5GZ036170 >From d220bdeac89660108de96a96107daf89182310e0 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Wed, 24 Jun 2015 14:32:26 +1000 Subject: [PATCH] gnu: Add yaggo. * gnu/packages/ruby.scm (yaggo): New variable. --- gnu/packages/ruby.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index af87cf5..19006d3 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -3,6 +3,7 @@ ;;; Copyright =C2=A9 2014 Ludovic Court=C3=A8s ;;; Copyright =C2=A9 2014, 2015 Mark H Weaver ;;; Copyright =C2=A9 2014 David Thompson +;;; Copyright =C2=A9 2015 Ben Woodcroft ;;; ;;; This file is part of GNU Guix. ;;; @@ -697,3 +698,34 @@ options and parsing command line flags.") net/http library.") (home-page "https://github.com/nicksieger/multipart-post") (license license:expat))) + +(define-public yaggo + (package + (name "yaggo") + (version "1.5.4") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/gmarcais/yaggo/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1mxfvrim03xg80agws9zdpk00r0kjpqhw3xbli0w8wvsnsa274y3")))) + (build-system ruby-build-system) + (arguments + `(#:tests? #f ;; no rake test, and Makefile in test/ appears malform= ed + #:phases + (modify-phases %standard-phases + (replace 'build + (lambda* _ + (zero? (system* "rake" + "gem"))))))) + (synopsis "Generate C++ command line parsers using getopt_long") + (description "Yaggo is a tool to generate command line parsers for +C++. Yaggo stands for 'Yet Another GenGetOpt' and is inspired by GNU +Gengetopt. It reads a configuration file describing the switches and ar= gument +for a C++ program and it generates one header file that parses the comma= nd +line using getopt_long(3).") + (home-page "https://github.com/gmarcais/yaggo") + (license license:gpl3+))) --=20 2.1.4 --------------070305040908010601030007--