| Age | Commit message (Collapse) | Author |
|
We're using /bin/bash and not /bin/sh for a reason so don't allow users
to override this (seen in Homebrew/homebrew#49514).
Closes Homebrew/homebrew#49515.
|
|
symlink
Closes Homebrew/homebrew#49261.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
|
|
This makes the logic match the Ruby code from before it was moved here
(see 390e327f55126f7ee9519bc6c03a0c0aa14f7168)
|
|
HOMEBREW_BREW_FILE and BREW_FILE_DIRECTORY are already canonicalized.
|
|
`bin/brew` is getting a bit bloated and it's annoying to open all of
`HOMEBREW_PREFIX` in your editor of choice and have it search through
the `Cellar`. Let's instead keep the bare minimum in `bin/brew` and
move the rest to `Library`.
Closes Homebrew/homebrew#49185.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
|
|
|
|
This means that internal command aliases can be used for Bash commands
(such as the new, Bash-based `brew update`).
Fixes Homebrew/homebrew#49182.
Closes Homebrew/homebrew#49184.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
|
|
Also, rename the existing updater to `update-ruby` to allow using as
a fallback. It will eventually be removed.
Closes Homebrew/homebrew#49109.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
|
|
Closes Homebrew/homebrew#48803.
|
|
This also means `bin/brew` is again consistent with `brew command` and
`brew commands`.
|
|
This should help to avoid collisions with external commands and other
shell functions in the future and is closer to what we do in Ruby, where
commands are namespaced by being methods of the `Homebrew` module.
|
|
We have asserted before that the 1st argument is the command name. No
need to pass it to the bash command, which will make the argument
handling for the command itself a bit easier.
|
|
Commands implemented in shell (bash) are supposed to be sourced from
`bin/bash` instead of being executed directly. Consequently, don't
expect the implementation files to be executable.
|
|
|
|
Closes Homebrew/homebrew#48197.
Signed-off-by: Xu Cheng <xucheng@me.com>
|
|
We only need to check sudo for commands which create files.
|
|
|
|
|
|
|
|
HOMEBREW_BASH_COMMAND variable will always exist. So we only need to
check whether the corresponding file exist or not.
|
|
Shifting `-v` argument is all we need to do. We shouldn't enumerate
arguments.
|
|
Otherwise when `bin/brew` is updated in-place Bash will carry on from
the offset and this can cause issues.
Thanks to `@UniqMartin` for pointing this out.
|
|
|
|
|
|
|
|
Everyone should be using a UTF-8 locale nowadays. Not using one causes
issues like `brew doctor` failing while checking symbolic links that
point at file names with non-ASCII characters, since OS X always uses
Unicode for the file system.
Rely on `locale charmap` to detect the currently selected encoding and
if that's not UTF-8, override the user's choice (if any) by setting
`LC_ALL` to `en_US.UTF-8`, the assumption being that every system has a
usable `en_US.UTF-8` locale installed.
Fixes Homebrew/homebrew#44744.
Closes Homebrew/homebrew#47247.
Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
|
|
For typical installations where `brew` is not a symbolic link, this
reduces the number of processes that need to be spawned.
Closes Homebrew/homebrew#46269.
Signed-off-by: Martin Afanasjew <martin@afanasjew.de>
|
|
This reduces the number of processes that need to be forked. If
libtool's `config.guess` is to be trusted, there was never another
spelling/capitalization other that `Darwin`.
|
|
This very slightly reduces duplication and the risk of inconsistency by
exporting in one branch, but not the other. By putting all the `export`
statements right before the `exec` it is more obvious what is passed on.
|
|
While `var=$(<command>)` is perfectly valid and won't create any issues,
it is often surprising for less shell-savvy users. Quoting these cases
like in all other instances makes the code more uniform, helps to avoid
future mistakes, and has no downsides.
|
|
|
|
|
|
|
|
Closes Homebrew/homebrew#45816.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
|
|
Closes Homebrew/homebrew#34246.
|
|
|
|
|
|
|
|
This was reported in Tigerbrew, but is a worthwhile fix everywhere.
Fixes mistydemeo/tigerbrew#177.
|
|
This reverts commit dfd4dd12a41e1697ee9d5feac12cc1ea7c3a590e.
Fixes the problems from Homebrew/homebrew#17683 and Homebrew/homebrew#17685.
|
|
This reverts commit ac156b36d00ead5f225389f0a1d8069d0c1cce4a.
|
|
|
|
Make it no longer possible to override e.g. `brew install` with a
script if there is already a built-in Homebrew command named
`brew install`.
References Homebrew/homebrew#17673
|
|
This reverts commit 67d06b84d00a17cf43770eedf34e37e50e209741.
Closes Homebrew/homebrew#17683.
Closes Homebrew/homebrew#17685.
|
|
This reverts commit 225546a3ee2d3f22e185e47d4db6f6716a56669b.
|
|
This allows us to force using the system Ruby on OSX but allow
the development of Homebrew for Linux or Windows to not rely
on OSX paths.
Closes Homebrew/homebrew#17548.
|
|
|
|
@sceaga has discontinued his homebrew fork, so tigerbrew is now PPC/
Tiger users' best bet.
|
|
At your option: `brew --config -1`.
|
|
Shows full backtrace, which is useful. Now blank "raise" statements are the equivalent of admitting programmer error. The backtrace will be useful.
|