{"id":22981013,"url":"https://github.com/rubyworks/setup","last_synced_at":"2025-08-13T17:33:45.243Z","repository":{"id":646688,"uuid":"288911","full_name":"rubyworks/setup","owner":"rubyworks","description":"Ruby's Classic Site Installer","archived":false,"fork":false,"pushed_at":"2012-12-21T03:52:02.000Z","size":1507,"stargazers_count":15,"open_issues_count":5,"forks_count":4,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-11-21T11:40:30.598Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://rubyworks.github.com/setup","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rubyworks.png","metadata":{"files":{"readme":"README.rdoc","changelog":"HISTORY.rdoc","contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2009-08-26T17:36:54.000Z","updated_at":"2020-10-18T19:25:51.000Z","dependencies_parsed_at":"2022-07-05T05:31:58.262Z","dependency_job_id":null,"html_url":"https://github.com/rubyworks/setup","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyworks%2Fsetup","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyworks%2Fsetup/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyworks%2Fsetup/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rubyworks%2Fsetup/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rubyworks","download_url":"https://codeload.github.com/rubyworks/setup/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229773540,"owners_count":18122031,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-15T01:46:43.893Z","updated_at":"2024-12-15T01:46:44.372Z","avatar_url":"https://github.com/rubyworks.png","language":"Ruby","readme":"= Ruby Setup\n\n{Website}[http://rubyworks.github.com/setup] /\n{Guide}[https://github.com/rubyworks/setup/wiki] /\n{Issues}[http://github.com/rubyworks/setup/issues] /\n{Source}[http://github.com/rubyworks/setup]\n( {\u003cimg src=\"https://secure.travis-ci.org/rubyworks/setup.png\" /\u003e}[http://travis-ci.org/rubyworks/setup] )\n\n\n== Introduction\n\nEvery well practiced Rubyist is aware of Minero Aoki's ever +setup.rb+\nscript. It's how most of us used to install our Ruby programs before RubyGems\ncame along. And it's still mighty useful in certain scenarios, not the\nleast of which is the job of the distro package maintainer.\n\nRuby Setup converts setup.rb into a stand-alone application. No longer\nrequiring the distribution of the setup.rb script with every Ruby package.\nJust instruct one's users to install Ruby Setup (gem install setup) and go\nfrom there. As long as a project is setup.rb compliant, as most are,\nthen there is little to nothing it's developer must do.\n\n\n=== Important\n\nThere a couple very important difference between the old 3.4.1 verison\nof the setup.rb and Ruby Setup.\n\n* The directory convention 'conf' has been change to 'etc'.\n* Multi-package project layouts are no longer supported.\n* Metaconfig and Hooks are handled via singleton extensions.\n* No longer supports versions of Ruby older than v1.6.3.\n* The +setup+ phase has been renamed to the +compile+ phase.\n\n\n== Installation\n\nThe easy way to install is via RubyGems.\n\n  $ sudo gem install setup\n\nTo install Setup manually you need to \"boot-strap\" it. Download the tarball,\nand from the decompressed package directory run:\n\n  $ ruby script/setup\n\n\n== Instruction\n\nTo use setup.rb, a project must conform to the setup.rb standard layout.\nPlease see the documentation on the website if you need to know more about\nwhat this entails. Most projects already follow the standard since it was\nsetup.rb that originally popularized most of the current layout conventions.\n(Note that the on-line documentation is slightly out of sync with the latest\nrelease.)\n\nUsage is as simple as:\n\n  $ setup.rb\n\nThis is the same as using the \u003ctt\u003eall\u003c/tt\u003e subcommand.\n\n  $ setup.rb all\n\nAnd is equivalent to running the two main phases in sequence.\n\n  $ setup.rb compile\n  $ setup.rb install\n\nWhere +compile+ compiles any extensions and +install+ copies project\nfiles to the appropriate places on your system.\n\nFor setup.rb to install a project's documentation and library files\nproperly it is best to supply it was basic information about the project.\nIn particular, the +name+, +version+ and +loadpath+ (if not the default `lib`).\nThis can be done either by creating a `.index` file for the project\n(see {Indexer}[http://github.com/rubyworks/indexer]), or by adding\n\u003ctt\u003e.setup/name\u003c/tt\u003e, \u003ctt\u003e.setup/version\u003c/tt\u003e and \u003ctt\u003e.setup/loadpath\u003c/tt\u003e\nto the project.\n\nSetup.rb also supports two optional phases, +config+ and +test+.\n\n  $ setup config\n\nConfiguration must be run before any other phase in order to be of\nused. Running `config` creates a `SetupConfig` file which you can then\nedit to make any adjustments neccessary to the installation. When finished\nediting this file, use setup.rb as before and your custom configuration\nwill be used instead of the standard defaults.\n\n  $ setup.rb test\n\nThis will run tests if a test script is provided. It must be run after\n+compile+, but before +install+. Because there are now a deverse selection\nof testing tools available for Ruby, testing only happens if the developer\nhas provided a test runner script, either. \u003ctt\u003e.setup/test.rb\u003c/tt\u003e or \n\u003ctt\u003e.setup/test.sh\u003c/tt\u003e. Keep in mind that testing may require support\nlibraries such as RSpec, Lemon, Bacon, QED or Cucumber. When using the\n+all+ command, you can activate testing via the \u003ctt\u003e--test\u003c/tt\u003e or\n\u003ctt\u003e-t\u003c/tt\u003e option.\n\nIf you later decide you want to remove a program from your system, use\n+uninstall+.\n\n  $ setup.rb uninstall\n\nThis will remove all files previously installed via the setup.rb command.\nUninstalling is made possible by the 'SetupReceipt' file that is\ngenerated by the install process. If that file is deleted than you\nwill not be able to uninstall. (You can usually get around this be\nreinstalling first though).\n\nDuring the make phase, by-product files are typically created.\nYou can clean up any of these by-products with:\n\n  $ setup.rb clean\n\nAnd restore them to their absolute pristine state with:\n\n  $ setup.rb distclean\n\nFor further details on using +setup.rb+, or developing a project that can\ntake advantage of setup.rb's special features, please see the website\nand associated wiki.\n\n\n== Copyrights\n\nSetup.rb is copyrighted open source software.\n\n    Copyright (c) 2008 Rubyworks (BSD-2-Clause)\n\nIt can be modified and redistributed in accordance with the **BSD-2-Clause** license.\n\nSetup.rb is a rewrite of the original setup.rb script by {Minero Aoki}[http://i.loveruby.net].\n\n    Copyright (c) 2002 Minero Aoki (GNU LGPL 2.1+)\n\nSee LICENSE.txt and NOTICE.rdoc for details.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frubyworks%2Fsetup","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frubyworks%2Fsetup","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frubyworks%2Fsetup/lists"}