# Deploying (and updating) a ruby client application on a Wind

**URL:** <https://www.ruby-forum.com/t/deploying-and-updating-a-ruby-client-application-on-a-wind/83093>\
**Category:** Ruby\
**Created:** [January 23, 2007, 4:45pm UTC](https://www.ruby-forum.com/t/deploying-and-updating-a-ruby-client-application-on-a-wind/83093 "2007-01-23T16:45:55Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![philpraxis](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/77aa72/32.png) [@philpraxis](https://www.ruby-forum.com/u/philpraxis)\
**Post date:** [January 23, 2007, 4:45pm UTC](https://www.ruby-forum.com/t/deploying-and-updating-a-ruby-client-application-on-a-wind/83093/1 "2007-01-23T16:45:55Z")

</div>

Hi,

I’m about to deploy a ruby client-server application on multiple  
computers on a LAN, and I was wondering if anyone had experience in this  
domain. Installation requires a few steps:

1. Install Ruby
2. Install FXRuby
3. Install a few patches
4. Install ODBC for MS Access reporting
5. Install a directory with all the application tree

I don’t fear a first installation done by hand on each computer. But it  
would be great if all the updates could be automatic.

What is the best direction to take? Gems, Capistrano? Something else,  
OS-based?

Thanks for your ideas and tips!

Philippe L.

---

<div class="post-metadata">

**Author:** ![philpraxis](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/77aa72/32.png) [@philpraxis](https://www.ruby-forum.com/u/philpraxis)\
**Post date:** [January 23, 2007, 9:05pm UTC](https://www.ruby-forum.com/t/deploying-and-updating-a-ruby-client-application-on-a-wind/83093/2 "2007-01-23T21:05:09Z")

</div>

On 1/23/07, Philippe L. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> 1. Install a directory with all the application tree
> 
> I don’t fear a first installation done by hand on each computer. But it  
> would be great if all the updates could be automatic.
> 
> What is the best direction to take? Gems, Capistrano? Something else,  
> OS-based?

My (weird, but solid) approach was to make an installer using  
[http://nsis.sourceforge.net](http://nsis.sourceforge.net)  
If you have a deployment toolset (like Novell’s Zenworks, Microsoft’s  
stuff, or even login scripts), you can just push out an updated copy  
of the installer as needed.  
If not, you can use the compiled NSIS executable like a ‘launcher’. I  
made a simple one with logic like:  
version = check\_installed\_version (in registry or on disk)  
if version == the\_one\_embedded\_in\_this\_file  
launch application and exit  
else  
run the install then launch app and exit  
end

This means you can have the application shortcut point straight at the  
installer. When you copy in a fresh version of the file, it silently  
installs an updated app and then launches. Otherwise, it just adds a  
few milliseconds to the start time, and pretends to be a shortcut.
