diff --git a/Library/Homebrew/manpages/brew.1.md.erb b/Library/Homebrew/manpages/brew.1.md.erb index 3b54fdc84..7d45775ee 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 9f68554e7..d6ea652c8 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 c9640a309..edf2dded7 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 f41fc7025..7f98dc0e0 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 c98b8b6f0..852f9592b 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\. .