Issues with Yeoman installer #58

Closed
Iristyle opened this Issue Sep 13, 2012 · 19 comments

Projects

None yet

2 participants

@Iristyle
Contributor

Ok... so here are the issues, based on a clean machine.

  • If Ruby is installed as a dependency (by Chocolatey), then when it comes time to run gem and install Compass -- the installer blows up (b/c gem isn't in PATH).
  • Similarly, if Node is installed as a dependency (by Chocolatey), when it comes time to run npm it blows up (b/c npm isn't in PATH).
  • OptiPNG, libjpeg-turbo and PhantomJS all get their own directory off of c:\ -- yuck -- I didn't realize the install call I was making did that -- would prefer to either install these guys to program files, or provide the shim to run them from inside c:\chocolately\lib -- any thoughts here?

For the first two, the bug is in Chocolatey -- it doesn't recapture the modified PATH (or any other env variables for that matter after running an installer). IMHO, its Chocolatey's obligation to do this.

I think you're aware of this issue.. but I didn't see you handling this anywhere in the code after a quick scan. I provide a fix in PowerShell to recapture the path.

chocolatey/chocolatey#140 (comment)

@Iristyle Iristyle referenced this issue in yeoman/yeoman Sep 13, 2012
Closed

Windows Support #216

@ferventcoder
Owner

Actually the ruby one works...
Node on the other hand didn't - I just pushed that and will be verifying it

@ferventcoder
Owner

I started on a fresh windows VM and typed cinst yeoman

@Iristyle
Contributor

I started on a fresh (Windows 7) machine and gem blew up on a first-time install of Ruby.

@Iristyle
Contributor

Sorry.. Windows 8 that is.

@ferventcoder
Owner

really...I did it on Win8 and it went smoothly like it should.

Are you doing cinst yeoman ?

@ferventcoder
Owner

It will fail if you piecemeal it due to the powershell session ending and restarting ....

@Iristyle
Contributor

Yup yup.. even made sure I had Chocolatey latest.

@Iristyle
Contributor

I would send you a screenshot if I hadn't already closed down my shell.

@ferventcoder
Owner

Can you do that again? I pushed up the nodejs fix.

@ferventcoder
Owner

Best if you can somehow make that fresh again.

Otherwise go uninstall ruby/node manually and others if you want.
Then delete the new packages from c:\chocolatey\lib.

And verify the path (system and user) no longer contains those paths.

Then open a fresh command line and hook it up.

@ferventcoder
Owner

Fixed both optipng and phantomjs to actually end up on the path. They are in the binDir - if you set the environment variable, you can tell them to go anywhere.

The lack of the env var makes it go to systemdrive

@Iristyle
Contributor

Sweet -- sorry about that.

These types of things are so difficult to test without actually baking the pkg, releasing, and then trying it out.

I've put together a handful of Nuget packages that mess with DTE in Visual Studio -- always such a PITA.

@Iristyle
Contributor

I cleaned up everything, then reran and you are correct re: gem.

I think I must have manually installed Ruby first via cinst Ruby, and then run cinst yeoman, tripping up on the environment bug we're discussing in the other thread. My fault on that one.

@Iristyle
Contributor

Interesting.. when the install finished up, it never ran npm install -g yeoman

PS C:\Users\ebrown.EASTPOINT> cinst yeoman
=====================================================
Chocolatey (0.9.8.19) is installing yeoman  to "C:\Chocolatey\lib". By installing you accept the license for the package
 you are installing (please run chocolatey /? for full license acceptance terms).
=====================================================

-------------------------
Chocolatey Runner (RUBY v1.8.7.35800)
-------------------------
  -------------------------
   PowerShell  (chocolateyinstall.ps1)
  -------------------------
Downloading ruby (http://rubyforge.org/frs/download.php/75851/rubyinstaller-1.8.7-p358.exe) to C:\Users\EBROWN~1.EAS\App
Data\Local\Temp\chocolatey\ruby\rubyInstall.exe
Installing ruby...
Elevating Permissions and running C:\Users\EBROWN~1.EAS\AppData\Local\Temp\chocolatey\ruby\rubyInstall.exe /silent /dir=
"C:\ruby187" /tasks="assocfiles,modpath" . This may take awhile, depending on the statements.
ruby has been installed.
ruby has finished succesfully! The chocolatey gods have answered your request!
Adding 'C:\ruby187\bin' to the local path
ruby has finished succesfully! The chocolatey gods have answered your request!
  -------------------------
   Executable Links (*.exe)
  -------------------------
There are no executables (that are not ignored) in the package.
-------------------------
-------------------------
Chocolatey Runner (COMPASS v0.12.2)
-------------------------
  -------------------------
   PowerShell  (chocolateyinstall.ps1)
  -------------------------
Fetching: compass-0.12.2.gem (100%)
Successfully installed compass-0.12.2
1 gem installed
Installing ri documentation for compass-0.12.2...
Installing RDoc documentation for compass-0.12.2...
Compass has finished succesfully! The chocolatey gods have answered your request!
  -------------------------
   Executable Links (*.exe)
  -------------------------
There are no executables (that are not ignored) in the package.
-------------------------
-------------------------
Chocolatey Runner (GIT.INSTALL v1.7.11)
-------------------------
  -------------------------
   PowerShell  (chocolateyinstall.ps1)
  -------------------------
Downloading git.install (http://msysgit.googlecode.com/files/Git-1.7.11-preview20120620.exe) to C:\Users\EBROWN~1.EAS\Ap
pData\Local\Temp\chocolatey\git.install\git.installInstall.exe
Installing git.install...
Elevating Permissions and running C:\Users\EBROWN~1.EAS\AppData\Local\Temp\chocolatey\git.install\git.installInstall.exe
 /VERYSILENT . This may take awhile, depending on the statements.
git.install has been installed.
git.install has finished succesfully! The chocolatey gods have answered your request!

Making GIT core.autocrlf false
git.install has finished succesfully! The chocolatey gods have answered your request!
  -------------------------
   Executable Links (*.exe)
  -------------------------
There are no executables (that are not ignored) in the package.
-------------------------
-------------------------
Chocolatey Runner (GIT v1.7.11)
-------------------------
  -------------------------
   PowerShell  (chocolateyinstall.ps1)
  -------------------------
  -------------------------
   Executable Links (*.exe)
  -------------------------
There are no executables (that are not ignored) in the package.
-------------------------
-------------------------
Chocolatey Runner (NODEJS.INSTALL v0.8.9.20120913)
-------------------------
  -------------------------
   PowerShell  (chocolateyinstall.ps1)
  -------------------------
Downloading nodejs.install (http://nodejs.org/dist/v0.8.9/node-v0.8.9-x86.msi) to C:\Users\EBROWN~1.EAS\AppData\Local\Te
mp\chocolatey\nodejs.install\nodejs.installInstall.msi
Installing nodejs.install...
Elevating Permissions and running msiexec /i "C:\Users\EBROWN~1.EAS\AppData\Local\Temp\chocolatey\nodejs.install\nodejs.
installInstall.msi" /quiet . This may take awhile, depending on the statements.
nodejs.install has been installed.
nodejs.install has finished succesfully! The chocolatey gods have answered your request!
  -------------------------
   Executable Links (*.exe)
  -------------------------
There are no executables (that are not ignored) in the package.
-------------------------
-------------------------
Chocolatey Runner (LIBJPEG-TURBO v1.2.1)
-------------------------
  -------------------------
   PowerShell  (chocolateyinstall.ps1)
  -------------------------
Downloading libjpeg-turbo 64 bit (http://sourceforge.net/projects/libjpeg-turbo/files/1.2.1/libjpeg-turbo-1.2.1-vc64.exe
/download) to C:\Users\EBROWN~1.EAS\AppData\Local\Temp\chocolatey\libjpeg-turbo\libjpeg-turboInstall.exe.
Installing libjpeg-turbo...
Elevating Permissions and running C:\Users\EBROWN~1.EAS\AppData\Local\Temp\chocolatey\libjpeg-turbo\libjpeg-turboInstall
.exe /S . This may take awhile, depending on the statements.
libjpeg-turbo has been installed.
libjpeg-turbo has finished succesfully! The chocolatey gods have answered your request!
PATH environment variable does not have C:\libjpeg-turbo64\bin in it. Adding...
libjpeg-turbo has finished succesfully! The chocolatey gods have answered your request!
  -------------------------
   Executable Links (*.exe)
  -------------------------
There are no executables (that are not ignored) in the package.
-------------------------
-------------------------
Chocolatey Runner (OPTIPNG v0.7.1.20120913)
-------------------------
  -------------------------
   PowerShell  (chocolateyinstall.ps1)
  -------------------------
Adding 'C:\OptiPNG' to the path and the current shell path
PATH environment variable does not have C:\OptiPNG in it. Adding...
Downloading OptiPNG (http://prdownloads.sourceforge.net/optipng/optipng-0.7.1-win32.zip?download) to C:\Users\EBROWN~1.E
AS\AppData\Local\Temp\chocolatey\OptiPNG\OptiPNGInstall.zip
Extracting C:\Users\EBROWN~1.EAS\AppData\Local\Temp\chocolatey\OptiPNG\OptiPNGInstall.zip to C:\OptiPNG...
C:\OptiPNG
OptiPNG has finished succesfully! The chocolatey gods have answered your request!
OptiPNG has finished succesfully! The chocolatey gods have answered your request!
  -------------------------
   Executable Links (*.exe)
  -------------------------
There are no executables (that are not ignored) in the package.
-------------------------
-------------------------
Chocolatey Runner (PHANTOMJS v1.6.1.20120913)
-------------------------
  -------------------------
   PowerShell  (chocolateyinstall.ps1)
  -------------------------
Adding 'C:\PhantomJS' to the path and the current shell path
PATH environment variable does not have C:\PhantomJS in it. Adding...
Downloading PhantomJS (http://phantomjs.googlecode.com/files/phantomjs-1.6.1-win32-static.zip) to C:\Users\EBROWN~1.EAS\
AppData\Local\Temp\chocolatey\PhantomJS\PhantomJSInstall.zip
Extracting C:\Users\EBROWN~1.EAS\AppData\Local\Temp\chocolatey\PhantomJS\PhantomJSInstall.zip to C:\PhantomJS...
C:\PhantomJS
PhantomJS has finished succesfully! The chocolatey gods have answered your request!
PhantomJS has finished succesfully! The chocolatey gods have answered your request!
  -------------------------
   Executable Links (*.exe)
  -------------------------
There are no executables (that are not ignored) in the package.
-------------------------
=====================================================
Chocolatey has finished installing 'yeoman' - check log for errors.
=====================================================
PS C:\Chocolatey\chocolateyInstall> type install.log
Attempting to resolve dependency 'Compass (ò 0.12.2)'.
Attempting to resolve dependency 'ruby (ò 1.8.7)'.
Attempting to resolve dependency 'git'.
Attempting to resolve dependency 'git.install (= 1.7.11)'.
Attempting to resolve dependency 'nodejs.install (ò 0.8.1)'.
Attempting to resolve dependency 'libjpeg-turbo (ò 1.2.1)'.
Attempting to resolve dependency 'OptiPNG (ò 0.7.1)'.
Attempting to resolve dependency 'PhantomJS (ò 1.6.1)'.
Successfully installed 'ruby 1.8.7.35800'.
Successfully installed 'Compass 0.12.2'.
Successfully installed 'git.install 1.7.11'.
Successfully installed 'git 1.7.11'.
Successfully installed 'nodejs.install 0.8.9.20120913'.
Successfully installed 'libjpeg-turbo 1.2.1'.
Successfully installed 'OptiPNG 0.7.1.20120913'.
Successfully installed 'PhantomJS 1.6.1.20120913'.
@ferventcoder
Owner

Well it didn't install yeoman for some reason. Was the folder already there?

@Iristyle
Contributor

I went through and trashed everything first..

  • Windows Add/Remove Programs - uninstall
  • cuninst thing
  • manual deletion of path variables and directories that might be hanging around

It's possible that I missed removing yeoman from chocolatey\lib ... but if that were the case, I would have need to run cinst yeoman -force, no?

@ferventcoder
Owner

Unknown. Put it in a folder. Use straight nuget and then erase all deps. Then run it again. If it just adds the dependencies, that's what you had going.

@ferventcoder
Owner

Thinking this was good to close?

@Iristyle
Contributor

Yeah, I think it's good to close.. I must have done something wrong.. if no one else is reporting issues on the Yeoman thread, worth closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment