2

I am trying to install Homebrew for OS X 10.8.5 using instructions I found online. I am doing this so I can update my version of Ruby because I am getting this error:

Use RbConfig instead of obsolete and deprecated Config.

when I try to run:

gem install sqlite3

However, when I run:

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

I get another error that says:

stty: stdin isn't a terminal
Failed during: /bin/stty raw -echo
stty: stdin isn't a terminal
Failed during: /bin/stty -raw echo

Any ideas?

the Tin Man
  • 158,662
  • 42
  • 215
  • 303
trueinViso
  • 1,354
  • 3
  • 18
  • 30

4 Answers4

2

I encountered exactly the same situation as yours when I want to install homebrew for Mac OSX 10.9.1. And I find that by typing this in the Terminal:

curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install | ruby

It works for me. There is a thread regarding this question on the homebrew issues board.

https://github.com/Homebrew/homebrew/issues/19276

Erencie
  • 391
  • 2
  • 3
  • 12
2

For those of you interested in still using the "pipe to ruby" technique, the github location of homebrew has changed. Here's the command updated to the new location:

curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install | ruby
Brian Westrich
  • 176
  • 1
  • 4
0

When the standard input is a file, it isn't a terminal, so setting terminal attributes on stty's standard input won't work.

It sounds daft at first, but you will probably find that you can use either stdout or stderr as the input for stty and it will adjust the terminal. Therefore:

system("stty cbreak -echo <&2");

So you could download the script from https://raw.github.com/mxcl/homebrew/go and modify the lines that read system "/bin/stty raw -echo" to system "/bin/stty raw -echo <&2"

Then pump the modified file into ruby -e

partly taken from: (unix/C) "stty: stdin isn't a terminal" when using system() function

Community
  • 1
  • 1
Rots
  • 5,506
  • 3
  • 43
  • 51
0

The solution with system "/bin/stty raw -echo <&2" didn't work for me. I had to brute-force comment-out that line: system "/bin/stty raw -echo". Then it worked.