xpra start doesn't read /etc/xpra/xorg.conf
I’ve installed xpra in alpine docker container, but I think this issue also appears in a normal install.
When I use xpra start —bind-tcp=0.0.0.0:10000 —daemon=no
—start-child=xclock
, it failed with reason:
<code class="text">
/etc/xpra/conf.d # xpra start --bind-tcp=0.0.0.0:10000 --daemon=no --start-child=xclock
Warning: running as root
Failed to rename log file "/tmp/Xorg.S159.log" to "/tmp/Xorg.S159.log": No such file or directory
X.Org X Server 1.19.5
Release Date: 2017-10-12
X Protocol Version 11, Revision 0
Build Operating System: Linux 4.4.45-0-grsec x86_64 Alpine Linux
Current Operating System: Linux bb7312faa016 4.9.76-gentoo-r1 #27 SMP Sun Mar 11 14:27:21 CST 2018 x86_64
Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.9.76-gentoo-r1 root=UUID=cf0a3df4-4e99-49f0-b46c-12904e489dd5 ro domdadm
Build Date: 07 November 2017 03:08:54PM
Current version of pixman: 0.34.0
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(++) Log file: "/tmp/Xorg.S159.log", Time: Tue Mar 27 10:51:31 2018
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
(EE)
Fatal server error:
(EE) parse_vt_settings: Cannot open /dev/tty0 (No such file or directory)
(EE)
(EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
(EE) Please also check the log file at "/tmp/Xorg.S159.log" for additional information.
(EE)
(EE) Server terminated with error (1). Closing log file.
InitException: xpra_Xdummy did not provide a display number using -displayfd
xpra initialization error:
xpra_Xdummy did not provide a display number using -displayfd
2018-03-27 10:51:39,466 closing TCP socket 0.0.0.0:10000
</code>
Digging into /tmp/Xorg.S159.log gives me this:
<code class="text">
[ 2610.559] (EE) Unable to locate/open config file: "/home/buildozer/aports/community/xpra/pkg/xpra/etc/xpra/xorg.conf"
[ 2610.559] (EE) Unable to locate/open config directory: "/root/.xpra/xorg.conf.d"
[ 2610.559] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[ 2610.559] (==) No Layout section. Using the first Screen section.
[ 2610.559] (==) No screen section available. Using defaults.
[ 2610.559] (**) |-->Screen "Default Screen Section" (0)
[ 2610.559] (**) | |-->Monitor "<default monitor>"
</code>
It seems that it tried to read the Xorg config file from
/home/buildozer/aports/community/xpra/pkg/xpra/etc/xpra/xorg.conf
.
So I added -config /etc/xpra/xorg.conf
to
/etc/xpra/conf.d/55\_server\_x11.conf
like the following
<code class="text">
/etc/xpra/conf.d # tail 55_server_x11.conf
# xvfb = /usr/bin/Xorg -noreset -nolisten tcp \
# +extension GLX +extension RANDR +extension RENDER \
# -auth $XAUTHORITY \
# -logfile auto/Xorg.${DISPLAY}.log \
# -configdir ${HOME}/.xpra/xorg.conf.d \
# -config /home/buildozer/aports/community/xpra/pkg/xpra/etc/xpra/xorg.conf
#
# Selecting virtual X server:
#xvfb = xpra_Xdummy -noreset -novtswitch -nolisten tcp +extension GLX +extension RANDR +extension RENDER -auth $XAUTHORITY -logfile ${XPRA_LOG_DIR}/Xorg.${DISPLAY}.log -configdir ${HOME}/.xpra/xorg.conf.d -config /home/buildozer/aports/community/xpra/pkg/xpra/etc/xpra/xorg.conf
xvfb = xpra_Xdummy -noreset -novtswitch -nolisten tcp +extension GLX +extension RANDR +extension RENDER -auth $XAUTHORITY -logfile ${XPRA_LOG_DIR}/Xorg.${DISPLAY}.log -configdir ${HOME}/.xpra/xorg.conf.d -config /home/buildozer/aports/community/xpra/pkg/xpra/etc/xpra/xorg.conf -config /etc/xpra/xorg.conf
</code>
and then it works.
(from redmine: issue id 8741, created on 2018-03-27)