The current master branch and gem version >= 0.2 are compatible with IPython3/Jupyter. If you require IPython2 support, please install an older gem version < 0.2 or use the branch ipython2

IRuby

This is a Ruby kernel for IPython/Jupyter and is part of SciRuby. You can try it at try.jupyter.org.

Screenshot

Quick start

The installation instructions are divided according to environments mainly because of ZeroMQ.

Ubuntu/Debian

At first install IPython/Jupyter. I recommend an installation using virtualenv.

sudo apt-get install python3-dev python-virtualenv
virtualenv -p python3 venv
source venv/bin/activate
pip install 'ipython[notebook]'

After that, install the Ruby gem.

gem install cztop
gem install iruby

Now you can run iruby with:

iruby notebook

Windows

At first install IPython/Jupyter. I recommend an installation using Enthought Canopy.

Run two commands below:

gem install cztop
gem install iruby

Now you can run iruby with:

iruby notebook

Mac

I recommend an installation using Anaconda.

After that, run three commands shown below.

brew install libtool autoconf automake autogen
gem install cztop
gem install iruby

FreeBSD

At first install IPython/Jupyter. There is a pyzmq ports (ports/net/py-pyzmq) which depends on libzmq4, however, it doesn't works with ipython. Therefore we use libzmq3 like the following:

  1. make your ports tree up-to-date.
  2. replace LIBDEPENDS line in ports/net/py-pyzmq/Makefile

    LIB_DEPENDS=    libzmq.so:${PORTSDIR}/net/libzmq4
    

    with

    LIB_DEPENDS=    libzmq.so:${PORTSDIR}/net/libzmq3
    
  3. install related packages

    $ sudo pkg install libzmq3 py27-qt4-gui py27-pexpect-3.3 py27-qt4-svg py27-pygments py27-Jinja2 py27-tornado py27-jsonschema
    
  4. make install using ports

    $ cd /usr/ports/net/py-pyzmq
    $ sudo make install
    $ cd /usr/ports/devel/ipython
    $ sudo make install
    

    Then, install iruby and related ports and gems.

    $ sudo pkg install rubygem-mimemagic
    $ sudo gem install ffi-rzmq  # install ffi, ffi-rzmq-core and ffi-rzmq
    $ git clone https://github.com/SciRuby/iruby.git
    $ cd iruby
    $ gem build iruby.gemspec
    $ sudo gem install iruby-0.2.7.gem
    

    Installation for jRuby

Since jRuby is fully compatible with Ruby version 2.2, it is possible to use iruby with jRuby. It can be helpful if you want to use java classes in your iruby notebook. This will require the following software:

  • jRuby version >= 9.0.4.0
  • cztop gem
  • this iruby gem

After installation, make sure that your env is set up to jruby.

$ env ruby -v

If you use RVM, it is enough to switch the current version to jruby. If you have already used iruby with a different version, you need to generate a new kernel:

$ iruby register --force

After that you can use iruby with jRuby in usual way.

After the installation

Take a look at the example notebook and the collection of notebooks which includes a Dockerfile to create a containerized installation of iruby and other scientific gems. You can find the prebuild image at dockerhub.

Required dependencies

  • IPython/Jupyter >= 3.0.0
  • Ruby >= 2.1.0

If you install IRuby with CZTop, CZMQ >= 4.0.0 is added to the list above.

If you install IRuby with ffi-rzmq, libzmq >= 3.2 is added to the list above.

Authors

See the CONTRIBUTORS file.

License

Copyright © 2013-15, IRuby contributors and the Ruby Science Foundation.

All rights reserved.

IRuby, along with SciRuby, is licensed under the MIT license. See the LICENSE file for details.