unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Pjotr Prins <pjotr.public12@thebird.nl>
To: guix-devel <guix-devel@gnu.org>
Subject: [PATCH] New ruby package
Date: Sat, 27 Sep 2014 14:29:03 +0200	[thread overview]
Message-ID: <20140927122903.GA3999@thebird.nl> (raw)
In-Reply-To: <20140504175144.GA28798@thebird.nl>

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

Working Ruby package. Next step is to get gems working locally.

[-- Attachment #2: ruby-new.patch --]
[-- Type: text/x-diff, Size: 4358 bytes --]

diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
new file mode 100644
index 0000000..a13606c
--- /dev/null
+++ b/gnu/packages/ruby.scm
@@ -0,0 +1,99 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Pjotr Prins <pjotr.guix@thebird.nl>
+;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages ruby)
+  #:use-module ((guix licenses)
+                #:select (rl))
+  #:use-module (gnu packages)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages readline)
+  #:use-module (gnu packages openssl)
+  #:use-module (gnu packages autotools)
+  #:use-module (gnu packages libffi)
+  #:use-module (gnu packages gdbm)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix utils)
+  #:use-module (guix build-system gnu)
+;;;  #:use-module (guix build-system trivial))
+)
+
+(define-public ruby
+  (package
+    (name "ruby")
+    (version "2.1.3")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "http://cache.ruby-lang.org/pub/ruby/2.1/"
+                          "ruby-" version ".tar.gz"))
+      ;;; (patch-flags '("p76"))
+      (sha256
+       (base32
+        "00bz6jcbxgnllplk4b9lnyc3w8yd3pz5rn11rmca1s8cn6vvw608"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:test-target "test"
+       #:parallel-tests? #f
+       #:phases
+        (alist-cons-after
+         ;;; minor patch https://bugs.ruby-lang.org/projects/ruby-trunk/repository/revisions/45225/diff/
+         'unpack 'patch-readline  
+         (lambda _
+           (substitute* '( 
+                           "ext/readline/readline.c"
+                        )
+             (("Function ") "rl_hook_func_t ")))
+        (alist-cons-before
+         'configure 'replace-bin-sh
+         (lambda _
+           (substitute* '(
+                          "Makefile.in"
+                          "ext/pty/pty.c"
+                          "io.c"
+                          "lib/mkmf.rb"
+                          "process.c"
+                          "test/rubygems/test_gem_ext_configure_builder.rb"
+                          "test/rdoc/test_rdoc_parser.rb"
+                          "test/ruby/test_rubyoptions.rb"
+                          "test/ruby/test_process.rb"
+                          "test/ruby/test_system.rb"
+                          "tool/rbinstall.rb"
+                          ;;; "tool/config.guess"
+                        )
+             (("/bin/sh") (which "sh"))))
+          %standard-phases))))
+
+    (inputs
+     `(("readline" ,readline)
+       ("autoconf" ,autoconf)
+       ("openssl" ,openssl)
+       ("libffi" ,libffi)
+       ("gdbm" ,gdbm)
+       ("zlib" ,zlib)
+       ))
+
+    (synopsis "Ruby")
+    (home-page "https://www.ruby-lang.org/en/")
+    (synopsis
+     "Ruby programming language")
+    (description
+     "Ruby description")
+    (license rl)))
+
diff --git a/guix/licenses.scm b/guix/licenses.scm
index 23e4458..d9b71d7 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -255,6 +255,11 @@ which may be a file:// URI pointing the package's tree."
            "http://directory.fsf.org/wiki/License:QPLv1.0"
            "http://www.gnu.org/licenses/license-list.html#QPL"))
 
+(define rl
+  (license "Ruby License"
+           "http://directory.fsf.org/wiki/License:Ruby"
+           "https://www.ruby-lang.org/en/about/license.txt"))
+
 (define vim
   (license "Vim"
            "http://directory.fsf.org/wiki/License:Vim7.2"

  parent reply	other threads:[~2014-09-27 12:29 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-04 17:51 Ruby install Pjotr Prins
2014-05-05  8:03 ` Ludovic Courtès
2014-05-05  8:29   ` Pjotr Prins
2014-05-05 11:42     ` Ludovic Courtès
2014-06-04 21:36   ` Ludovic Courtès
2014-06-05  9:57     ` Pjotr Prins
2014-10-27  4:58   ` guile ERROR: Unbound variable: sha256 Pjotr Prins
2014-10-27  9:18     ` Ludovic Courtès
2014-09-27 12:29 ` Pjotr Prins [this message]
2014-09-27 13:06   ` [PATCH] New ruby package Pjotr Prins
2014-09-27 13:44     ` David Thompson
2014-09-28  4:00   ` David Thompson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140927122903.GA3999@thebird.nl \
    --to=pjotr.public12@thebird.nl \
    --cc=guix-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).