Skip to content

rifraf/IronRubyAppPackager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Overview

<< Work in progress >>

IronRubyAppPackager is a solution that allows you to ‘compile’1 your application and its libraries into a single standalone .exe file that embeds all of the application source, library and GEM files in embedded resources (compressed) within the executable.

The executable runs using IronRuby.

IronRubyAppPackager is supplied as a simple Ruby application. However it can be ‘dogfooded’. i.e. It can be run on itself and generate the executable IronRubyAppPackager.exe, simplifying deployment. See here.

Example programs are included in this repository for guidance. In particular there is a very simple [[DRB test]] and a [[Sample Sinatra App]].

Run-time dependencies:

  • .Net version 2 needs to be installed on any PC that runs the executable (at the moment)
  • IronRuby (or you can just copy the run-time DLLs to the folder containing the executable)

Package-time dependencies

How do I use it?

Given an existing Ruby application (that runs with IronRuby), just run ir -rvendorize app.rb.

This will copy any require, load or autoload files into the folder .\_vendor_.

You can run the program several times with different options if the required files depend on the options.

Or just run your tests…

Then run IRPackager which will generate a C# project that embeds your source files and _vendor_ files. It will build the project and deliver you a nice shiny .exe file.

Issues

  • Depends on Serfs and IREmbeddedApp, which don’t support all File/IO operations on embedded resources yet. But there is enough to run many apps, and work is continuing. Feedback would be welcomed about areas that are not yet implemented.

Not what you are looking for?

Try

License

Copyright © 2010 David Lake (rifraf → rifraf.net)

Released under the MIT license. See LICENSE file for details.


1 As always, phrases that are ‘quoted’ should be interpreted as having the prefix ‘not’2. IronRubyAppPackager does not compile Ruby. It just looks like it’s compiled, and behaves like it’s compiled… Quack!

2 Recursively of course

About

Creates .exe file that embeds application source, library and GEM files within the executable.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published