Setup
http://setup.rubyforge.org
Introduction
Every Rubyist is aware of Minero Aoki‘s ever useful setup.rb script. It‘s how most of us used to install our ruby programs before RubyGems came along.And it‘s still mighty useful in certain scenarios, not the least of which is the job of the distribution package managers. Setup converts setup.rb into a stand-alone application. No longer will you need distribute setup.rb with you Ruby packages. Just instruct your users to use Setup.
Important
There a couple very important difference between the old 3.4.1 verison of the setup.rb script and version 4.0.0 of the independent application.
- The directory convention ‘conf’ has been change to ‘etc’.
- The Metacofig API is not currently supported.
- Multi-package project layouts are no longer supported.
Install
The easy way to install is via RubyGems.
$ gem install setup
To install Setup manually you need to "boot-strap" it. This is done for you, by running the following:
$ script/install
Usage
Please see the documentation in doc/manual.
To use setup.rb a project must conform to the setup.rb standard layout.
Usage is as simple as:
$ setup.rb config $ setup.rb setup $ setup.rb install
or
$ setup.rb all
If you later decide you want to remove the program.
$ setup.rb uninstall
Note that uninstall is made possible by the .installedfiles file that is generated by the install process. If that file is deleted than you will not be able to uninstall. (You can get around this be reinstalling first though).
You can clean up any setup products with:
$ setup.rb clean
And restore the package to it‘s pristine state with:
$ setup.rb distclean
Not that this last command will remove the .installedfiles file!
To Do
- Maybe protect .installedfiles from removal, even on distclean.
- Separate compiling code into separate class.
License
Copyright (c) 2002,2005 Minero Aoki Copyright (c) 2008 TigerOps & Thomas Sawyer
GNU LGPL, Lesser General Public License version 2.1. For details of LGPL, see the file "COPYING".
7trans transfire@gmail.com http://tigerops.org Minero Aoki aamine@loveruby.net http://i.loveruby.net