Skip to content

Commit

Permalink
Merge pull request #44840 from nicknovitski/mruby-init
Browse files Browse the repository at this point in the history
mruby: init at 1.4.1
  • Loading branch information
samueldr committed Aug 10, 2018
2 parents f51dc2a + 53bfb47 commit cfb7ccb
Show file tree
Hide file tree
Showing 3 changed files with 76 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
From f3db284516105fd30b5513a5528104574a7b8545 Mon Sep 17 00:00:00 2001
From: Samuel Dionne-Riel <samuel@dionne-riel.com>
Date: Thu, 9 Aug 2018 19:07:45 -0400
Subject: [PATCH] Disables `IO#isatty` test for sandboxed builds.

---
mrbgems/mruby-io/test/io.rb | 13 -------------
1 file changed, 13 deletions(-)

diff --git a/mrbgems/mruby-io/test/io.rb b/mrbgems/mruby-io/test/io.rb
index e06b1499..e8a54736 100644
--- a/mrbgems/mruby-io/test/io.rb
+++ b/mrbgems/mruby-io/test/io.rb
@@ -342,19 +342,6 @@ assert('IO#_read_buf') do
io.closed?
end

-assert('IO#isatty') do
- skip "isatty is not supported on this platform" if MRubyIOTestUtil.win?
- f1 = File.open("/dev/tty")
- f2 = File.open($mrbtest_io_rfname)
-
- assert_true f1.isatty
- assert_false f2.isatty
-
- f1.close
- f2.close
- true
-end
-
assert('IO#pos=, IO#seek') do
fd = IO.sysopen $mrbtest_io_rfname
io = IO.new fd
--
2.16.4

38 changes: 38 additions & 0 deletions pkgs/development/compilers/mruby/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
{ stdenv, ruby, bison, fetchFromGitHub }:

stdenv.mkDerivation rec {
name = "mruby-${version}";
version = "1.4.1";

src = fetchFromGitHub {
owner = "mruby";
repo = "mruby";
rev = version;
sha256 = "0pw72acbqgs4n1qa297nnja23v9hxz9g7190yfx9kwm7mgbllmww";
};

patches = [
./0001-Disables-IO-isatty-test-for-sandboxed-builds.patch
];

nativeBuildInputs = [ ruby bison ];

# Necessary so it uses `gcc` instead of `ld` for linking.
# https://github.com/mruby/mruby/blob/35be8b252495d92ca811d76996f03c470ee33380/tasks/toolchains/gcc.rake#L25
preBuild = if stdenv.isLinux then "unset LD" else null;

installPhase = ''
mkdir $out
cp -R build/host/{bin,lib} $out
'';

doCheck = true;

meta = with stdenv.lib; {
description = "An embeddable implementation of the Ruby language";
homepage = https://mruby.org;
maintainers = [ maintainers.nicknovitski ];
license = licenses.mit;
platforms = platforms.unix;
};
}
2 changes: 2 additions & 0 deletions pkgs/top-level/all-packages.nix
Original file line number Diff line number Diff line change
Expand Up @@ -7632,6 +7632,8 @@ with pkgs;

ruby = ruby_2_4;

mruby = callPackage ../development/compilers/mruby { };

scsh = callPackage ../development/interpreters/scsh { };

scheme48 = callPackage ../development/interpreters/scheme48 { };
Expand Down

0 comments on commit cfb7ccb

Please sign in to comment.