Forum: Ruby Deploying Ruby-Tk app on OS X

D2bff075522befb15313dab85f3a671b?d=identicon&s=25 Kevin Walzer (Guest)
on 2012-06-17 23:44
(Received via mailing list)
I'm looking for a straightforward way to deploy a standalone Ruby-Tk
desktop app on MAc OS X. All existing options for deploying desktop Ruby
GUI apps on the Mac (e.g. standaloneify.rb) assume that you are using
RubyCocoa or MacRuby, and are tightly bound to Xcode/Interface Builder
project structure; or, alternatively, that you are wrapping a simple
script via Platypus (http://sveinbjorn.org/platypus) that does not
involve deploying the entire Ruby runtime. None of the other existing
options that I've found--rubyscript2exe, ocra, crate--support the Mac
and/or support Ruby 1.9.

I'm hoping that someone can point me to a shell script or Ruby script
that does the following:

* Tracks all dependencies/gems in an app.
* Copies the Ruby interpreter and dependencies into an application
bundle.
* Runs install_name_tool on the Ruby interpreter and all dylibs to make
them portable.

The application bundle can either be something created by Platypus, use
a Cocoa stub launcher, or even a shell script--I know how to handle
those. The problem I'm having is getting the Ruby runtime wrapped in a
portable way.

There's a rakefile at
http://weft-qda.rubyforge.org/svn/trunk/weft-qda/r... that
encompasses the tasks that I'm looking to achieve, but this rakefile is
part of a larger build structure that I can't get running on my Mac. I'm
not familiar enough with rakefile structure to refactor this into a
simple script that I can run, either via "ruby rake_osx.rb" or even
"rake".

If someone can suggest to me how to modify this rakefile to run
independently, or point me to another example project, or even share
some code, I would be grateful. The project I am working on is better
suited for Ruby than Python (better library support in Ruby), but I am
not going to invest time in it if deployment won't work. (Python has a
much richer tradition of deployment tools than Ruby, something I've
never quite understood.)

Thank you,
Kevin
D2bff075522befb15313dab85f3a671b?d=identicon&s=25 Kevin Walzer (Guest)
on 2012-06-18 16:43
(Received via mailing list)
On 6/17/12 5:41 PM, Kevin Walzer wrote:

> If someone can suggest to me how to modify this rakefile to run
> independently, or point me to another example project, or even share
> some code, I would be grateful. The project I am working on is better
> suited for Ruby than Python (better library support in Ruby), but I am
> not going to invest time in it if deployment won't work. (Python has a
> much richer tradition of deployment tools than Ruby, something I've
> never quite understood.)
>
> Thank you,
> Kevin

Alas, I think what I am looking for does not exist.
Bec38d63650c8912b6ba9b557fb953b9?d=identicon&s=25 Roger Pack (rogerdpack)
on 2012-06-21 01:20
I hope to build one for OS X sometime in the near future, perhaps we can
collaborate?
-roger-
D2bff075522befb15313dab85f3a671b?d=identicon&s=25 Kevin Walzer (codebykevin)
on 2012-06-22 04:33
I would be interested. I'm pretty much a newbie with Ruby but have a lot
of experience in deploying OS X apps with other languages, including
Tcl/Tk and Python; I've use py2app extensively and have done some
hacking on cx_freeze (another Python deployment system), and I have a
few ideas on what a Ruby system might look like.
Bec38d63650c8912b6ba9b557fb953b9?d=identicon&s=25 Roger Pack (rogerdpack)
on 2012-06-22 14:38
Sure maybe let's take it offline (not fighting words by any stretch of
the imagination):

rogerdpack@gmail.com
B7cbf7d45564d7889735ab827ff8d222?d=identicon&s=25 Jim Moffitt (jeem8)
on 2013-11-09 03:39
Hmmm, I too need to deploy a ruby/Tk app on MacOS.  I used the Ocra gem
successfully to deploy on Windows and was really impressed how that gem
abstracted away a lot of messy issues I did not want to micro-manage!

Now need to row this Tk app into a MacOS application...
Please log in before posting. Registration is free and takes only a minute.
Existing account

NEW: Do you have a Google/GoogleMail, Yahoo or Facebook account? No registration required!
Log in with Google account | Log in with Yahoo account | Log in with Facebook account
No account? Register here.