The summary for this ticket was chosen arbitrarily. I'm not sure what the description should be, and there seem to be a few issues at play, some of which may not be critical, but do raise warnings.
First, the version information is unclear. Debian tells me that the installed version is 2.3-20171213r17616-1, but xpra itself says xpra X11 version 2.3-r17613 64-bit
.
Now to the ticket itself:
I opened a virtual console on tty6 (C-M-F6), ran startx to start the i3 window manager, opened a console window, started tmux, and from there ...
$xpra start --bind=auto --auth=pam --start=xfce4-terminal Warning: invalid option: 'shadow-fullscreen' Warning: cannot use the system proxy for 'start' subcommand, failed to connect to '/run/xpra/system': [Errno 2] No such file or directory Warning: invalid option: 'shadow-fullscreen' 2017-12-13 08:55:44,051 Warning: failed to write script file in '/run/user/1007/xpra': 2017-12-13 08:55:44,052 [Errno 2] No such file or directory: '/run/user/1007/xpra' 2017-12-13 08:55:44,052 ($XDG_RUNTIME_DIR has not been created?) Entering daemon mode; any further errors will be reported to: /home/me/.xpra/S30645.log Actual display used: :3 Actual log file name is now: /home/me/.xpra/:3.log
1] Option shadow-fullscreen
is listed at /etc/xpra/xpra.conf
, but seems to be invalid.
2] The commentary in file /etc/xpra/xpra.conf
says that user-local version should be at ~/xpra/xpra.conf
, but I gathered from elsewhere that it should be ~/.xpra/... (also,I have a pet peeve about cluttering ~/
,and the xfreedesktop standard wants ~/.config/..
for user-local configurations.
3] How do I get rid of the message /run/xpra/system
?
Now, continuing to the central problem of this ticket:
$xpra attach :3 Warning: invalid option: 'shadow-fullscreen' 2017-12-13 08:56:11,311 Xpra gtk2 client version 2.3-r17613 64-bit 2017-12-13 08:56:11,311 running on Linux Devuan 1.0 jessie Warning: invalid option: 'shadow-fullscreen' 2017-12-13 08:56:17,149 GStreamer version 1.10.4 for Python 2.7.13 64-bit 2017-12-13 08:56:18,430 No OpenGL_accelerate module loaded: No module named OpenGL_accelerate 2017-12-13 08:56:18,970 Warning: vendor 'Intel Open Source Technology Center' is greylisted, 2017-12-13 08:56:18,970 you may want to turn off OpenGL if you encounter bugs 2017-12-13 08:56:19,053 OpenGL enabled with Mesa DRI Intel(R) Bay Trail 2017-12-13 08:56:19,188 Error: mmap setup failed: 2017-12-13 08:56:19,188 [Errno 2] No such file or directory: '/run/user/1007/xpra' 2017-12-13 08:56:19,201 keyboard settings: rules=evdev, model=pc105, layout=us,il 2017-12-13 08:56:19,205 desktop size is 1366x768 with 1 screen: 2017-12-13 08:56:19,206 :0.0 (361x203 mm - DPI: 96x96) 2017-12-13 08:56:19,206 eDP1 (340x190 mm - DPI: 102x102) 2017-12-13 08:56:19,419 keyboard layouts: us,il,us,il Please enter the password for unix-domain server /home/me/.xpra/E15-2016-3 : 2017-12-13 08:56:28,585 keyboard settings: rules=evdev, model=pc105, layout=us,il 2017-12-13 08:56:28,602 desktop size is 1366x768 with 1 screen: 2017-12-13 08:56:28,603 :0.0 (361x203 mm - DPI: 96x96) 2017-12-13 08:56:28,603 eDP1 (340x190 mm - DPI: 102x102) 2017-12-13 08:56:29,163 Xpra X11 server version 2.3-r17613 64-bit 2017-12-13 08:56:29,164 running on Linux Devuan 1.0 jessie 2017-12-13 08:56:29,165 enabled remote logging 2017-12-13 08:56:29,168 Attached to :3 2017-12-13 08:56:29,168 (press Control-C to detach) 2017-12-13 08:56:29,172 server does not support xi input devices 2017-12-13 08:56:29,174 server uses: xtest
At this point, a client window does appear on my screen, but as a totally blank black square. The enveloping window is maneuverable by the i3 window manager, but the interior window process itself does not respond to mouse or cursor commands.
xpra stop :3 Warning: invalid option: 'shadow-fullscreen' Please enter the password for unix-domain server /home/me/.xpra/E15-2016-3 : server requested disconnect: server shutdown xpra at :3 has exited.
However, the window remains drawn in place! And ...
pgrep -a xpra 20110 /usr/bin/python /usr/bin/xpra start --bind=auto --auth=pam --start=xfce4-terminal --start-via-proxy=no 30981 /usr/bin/python /usr/bin/xpra attach :3 31331 /usr/bin/python /usr/bin/xpra_signal_listener
But ...
$xpra list Warning: invalid option: 'shadow-fullscreen' No xpra sessions found
A few attempts to politely pkill -15 xpra
didn't work, so I needed to pkill -9 xpra
to clean up.
Here's the server log:
2017-12-13 08:55:44,059 cannot access python uinput module: 2017-12-13 08:55:44,059 No module named uinput _XSERVTransSocketUNIXCreateListener: ...SocketCreateListener() failed _XSERVTransMakeAllCOTSServerListeners: server already running _XSERVTransSocketUNIXCreateListener: ...SocketCreateListener() failed _XSERVTransMakeAllCOTSServerListeners: server already running _XSERVTransSocketUNIXCreateListener: ...SocketCreateListener() failed _XSERVTransMakeAllCOTSServerListeners: server already running Failed to rename log file "/home/me/.xpra/Xorg.S30645.log" to "/home/me/.xpra/Xorg.S30645.log": No such file or directory X.Org X Server 1.19.2 Release Date: 2017-03-02 X Protocol Version 11, Revision 0 Build Operating System: Linux 4.9.0-4-amd64 x86_64 Debian Current Operating System: Linux E15-2016 4.14.0-1-amd64 #1 SMP Debian 4.14.2-1 (2017-11-30) x86_64 Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.14.0-1-amd64 root=UUID= ro quiet bluetooth.blacklist=yes cgroup_enable=memory swapaccount=1 Build Date: 16 October 2017 08:19:45AM xorg-server 2:1.19.2-1+deb9u2 (https://www.debian.org/support) 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: "/home/me/.xpra/Xorg.S30645.log", Time: Wed Dec 13 08:55:44 2017 (++) Using config file: "/etc/xpra/xorg.conf" (==) Using system config directory "/usr/share/X11/xorg.conf.d" 3 2017-12-13 08:55:50,292 created unix domain socket: /home/me/.xpra/E15-2016-3 2017-12-13 08:55:50,810 pointer device emulation using XTest 2017-12-13 08:55:58,504 serving html content from: /usr/share/xpra/www 2017-12-13 08:56:00,568 Warning: webcam forwarding is disabled 2017-12-13 08:56:00,569 the virtual video directory '/sys/devices/virtual/video4linux' was not found 2017-12-13 08:56:00,569 make sure that the 'v4l2loopback' kernel module is installed and loaded 2017-12-13 08:56:00,569 found 0 virtual video devices for webcam forwarding 2017-12-13 08:56:00,581 pulseaudio not started: 'pulseaudio' command not found Warning: invalid option: 'shadow-fullscreen' 2017-12-13 08:56:06,063 GStreamer version 1.10.4 for Python 2.7.13 64-bit 2017-12-13 08:56:06,071 D-Bus notification forwarding is available /bin/sh: 1: /etc/X11/Xsession: not found 2017-12-13 08:56:06,097 xpra X11 version 2.3-r17613 64-bit 2017-12-13 08:56:06,099 uid=1007 (me), gid=1007 (me) 2017-12-13 08:56:06,099 running with pid 30742 on Linux Devuan 1.0 jessie 2017-12-13 08:56:06,100 connected to X11 display :3 with 24 bit colors 2017-12-13 08:56:06,417 xpra is ready. 2017-12-13 08:56:06,452 Warning: lpinfo command failed and returned 1 2017-12-13 08:56:06,453 command used: '/usr/sbin/lpinfo --make-and-model Generic PDF Printer -m' 2017-12-13 08:56:06,470 Warning: lpinfo command produced some warnings: 2017-12-13 08:56:06,471 'lpinfo: Bad file descriptor\n' 2017-12-13 08:56:06,472 printer forwarding enabled using pdf 2017-12-13 08:56:06,472 Warning: printing conflicts with socket authentication module 'pam' 2017-12-13 08:56:06,473 3.8GB of system memory <Boruch snipped here ~500 lines of GTK theme parsing error for xfce4-terminal> Failed to connect to session manager: Failed to connect to the session manager: SESSION_MANAGER environment variable not defined 2017-12-13 08:56:19,802 New unix-domain connection received on /home/me/.xpra/E15-2016-3 2017-12-13 08:56:19,811 Authentication required by PAM authenticator module 2017-12-13 08:56:19,811 sending challenge for username 'me' using xor digest 2017-12-13 08:56:20,192 New unix-domain connection received on /home/me/.xpra/E15-2016-3 2017-12-13 08:56:28,704 Handshake complete; enabling connection 2017-12-13 08:56:28,741 Python/Gtk2 Linux Devuan 1.0 jessie client version 2.3-r17613 64-bit 2017-12-13 08:56:28,742 connected from 'E15-2016' as 'me' 2017-12-13 08:56:28,743 automatic picture encoding enabled, also available: 2017-12-13 08:56:28,743 h264, vp9, vp8, png, webp, rgb24, jpeg, rgb32 2017-12-13 08:56:28,751 client root window size is 1366x768 with 1 display: 2017-12-13 08:56:28,752 :0.0 (361x203 mm - DPI: 96x96) 2017-12-13 08:56:28,752 eDP1 (340x190 mm - DPI: 102x102) 2017-12-13 08:56:28,866 server virtual display now set to 1366x768 2017-12-13 08:56:28,892 setting key repeat rate from client: 660ms delay / 40ms interval 2017-12-13 08:56:28,901 setting keymap: rules=evdev, model=pc105, layout=us,il 2017-12-13 08:56:28,996 setting keyboard layout to 'us,il' 2017-12-13 08:56:29,083 Warning: keymapping changed: 2017-12-13 08:56:29,084 keycode 108 points to 2 modifiers: mod1, mod5 2017-12-13 08:56:29,084 from definition: Meta_R, Alt_R, ISO_Level3_Shift 2017-12-13 08:56:29,084 mod1: Alt_R 2017-12-13 08:56:29,084 mod5: ISO_Level3_Shift 2017-12-13 08:56:29,084 keeping: Alt_R for mod1 2017-12-13 08:56:29,183 DPI set to 16 x 18 (wanted 96 x 96) 2017-12-13 08:56:29,183 you may experience scaling problems, such as huge or small fonts, etc 2017-12-13 08:56:29,183 to fix this issue, try the dpi switch, or use a patched Xorg dummy driver 2017-12-13 08:56:29,210 client 1: Attached to :3 2017-12-13 08:56:29,212 client 1: (press Control-C to detach) 2017-12-13 08:56:29,214 client 1: server does not support xi input devices 2017-12-13 08:56:29,215 client 1: server uses: xtest 2017-12-13 08:57:25,850 Warning: delayed region timeout 2017-12-13 08:57:25,851 region is 15 seconds old, will retry - bad connection? 2017-12-13 08:57:25,852 13 late responses: 2017-12-13 08:57:25,852 1 webp : 56s 2017-12-13 08:57:25,853 2 rgb32: 56s 2017-12-13 08:57:25,854 3 png : 56s 2017-12-13 08:57:25,855 4 webp : 32s 2017-12-13 08:57:25,855 5 png : 32s 2017-12-13 08:57:25,856 6 webp : 19s 2017-12-13 08:57:25,857 7 png : 19s 2017-12-13 08:57:25,857 8 webp : 19s 2017-12-13 08:57:25,858 9 png : 19s 2017-12-13 08:57:25,859 10 webp : 19s 2017-12-13 08:57:25,860 11 png : 18s 2017-12-13 08:57:25,860 12 webp : 15s 2017-12-13 08:57:25,861 13 png : 14s 2017-12-13 08:57:29,740 Disconnecting client /home/me/.xpra/E15-2016-3: 2017-12-13 08:57:29,740 client ping timeout (waited 60 seconds without a response) 2017-12-13 08:57:29,746 xpra client 1 disconnected. 2017-12-13 08:57:49,511 New unix-domain connection received on /home/me/.xpra/E15-2016-3 2017-12-13 08:57:49,565 New unix-domain connection received on /home/me/.xpra/E15-2016-3 2017-12-13 08:57:50,038 Authentication required by PAM authenticator module 2017-12-13 08:57:50,038 sending challenge for username 'me' using xor digest 2017-12-13 08:57:56,172 Handshake complete; enabling connection 2017-12-13 08:57:56,176 Python2/GObject client version 2.3-r17613 64-bit 2017-12-13 08:57:56,177 connected from 'E15-2016' as 'me' 2017-12-13 08:57:56,180 Shutting down in response to client request 2017-12-13 08:57:56,180 Disconnecting client /home/me/.xpra/E15-2016-3: 2017-12-13 08:57:56,181 server shutdown 2017-12-13 08:57:56,183 xpra client 2 disconnected. 2017-12-13 08:57:57,212 killing xvfb with pid 30744 2017-12-13 08:57:57,214 removing socket /home/me/.xpra/E15-2016-3 Gdk-Message: xfce4-terminal: Fatal IO error 11 (Resource temporarily unavailable) on X server :3. (II) Server terminated successfully (0). Closing log file.
The Xorg log has 3479 lines, so here is an excerpt:
$grep -e EE -e WW Xorg.S30645.log.old (WW) warning, (EE) error, (NI) not implemented, (??) unknown. [ 10965.759] (EE) Unable to locate/open config directory: "/home/me/.xpra/xorg.conf.d" [ 10965.780] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist. [ 10965.780] (WW) The directory "/usr/share/fonts/X11/Type1" does not exist. [ 10965.787] (EE) systemd-logind: failed to get session: The name org.freedesktop.login1 was not provided by any .service files [ 10965.788] (EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied [ 10965.794] (WW) Warning, couldn't open module kbd [ 10965.794] (EE) Failed to load module "kbd" (module does not exist, 0) [ 10965.794] (WW) Falling back to old probe method for dummy [ 10965.794] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support [ 10971.238] (WW) DUMMY(0): Option "ConstantDPI" is not used [ 10971.245] (EE) AIGLX: reverting to software rendering [ 10971.436] (WW) <default pointer>: No Device specified, looking for one... [ 10971.777] (WW) Warning, couldn't open module kbd [ 10971.778] (EE) Failed to load module "kbd" (module does not exist, 0) [ 10971.778] (EE) No input driver matching `kbd' [ 10971.789] (EE) PreInit returned 2 for "<default keyboard>" [ 10971.805] (EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied
In ticket #1709, I mentioned in passing that I had a critical failure with my X-server. Part of its final resolution may have been to change my xorg input driver 'kbd' to 'evdev'. Would this be relevant for the 'xorg-dummy' package that xpra seems to use?
I continued testing, and now do have xpra working, but you may want to keep the ticket open for a more general solution.
I inserted the following into /etc/xorg-uinput.conf
:
Section "InputDevice" Identifier "Keyboard0" Driver "evdev" EndSection Section "InputDevice" Identifier "Mouse0" Driver "evdev" Option "Protocol" "auto" Option "Device" "/dev/input/mice" Option "ZAxisMapping" "4 5 6 7" EndSection
The summary for this ticket was chosen arbitrarily.
I've updated it to something that sounds like a real problem, rather than the harmless warning message server does not support xi input devices.
Debian tells me that the installed version is 2.3-20171213r17616-1, but xpra itself says xpra X11 version 2.3-r17613 64-bit.
I wouldn't worry about that, the difference between those two revisions is minimal. They are generated at different times during the build and the source may have been updated in between those two events.
xpra start --bind=auto --auth=pam --start=xfce4-terminal
bind=auto
is the default, you don't need to specify it.
auth=pam
requires you to type your password to connect to the unix domain sockets, but you are not sharing those sockets anywhere on the filesystem so access is already restricted to the same user account. One could argue that having to type the account password every time is not making things more secure, but less.
Warning: cannot use the system proxy for 'start' subcommand
failed to connect to '/run/xpra/system':
[Errno 2] No such file or directory
This is on Devuan, so the system wide proxy service will not be started automatically using its systemd socket and unit files. (#1521)
So you either have to start the system wide proxy server yourself, or use start-via-proxy=no
to avoid the warning.
Starting sessions via the proxy allows you to use features such as xi input devices (#173), and multiseat (#1105), but it isn't essential otherwise.
Warning: invalid option: 'shadow-fullscreen'
You must have an old config file laying around. We do not ship config files that emit any warnings.
Warning: failed to write script file in '/run/user/1007/xpra':
[Errno 2] No such file or directory: '/run/user/1007/xpra'
($XDG_RUNTIME_DIR has not been created?)
The XDG_RUNTIME_DIR
is meant to be created by pam when you open the session.
If this directory is missing, things may break though we try to continue as best we can (see #1129, #1537)
The commentary in file /etc/xpra/xpra.conf says that user-local version..
Thanks, fixed in r17618.
I have a pet peeve about cluttering ~/ ,and the xfreedesktop standard wants ~/.config/.. for user-local configurations
Ticket created: #1723 FWIW: the xpra codebase pre-dates this specification, which was not usable in any distributions until much later.
At this point, a client window does appear on my screen, but as a totally blank black square. The enveloping window is maneuverable by the i3 window manager, but the interior window process itself does not respond to mouse or cursor commands.
Please try the usual workarounds: disable opengl, disable the system tray, clipboard, etc.. until you find the one that is causing the problem. (and report it here so we can fix it) My prime suspect is opengl... (we have whitelisted more intel chipsets, which may have been a mistake)
xpra stop :3
However, the window remains drawn in place! And ...
Looks like something is seriously messed up.
Here's the server log: (..) Warning: delayed region timeout
That's usually the sign of a serious client problem. It is unable to process the screen updates or to reply to the server.
Shutting down in response to client request
Disconnecting client /home/me/.xpra/E15-2016-3:
server shutdown
xpra client 2 disconnected.
killing xvfb with pid 30744
removing socket /home/me/.xpra/E15-2016-3
This looks like a clean shutdown.
If the server process does not exit, add "-d all" to your server command line to see where it gets stuck.
You can also send it SIGUSR1
/ SIGUSR2
to make it dump all remaining active threads.
The Xorg log has 3479 lines, so here is an excerpt:
[ 10971.238] (WW) DUMMY(0): Option "ConstantDPI" is not used
FYI: you may or may not want to use the patched dummy driver: see wiki/Xdummy.
In ticket #1709, I mentioned in passing that I had a critical failure with my X-server. Part of its final resolution may have been to change my xorg input driver 'kbd' to 'evdev'. Would this be relevant for the 'xorg-dummy' package that xpra seems to use?
If you are not using "xi input devices", xpra will not use any input driver at all: the keyboard and mouse are emulated using xtest. So this is unlikely to be a problem here.
I continued testing, and now do have xpra working, ...
How did you fix things?
I inserted the following into
/etc/xorg-uinput.conf
: ...
Why, and how is this relevant to xpra?
How did you fix things?
I inserted the following into /etc/xorg-uinput.conf: ...
Why, and how is this relevant to xpra?
My bad. The correct path is: /etc/xpra/xorg-uinput.conf
. The file was installed by xpra. The snippet was copied from the version of my /etc/X11/xorg/xorg.conf
that restored my X11 server after some still-unidentified failure (possibly devuan/systemd -related).
The relevance to xpra is that whatever procedure is used to create file /etc/xpra/xorg-uinput.conf
wasn't picking up important elements of the host system's xorg configuration, in this case /etc/X11/xorg.conf
, but possibly also from any of the files in the conf.d sub-directory.
The fix isn't complete. Something is wrong with my keyboard definition in client window. I need to paste certain symbols that aren't typing correctly, eg. period(ie full-stop), open curly-brace, semi-colon, less-than sign.
The snippet was copied from the version of my /etc/X11/xorg/xorg.conf that restored my X11 server after some still-unidentified failure
Don't do that. That snippet adds real local devices to xpra's virtual framebuffer. You don't want that.
I am puzzled as to how that ends up making any difference whatsoever since you should not be using uinput:
pointer device emulation using XTest
The fix isn't complete.
This is not a fix.
This is not a fix.
I re-tested, without the snippet, and now everything seems to work fine. I don't remember doing anything else. The only difference was that at the failure point, I had no other xpra servers or clients running, and now, at the point I can't reproduce the failure, I do have a second xpra server / client running (the firefox instance from which I've been communicating with you). If you ask me shut this firefox down for the purpose of trying to re-create the failure, I will, but it's a minor pain if you're certain the issue is irrelevant/
I had no other xpra servers or clients running, and now, at the point I can't reproduce the failure...
Servers should be completely independent from each other, and even more so when using multiseat (#1105) where they end up "containerized". The uinput config would have been used, even when uinput could not load, that has now been fixed: ticket:1611#comment:21.
What I am saying is that the change you made would add local non-virtual devices to your xpra server. If this "fixes" things, then you end up not using xpra for your input devices and it may then be impossible to use the keyboard or mouse when connecting remotely. This is not how xpra is meant to run.
Can I close this? Is there still a problem?
Yes. I haven't been able to reproduce it since.
this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/1722