diff --git a/Library/Homebrew/manpages/brew.1.md.erb b/Library/Homebrew/manpages/brew.1.md.erb index 3b54fdc84a..7d45775eef 100644 --- a/Library/Homebrew/manpages/brew.1.md.erb +++ b/Library/Homebrew/manpages/brew.1.md.erb @@ -162,6 +162,12 @@ Note that environment variables must have a value set to be detected. For exampl If set, Homebrew will tweak behaviour to be more relevant for Homebrew developers (active or budding), e.g. turning warnings into errors. + * `HOMEBREW_DISPLAY`: + If set, Homebrew will use this X11 display when opening a page in a browser, + for example with `brew home`. Primarily useful on Linux. + + *Default:* the value of the user's `DISPLAY` environment variable. + * `HOMEBREW_EDITOR`: If set, Homebrew will use this editor when editing a single formula, or several formulae in the same directory. diff --git a/Library/Homebrew/utils.rb b/Library/Homebrew/utils.rb index 9f68554e7f..d6ea652c8a 100644 --- a/Library/Homebrew/utils.rb +++ b/Library/Homebrew/utils.rb @@ -388,6 +388,8 @@ def exec_browser(*args) browser ||= OS::PATH_OPEN if defined?(OS::PATH_OPEN) return unless browser + ENV["DISPLAY"] = ENV["HOMEBREW_DISPLAY"] + safe_exec(browser, *args) end diff --git a/bin/brew b/bin/brew index c9640a3091..edf2dded7f 100755 --- a/bin/brew +++ b/bin/brew @@ -54,7 +54,7 @@ HOMEBREW_LIBRARY="$HOMEBREW_REPOSITORY/Library" # Whitelist and copy to HOMEBREW_* all variables previously mentioned in # manpage or used elsewhere by Homebrew. for VAR in AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY BINTRAY_USER BINTRAY_KEY \ - BROWSER EDITOR GIT NO_COLOR PATH VISUAL + BROWSER DISPLAY EDITOR GIT NO_COLOR PATH VISUAL do # Skip if variable value is empty. [[ -z "${!VAR}" ]] && continue diff --git a/docs/Manpage.md b/docs/Manpage.md index f41fc7025b..7f98dc0e0e 100644 --- a/docs/Manpage.md +++ b/docs/Manpage.md @@ -1037,6 +1037,12 @@ Note that environment variables must have a value set to be detected. For exampl If set, Homebrew will tweak behaviour to be more relevant for Homebrew developers (active or budding), e.g. turning warnings into errors. + * `HOMEBREW_DISPLAY`: + If set, Homebrew will use this X11 display when opening a page in a browser, + for example with `brew home`. Primarily useful on Linux. + + *Default:* the value of the user's `DISPLAY` environment variable. + * `HOMEBREW_EDITOR`: If set, Homebrew will use this editor when editing a single formula, or several formulae in the same directory. diff --git a/manpages/brew.1 b/manpages/brew.1 index c98b8b6f0f..852f9592bb 100644 --- a/manpages/brew.1 +++ b/manpages/brew.1 @@ -1266,6 +1266,13 @@ If set, any commands that can emit debugging information will do so\. If set, Homebrew will tweak behaviour to be more relevant for Homebrew developers (active or budding), e\.g\. turning warnings into errors\. . .TP +\fBHOMEBREW_DISPLAY\fR +If set, Homebrew will use this X11 display when opening a page in a browser, for example with \fBbrew home\fR\. Primarily useful on Linux\. +. +.IP +\fIDefault:\fR the value of the user\'s \fBDISPLAY\fR environment variable\. +. +.TP \fBHOMEBREW_EDITOR\fR If set, Homebrew will use this editor when editing a single formula, or several formulae in the same directory\. .