FreeBSD-11, Mate, Terminal, Gvim
JD
jd1008 at gmail.com
Tue Jul 25 19:28:24 UTC 2017
On 07/25/2017 01:06 PM, Polytropon wrote:
> On Tue, 25 Jul 2017 10:39:29 -0400, James B. Byrne via freebsd-questions wrote:
>> When setting up new hosts I usually open an especially coloured
>> terminal instance and use 'su -l' to become root. I also typically
>> edit using gvim. However, this combination does not work for me on
>> FreeBSD with Mate as it did for me under CentOD-6 and Gnome2. When
>> inside a terminal window as root instead of opening an Xwindow editor
>> when running gvim I get a 'E233: cannot open display' error.
> This is to be expected.
>
> With "su -l", a full login is simulated, so all environmental
> variables will be reset - but $DISPLAY is needed for X. There
> are basically two solutions:
>
> 1. Set $DISPLAY accordingly, for example to :0.0. Refer to the
> documentation of your shell on how to do it, for example in
> C shell "setenv DISPLAY :0.0", in sh/bash "export DISPLAY=:0.0".
>
> 2. Use "su -m" instead, which will preserve the environment of
> your user, and $DISPLAY will be kept set.
>
> See "man su" for details.
There is another way which some people might criticize as unsafe,
but here it is:
as the normal user on the X display, type in the terminal
xhost +root at localhost
sometimes you have to completely qualify "localhost" with
how the name appears in /etc/hosts: such as:
localhost.localdomain
After that, su to root and as root, issue the command
setenv DISPLAY "0:0"
if using bash or sh , then
export DISPLAY="0:0"
now, as root, any graphical tool you invoke will run.
More information about the freebsd-questions
mailing list