Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

updated to latest versions of Ruby, Rails and DevKit; now Git can be …

…excluded from the setup process
  • Loading branch information...
commit 0369ade3b2ba79ee77d9dd33841be3c94fc7f54c 1 parent 92ae7bb
@luigidr luigidr authored
View
4 CHANGELOG.txt
@@ -1,3 +1,7 @@
+2.2.0 - Updated main components to the latest version (Ruby 1.9.3-p362,
+ Rails 3.2.11, git 1.8.0).
+ Users can now exclude Git from the setup process (maybe it is already installed).
+
2.0.0 - Ruby 1.9.2-p290, Rails 3.1, Active Record SQLServer Adapter, TinyTDS,
git 1.7.6, bundler 1.0.18.
View
59 README.md
@@ -18,14 +18,13 @@ built and packaged via rake tasks.
1. Download and install latest
[Inno Setup Quick Start Pack](http://www.jrsoftware.org/isdl.php#qsp),
- ensure iscc.exe is in your PATH
+ add iscc.exe is in your PATH
1. [Fork](http://help.github.com/fork-a-repo/)
the [RailsInstaller project on github](https://github.com/railsinstaller/railsinstaller-windows.git)
into your own github account
-1. Open the RailsInstaller Command prompt from the start menu RailsInstaller
- group and change directories to where you like to keep your projects.
+1. Open the the command prompt from the start menu and change directory to where you like to keep your projects.
1. Clone your fork of the project
@@ -33,8 +32,7 @@ built and packaged via rake tasks.
> cd railsinstaller-windows
-1. Update from origin master branch and checkout a new topic branch for
- your feature/bugfix.
+1. Update from origin master (or 2.0.0) branch and checkout a new topic branch for your feature/bugfix.
> git checkout master
@@ -42,67 +40,56 @@ built and packaged via rake tasks.
> git checkout -b mybranchname
-1. Bootstrap the project, from the project root run
+1. Bootstrap the project. From the project root run:
> rake bootstrap
-1. Implement your new feature / fix your bug in the railsinstaller project code.
- Configuration of the packages are to be included are found in the
- config/railsinstaller.yml file. Building of the installer into the stage path
- for packaging happens from the Ruby code in the lib/ directory, starting from
- the file lib/railsinstaller/actions.rb. Methods called from actions
- file are implemented in lib/railsinstaller/methods.rb. In order to kick off a
- build into the stage/ directory run the following rake command.
+1. Implement your new feature and/or fix your bug in your newly forked Railsinstaller project code.
-1. Next build all components on the stage
+ * The configuration file for specifying required packages can be found at config/railsinstaller.yml.
- > rake build
+ * Building of the installer into the stage path for packaging is implemented by Ruby code in the lib/ directory, starting with the file lib/railsinstaller/actions.rb.
+
+ * Methods called by the actions.rb file are implemented by lib/railsinstaller/methods.rb.
-1. We are now ready to package the installer for testing/distribution.
- Packaging of the installer from the stage path into an executable can be done
- via the following rake command. This creates the executable (.exe)
- package file in the pkg/ directory from the files staged during the
- build process in the stage/ directory.
+1. Next build all components onto the stage (into the stage/ directory)
- > rake package
+ > rake build
-1. Use Inno Setup to package RailsInstaller (NOTE that You can run the package
- task with --trace for debugging output if the package fails to build or if
- you simply want to see what is being done as it is done).
+1. Use Inno Setup to package the installer into an executable (.exe) for testing/distribution.
> rake package
-1. Once you have verified your Push your feature branch up to GitHub
+ * This creates the executable (.exe) package file in the pkg/ directory from the files staged during the build process in the stage/ directory.
+
+ * NOTE - You can run the package task with --trace for debugging output if the package fails to build or if you simply want to see what is being done as it is done).
+
+1. Once you have verified your new feature/bug-fix, push your branch up to GitHub.
> git commit -a -m "Implemented featureX/bugfixX which <description>..."
> git push origin mybranchname
-1. Now issue a [pull request](http://help.github.com/pull-requests/) on GitHub
+1. Now issue a [pull request](http://help.github.com/pull-requests/) on GitHub.
# RailsInstaller Components
The next few sections detail the core copmonents that make up RailsInstaller.
-### Ruby 1.9.2 on Windows
+### Ruby 1.9.3 on Windows
-RubyInstaller is a self contained package installer which installs Ruby and
-RubyGems on a windows system, head over to http://rubyinstaller.org/ for more
-information.
+RubyInstaller is a self contained package installer which installs Ruby and RubyGems on a windows system, head over to [http://rubyinstaller.org/](http://rubyinstaller.org/) for more information.
### Development Kit (DevKit)
-A MSYS/MinGW based toolkit that enables RailsInstaller to build native C/C++
-packages, both for Ruby and gems. DevKit is built and maintained by the
-wonderful folks over at the RubyInstaller (http://rubyinstaller.org/) project.
+A MSYS/MinGW based toolkit that enables RailsInstaller to build native C/C++ packages, both for Ruby and gems. DevKit is built and maintained by the wonderful folks over at the RubyInstaller project.
### Git
The git version that is bundled into RailsInstaller is
-[msysgit](http://code.google.com/p/msysgit/)
+[msysgit](http://code.google.com/p/msysgit/).
### Packaging/Installer
-We are using [Inno Setup](http://www.jrsoftware.org/isinfo.php "Inno Setup"),
-a free installer for Windows programs.
+We are using [Inno Setup](http://www.jrsoftware.org/isinfo.php "Inno Setup"), a free installer for Windows programs.
View
2  VERSION.txt
@@ -1 +1 @@
-2.1.0
+2.2.0
View
12 config/railsinstaller.yml
@@ -7,10 +7,10 @@
- rake
-
:name: rails
- :version: "3.2.1"
+ :version: "3.2.11"
-
:name: activerecord-sqlserver-adapter
- :version: "3.2.1"
+ :version: "3.2.11"
- tiny_tds
- sqlite3
- sqlite3-ruby
@@ -33,7 +33,7 @@
:category: component
:regex: '^.*$'
:target: 'DevKit'
- :url: "https://github.com/downloads/oneclick/rubyinstaller/DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe"
+ :url: "http://cloud.github.com/downloads/oneclick/rubyinstaller/DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe"
:ruby192:
:category: component
@@ -48,14 +48,14 @@
:title: Ruby 1.9.3
:name: Ruby193
:regex: '^.*$'
- :url: "http://rubyforge.org/frs/download.php/75849/ruby-1.9.3-p125-i386-mingw32.7z"
+ :url: "http://rubyforge.org/frs/download.php/76643/ruby-1.9.3-p362-i386-mingw32.7z"
:rename: Ruby1.9.3
:git:
:category: component
- :title: Git 1.7.9
+ :title: Git 1.8.0
:name: Git
- :url: "http://msysgit.googlecode.com/files/PortableGit-1.7.9-preview20120201.7z"
+ :url: "http://msysgit.googlecode.com/files/PortableGit-1.8.0-preview20121022.7z"
:target: "Git"
:regex: '^.*$'
View
2  lib/railsinstaller.rb
@@ -11,7 +11,7 @@ module RailsInstaller # Ensure that the RailsInstaller project root is defined.
require name
end
-gem "rubyzip", "~> 0.9.6.1"
+gem "rubyzip"
%w[ globals ].each do |name|
printf "Loading #{name}...\n" if $Flags[:verbose]
View
4 lib/railsinstaller/downloads.rb
@@ -21,7 +21,7 @@ def self.download(package, count = 3)
end
uri = URI.parse(package.url)
-
+
print "Downloading from #{package.url} to #{RailsInstaller::Archives}\n" if $Flags[:verbose]
http.get_response(uri) do |response|
@@ -37,7 +37,7 @@ def self.download(package, count = 3)
when Net::HTTPRedirection
raise "Too many redirections for the original url, halting." if count <= 0
- print "Redirected to #{response["Location"]}\n" if verbose
+ print "Redirected to #{response["Location"]}\n" if $Flags[:verbose]
package.url = response["location"]
return download(package, count - 1)
View
2  resources/railsinstaller/LICENSE.txt
@@ -1,4 +1,4 @@
-Copyright (c) 20010-2011 RailsInstaller Team.
+Copyright (c) 2010-2012 RailsInstaller Team.
Except:
View
16 resources/railsinstaller/railsinstaller.iss
@@ -88,7 +88,7 @@ Name: en; MessagesFile: compiler:Default.isl
[Messages]
en.InstallingLabel=Installing [name], this will take a few minutes...
en.WelcomeLabel1=Welcome to [name]!
-en.WelcomeLabel2=This will install [name/ver] on your computer which includes Ruby 1.9.2, Rails 3.1, Git, Sqlite3, DevKit, and TinyTDS with FreeTDS. Please close any console applications before continuing.
+en.WelcomeLabel2=This will install [name/ver] on your computer which includes Ruby 1.9.3, Rails 3.2.11, Git, Sqlite3, DevKit, and TinyTDS with FreeTDS. Please close any console applications before continuing.
en.WizardLicense={#InstallerName} License Agreement
en.LicenseLabel=
en.LicenseLabel3=Please read the following License Agreements and accept the terms before continuing the installation.
@@ -103,7 +103,7 @@ en.DiskSpaceMBLabel=Required free disk space: ~[mb] MB
[Files]
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
Source: {#StagePath}\{#RubyPath}\*; DestDir: {app}\{#RubyPath}; Excludes: "devkit.*, operating_system.*"; Flags: recursesubdirs createallsubdirs
-Source: {#StagePath}\Git\*; DestDir: {app}\Git; Flags: recursesubdirs createallsubdirs
+Source: {#StagePath}\Git\*; DestDir: {app}\Git; Check: InstallGit; Flags: recursesubdirs createallsubdirs
Source: {#StagePath}\DevKit\*; DestDir: {app}\DevKit; Excludes: "config.yml"; Flags: recursesubdirs createallsubdirs
Source: {#StagePath}\DevKit\config.yml; DestDir: {app}\DevKit; AfterInstall: UpdateDevKitConfig('{app}\{#RubyPath}', '{app}\DevKit\config.yml')
Source: {#StagePath}\Sites\*; DestDir: {sd}\Sites; Flags: recursesubdirs createallsubdirs
@@ -130,7 +130,7 @@ Name: {group}\{cm:UninstallProgram,{#InstallerName}}; Filename: {uninstallexe}
[Run]
Filename: "{app}\{#RubyPath}\bin\ruby.exe"; Parameters: "dk.rb install --force"; WorkingDir: "{app}\DevKit"; Flags: runhidden
-Filename: {sys}\cmd.exe; Parameters: /E:ON /K {app}\{#RubyPath}\setup_environment.bat {app}; WorkingDir: {sd}\Sites; Description: "Configure git and ssh when installation has completed."; Flags: postinstall nowait skipifsilent
+Filename: {sys}\cmd.exe; Parameters: /E:ON /K {app}\{#RubyPath}\setup_environment.bat {app}; WorkingDir: {sd}\Sites; Description: "Configure git and ssh when installation has completed."; Check: InstallGit; Flags: postinstall nowait skipifsilent
; TODO: Instead of running the full vcredist, simply extract and bundle the dll
; files with an associated manifest.
@@ -157,7 +157,8 @@ begin
if IsModifyPath then
ModifyPath([ExpandConstant('{app}') + '\{#RubyPath}\bin']);
- ModifyPath([ExpandConstant('{app}') + '\Git\cmd']);
+ if InstallGit then
+ ModifyPath([ExpandConstant('{app}') + '\Git\cmd']);
end else
MsgBox('Looks like you''ve got on older, unsupported Windows version.' #13 +
@@ -171,6 +172,8 @@ begin
{* store install choices so we can use during uninstall *}
if IsModifyPath then
SetPreviousData(PreviousDataKey, 'PathModified', 'yes');
+ if InstallGit then
+ SetPreviousData(PreviousDataKey, 'GitInstalled', 'yes');
SetPreviousData(PreviousDataKey, 'RailsInstallerId', '{#InstallerVersion}');
end;
@@ -182,8 +185,11 @@ begin
if UsingWinNT then
begin
if GetPreviousData('PathModified', 'no') = 'yes' then
+ begin
ModifyPath([ExpandConstant('{app}') + '\{#RubyPath}\bin']);
- ModifyPath([ExpandConstant('{app}') + '\Git\cmd']);
+ if GetPreviousData('GitInstalled', 'no') = 'yes' then
+ ModifyPath([ExpandConstant('{app}') + '\Git\cmd']);
+ end
end;
end;
end;
View
21 resources/railsinstaller/railsinstaller_gui.iss
@@ -5,7 +5,7 @@
// License: MIT
var
- PathChkBox, PathExtChkBox: TCheckBox;
+ PathChkBox, PathExtChkBox, GitChkBox: TCheckBox;
function IsAssociated(): Boolean;
begin
@@ -17,6 +17,11 @@ begin
Result := PathChkBox.Checked;
end;
+function InstallGit() : Boolean;
+begin
+ Result := GitChkBox.Checked;
+end;
+
procedure ParseSilentTasks();
var
I, N: Integer;
@@ -63,12 +68,22 @@ begin
Page := PageFromID(wpSelectDir);
+ GitChkBox := TCheckBox.Create(Page);
+ GitChkBox.Parent := Page.Surface;
+ GitChkBox.State := cbChecked;
+ GitChkBox.Caption := 'Install Git (recommended) ';
+ GitChkBox.Alignment := taRightJustify;
+ GitChkBox.Top := ScaleY(95);
+ GitChkBox.Left := ScaleX(18);
+ GitChkBox.Width := Page.SurfaceWidth;
+ GitChkBox.Height := ScaleY(17);
+
PathChkBox := TCheckBox.Create(Page);
PathChkBox.Parent := Page.Surface;
PathChkBox.State := cbChecked;
- PathChkBox.Caption := 'Add executables for Ruby, Git and DevKit to the PATH ';
+ PathChkBox.Caption := 'Add executables for Ruby, DevKit and Git (if checked above) to the PATH ';
PathChkBox.Alignment := taRightJustify;
- PathChkBox.Top := ScaleY(95);
+ PathChkBox.Top := ScaleY(125);
PathChkBox.Left := ScaleX(18);
PathChkBox.Width := Page.SurfaceWidth;
PathChkBox.Height := ScaleY(17);
View
3  resources/railsinstaller/setup_environment.bat
@@ -22,7 +22,8 @@ REM
REM Add RUBY_DIR\bin to the PATH, DevKit\bin and then Git\cmd
REM RUBY_DIR\bin takes higher priority to avoid other tools conflict
REM
-SET PATH=%RUBY_DIR%\bin;%RUBY_DIR%\lib\ruby\gems\1.9.1\bin;%ROOT_DIR%\DevKit\bin;%ROOT_DIR%\Git\cmd;%PATH%
+SET PATH=%RUBY_DIR%\bin;%RUBY_DIR%\lib\ruby\gems\1.9.1\bin;%ROOT_DIR%\DevKit\bin;%PATH%
+IF EXIST %ROOT_DIR%\Git\cmd SET PATH=%ROOT_DIR%\Git\cmd;%PATH%
SET RUBY_DIR=
SET ROOT_DIR=
View
4 resources/scripts/config_check.rb
@@ -75,11 +75,11 @@ def git_config(key)
version: #{run "git --version"}
ruby:
- bin: #{File.join(Config[:railsinstaller_path], "Ruby1.9.2", "bin", "ruby.exe")}
+ bin: #{File.join(Config[:railsinstaller_path], "Ruby1.9.3", "bin", "ruby.exe")}
version: #{run "ruby -v"}
rails:
- bin: #{File.join(Config[:railsinstaller_path], "Ruby1.9.2", "bin", "rails.bat")}
+ bin: #{File.join(Config[:railsinstaller_path], "Ruby1.9.3", "bin", "rails.bat")}
version: #{run "rails -v"}
ssh:
Please sign in to comment.
Something went wrong with that request. Please try again.