[winswitch] How to install local unprivileged Xpra server?

Ben Mishkanian FusionGate200 at hotmail.com
Fri Jan 26 05:10:53 GMT 2018


[bmishkania at ussd-prd-rdln01 xpra-2.2.3]$ xpra showconfig | grep -i ^xvfb
xvfb                           = 'xpra_Xdummy -noreset -novtswitch -nolisten tcp +extension GLX +extension RANDR +extension RENDER -auth $XAUTHORITY -logfile ${XPRA_LOG_DIR}/Xorg.${DISPLAY}.log -configdir ${XDG_RUNTIME_DIR}/xpra/xorg.conf.d/$PID -config /home/bmishkania/bin/localPython/etc/xpra/xorg.conf'

It seems like it is still trying to use Xdummy but I am not sure why. I tried next to install Xvfb as suggested:
yumdownloader xorg-x11-server-Xvfb
rpm2cpio ./xorg-x11-server-Xvfb-1.19.3-11.el7_4.1.x86_64.rpm | cpio -idmv
cp ./usr/bin/Xvfb ~/bin/ # copy Xvfb to directory that is in $PATH
rm -r ~/bin/xpra-2.2.3/
./setup.py --without-Xdummy install --home=/home/bmishkania/bin/xpra-2.2.3/

The build switches show:
build switches:
* PIC                  : Y
* Xdummy               : N
* Xdummy_wrapper       : Auto
* annotate             : Y
* bencode              : Y
* bundle_tests         : N
* client               : Y
* clipboard            : Y
* csc_libyuv           : N
* csc_swscale          : N
* cuda_kernels         : Y
* cuda_rebuild         : Y
* cython_bencode       : Y
* dbus                 : Y
* debug                : N
* dec_avcodec2         : N
* enc_ffmpeg           : N
* enc_x264             : Y
* enc_x265             : N
* example              : Y
* gtk2                 : Y
* gtk3                 : N
* gtk_x11              : Y
* html5                : Y
* html5_brotli         : Y
* html5_gzip           : Y
* jpeg                 : N
* mdns                 : Y
* minify               : Y
* netdev               : Y
* nvenc                : N
* nvfbc                : N
* opengl               : Y
* pam                  : Y
* pillow               : Y
* printing             : Y
* proxy                : Y
* rebuild              : Y
* rfb                  : Y
* sd_listen            : Y
* server               : Y
* service              : Y
* shadow               : Y
* sound                : Y
* strict               : Y
* tests                : N
* uinput               : Y
* v4l2                 : Y
* verbose              : N
* vpx                  : N
* vsock                : Y
* warn                 : Y
* webcam               : Y
* webp                 : N
* x11                  : Y
* xinput               : Y

But it doesn't seem to have helped:

[bmishkania at ussd-prd-rdln01 xpra-2.2.3]$ xpra start --start=~/bin/firefox/firefox --daemon=no
2018-01-25 20:58:11,950 cannot access python uinput module:
2018-01-25 20:58:11,951  No module named uinput
xpra main error:
Traceback (most recent call last):
  File "/home/bmishkania/bin/xpra-2.2.3/lib64/python/xpra/scripts/main.py", line 175, in main
    return run_mode(script_file, err, options, args, mode, defaults)
  File "/home/bmishkania/bin/xpra-2.2.3/lib64/python/xpra/scripts/main.py", line 1494, in run_mode
    return run_server(error_cb, options, mode, script_file, args, current_display)
  File "/home/bmishkania/bin/xpra-2.2.3/lib64/python/xpra/scripts/server.py", line 737, in run_server
    xvfb, display_name, cleanups = start_Xvfb(opts.xvfb, pixel_depth, display_name, cwd, uid, gid, username, xauth_data, uinput_uuid)
  File "/home/bmishkania/bin/xpra-2.2.3/lib64/python/xpra/x11/vfb_util.py", line 189, in start_Xvfb
    stdin=subprocess.PIPE, preexec_fn=preexec, cwd=cwd)
  File "/usr/lib64/python2.7/subprocess.py", line 711, in __init__
    errread, errwrite)
  File "/usr/lib64/python2.7/subprocess.py", line 1311, in _execute_child
    _close_in_parent(p2cread)
  File "/usr/lib64/python2.7/subprocess.py", line 1210, in _close_in_parent
    os.close(fd)
OSError: [Errno 9] Bad file descriptor

xpra initialization error:
 xpra_Xdummy: did not provide a display number using displayfd
[bmishkania at ussd-prd-rdln01 xpra-2.2.3]$ xpra showconfig | grep -i ^xvfb
xvfb                           = 'xpra_Xdummy -noreset -novtswitch -nolisten tcp +extension GLX +extension RANDR +extension RENDER -auth $XAUTHORITY -logfile ${XPRA_LOG_DIR}/Xorg.${DISPLAY}.log -configdir ${XDG_RUNTIME_DIR}/xpra/xorg.conf.d/$PID -config /home/bmishkania/bin/localPython/etc/xpra/xorg.conf'


Thanks,
Ben
________________________________
From: Antoine Martin <antoine at nagafix.co.uk>
Sent: Wednesday, January 24, 2018 8:47 PM
To: Ben Mishkanian
Cc: Xpra and Winswitch ML
Subject: Re: [winswitch] How to install local unprivileged Xpra server?

> I tried building without Xdummy and ended up with a different error.
> Here is what I did:
> rm -r ~/bin/xpra-2.2.3/
> ./setup.py --without-Xdummy install --home=/home/bmishkania/bin/xpra-2.2.3/
> xpra start --start=~/bin/firefox/firefox --daemon=no
>
> It prints this:
> 2018-01-24 20:03:58,708 cannot access python uinput module:
> 2018-01-24 20:03:58,708  No module named uinput
> xpra main error:
> Traceback (most recent call last):
(..)
> OSError: [Errno 9] Bad file descriptor
This error message has now been improved:
http://xpra.org/trac/changeset/18147
Changeset 18147 – Xpra <http://xpra.org/trac/changeset/18147>
xpra.org
xpra - screen for X




> xpra initialization error:
>  xpra_Xdummy: did not provide a display number using displayfd
Based on this message, I'm not convinced that you are actually using
xvfb. Double-check your configuration with:
xpra showconfig | grep -i ^xvfb

> I do not think Xvfb is installed on this system, even though Xorg is.
The xorg-x11-server-Xvfb package on CentOS / RHEL 7.x only contains one
binary file named "Xvfb". You can just unpack the RPM by hand and put
the binary in your $PATH. The dependencies should already be present if
you have /usr/bin/Xorg installed.

> As
> an unprivileged user it may be hard for me to install Xvfb, so could
> there be a different solution?
Yes, figure out why you get those tty errors when running xpra_Xdummy.
Regular CentOS 7.x systems can normally run it just fine.

Cheers
Antoine

>
> Thanks,
> Ben
>
> ------------------------------------------------------------------------
> *From:* Antoine Martin <antoine at nagafix.co.uk>
> *Sent:* Wednesday, January 24, 2018 1:26 AM
> *Cc:* Ben Mishkanian; Xpra and Winswitch ML
> *Subject:* Re: [winswitch] How to install local unprivileged Xpra server?
>
> Please always CC the mailing list.
>
> On 24/01/18 13:39, Ben Mishkanian wrote:
>> Thank you for the quick response!
>>
>>
>> It is CentOS 7.4.1708. You're right, I used the wrong PYTHONPATH. Oops.
>> It allows server commands now, but now there's a new error. Here is what
>> I did:
>>
>>
>> ./setup.py -v install --home=/home/bmishkania/bin/xpra-2.2.3/
>>
>> export PYTHONPATH=/home/bmishkania/bin/xpra-2.2.3/lib64/python:$PYTHONPATH
>>
>> xpra start --start=~/bin/firefox/firefox
> This should not work unless you've also installed xpra somewhere on the
> $PATH or modified $PATH.
> You could also use the path to somewhere/install/bin/xpra directly.
>
>> It prints:
>>
>> Warning: cannot use the system proxy for 'start' subcommand,
> Harmless warning, you don't have a system service, it will fallback to
> self-daemonizing.
>
>>  failed to connect to '/run/xpra/system':
>>  [Errno 2] No such file or directory
> Harmless warning because you are missing the tmpfiles.d bits.
>
>> Entering daemon mode; any further errors will be reported to:
>>   /run/user/109999/xpra/S12370.log
>>
>> Here is the log file:
>> 2018-01-23 22:12:33,912 cannot access python uinput module:ESC[0m
>> 2018-01-23 22:12:33,912  No module named uinputESC[0m
> Harmless, you don't have uinput installed. You wouldn't be able to use
> it anyway without the system service without also modifying the device
> permissions.
>
>> Failed to rename log file "/run/user/109999/xpra/Xorg.S12370.log" to
>> "/run/user/109999/xpra/Xorg.S12370.log": No such file or directory
> Harmless, that's a known Xorg bug languishing upstream.
>
>> X.Org X Server 1.19.3
>> Release Date: 2017-03-15
>> X Protocol Version 11, Revision 0
>> Build Operating System:  3.10.0-514.16.1.el7.x86_64
>> Current Operating System: Linux ussd-prd-rdln01
>> 3.10.0-693.5.2.el7.x86_64 #1 SMP Fri Oct 20 20:32:50 UTC 2017 x86_64
>> Kernel command line: BOOT_IMAGE=vmlinuz initrd=initrd
>> rdblacklist=nouveau net.ifnames=0 biosdevname=0 user_namespace.enable=1
>> mlx4_core.port_type_array=2,2
>> ip=10.12.144.15:10.12.144.11:10.12.144.1:255.255.252.0
>> BOOTIF=01-0c-c4-7a-1d-ae-de
>> Build Date: 05 August 2017  06:19:43AM
>> Build ID: xorg-x11-server 1.19.3-11.el7
>> 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: "/run/user/109999/xpra/Xorg.S12370.log", Time: Tue Jan 23
>> 22:12:34 2018
>> (++) Using config file:
>> "/home/bmishkania/bin/localPython/etc/xpra/xorg.conf"
>> (==) Using system config directory "/usr/share/X11/xorg.conf.d"
>> (EE)
>> Fatal server error:
>> (EE) parse_vt_settings: Cannot open /dev/tty0 (Permission denied)
>> (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
>> "/run/user/109999/xpra/Xorg.S12370.log" for additional information.
>> (EE)
>> (EE) Server terminated with error (1). Closing log file.
>> xpra initialization error:
>>  xpra_Xdummy: did not provide a display number using displayfd
> xpra_Xdummy failed to run, there could be a number of reasons for that.
> The easiest fix for you might just be to switch to Xvfb:
> ./setup.py --without-Xdummy install --home=....
>
> Cheers
> Antoine
>
>>
>>
>> Any ideas how I can fix this?
>>
>> Thank you,
>> Ben
>>
>> ------------------------------------------------------------------------
>> *From:* shifter-users <shifter-users-bounces at lists.devloop.org.uk> on
>> behalf of Antoine Martin via shifter-users
>> <shifter-users at lists.devloop.org.uk>
>> *Sent:* Tuesday, January 23, 2018 9:57 PM
>> *To:* shifter-users at lists.devloop.org.uk
>> *Subject:* Re: [winswitch] How to install local unprivileged Xpra server?
>>
>> On 24/01/18 12:47, Ben Mishkanian via shifter-users wrote:
>>> Hi,
>>>
>>>
>>> I am trying to build and install from source an Xpra 2.2.3 server as an unprivileged user on CentOS 7. I ran setup.py and it seems to complete fine, although it prints a bunch of brotli errors saying it failed to minify various files.
>> You can ignore those errors or turn off the brotli feature, see:
>> ./setup.py --help
>>
>>> In any case it produces the xpra binary, but when I run `xpra -h` it says (This xpra installation does not support starting local servers.)
>> Please always include the exact command lines that you have used so we
>> can help you with that.
>> Also specify which CentOS 7 you are using, CentOS versions older than
>> 7.2 are not supported in xpra versions 2.x and later, see:
>> https://www.xpra.org/trac/wiki/Platforms
Platforms – Xpra<https://www.xpra.org/trac/wiki/Platforms>
www.xpra.org
Platforms. Unless otherwise stated, all the operating systems listed here support all versions of xpra. The only architectures officially tested and supported are ...



> Platforms – Xpra <https://www.xpra.org/trac/wiki/Platforms>
Platforms – Xpra<https://www.xpra.org/trac/wiki/Platforms>
www.xpra.org
Platforms. Unless otherwise stated, all the operating systems listed here support all versions of xpra. The only architectures officially tested and supported are ...



> www.xpra.org<http://www.xpra.org>
xpra home page<http://www.xpra.org/>
www.xpra.org
About. Xpra is an open-source multi-platform persistent remote display server and client for forwarding applications and desktop screens. It gives you remote access ...



> Platforms. Unless otherwise stated, all the operating systems listed
> here support all versions of xpra. The only architectures officially
> tested and supported are ...
>
>
>
>> Platforms – Xpra <https://www.xpra.org/trac/wiki/Platforms>
Platforms – Xpra<https://www.xpra.org/trac/wiki/Platforms>
www.xpra.org
Platforms. Unless otherwise stated, all the operating systems listed here support all versions of xpra. The only architectures officially tested and supported are ...



> Platforms – Xpra <https://www.xpra.org/trac/wiki/Platforms>
Platforms – Xpra<https://www.xpra.org/trac/wiki/Platforms>
www.xpra.org
Platforms. Unless otherwise stated, all the operating systems listed here support all versions of xpra. The only architectures officially tested and supported are ...



> www.xpra.org<http://www.xpra.org>
xpra home page<http://www.xpra.org/>
www.xpra.org
About. Xpra is an open-source multi-platform persistent remote display server and client for forwarding applications and desktop screens. It gives you remote access ...



> Platforms. Unless otherwise stated, all the operating systems listed
> here support all versions of xpra. The only architectures officially
> tested and supported are ...
>
>
>
>> www.xpra.org<http://www.xpra.org> <http://www.xpra.org>
xpra home page<http://www.xpra.org/>
www.xpra.org
About. Xpra is an open-source multi-platform persistent remote display server and client for forwarding applications and desktop screens. It gives you remote access ...


xpra home page<http://www.xpra.org/>
www.xpra.org
About. Xpra is an open-source multi-platform persistent remote display server and client for forwarding applications and desktop screens. It gives you remote access ...



> xpra home page <http://www.xpra.org/>
xpra home page<http://www.xpra.org/>
www.xpra.org
About. Xpra is an open-source multi-platform persistent remote display server and client for forwarding applications and desktop screens. It gives you remote access ...



> www.xpra.org<http://www.xpra.org>
xpra home page<http://www.xpra.org/>
www.xpra.org
About. Xpra is an open-source multi-platform persistent remote display server and client for forwarding applications and desktop screens. It gives you remote access ...



> About. Xpra is an open-source multi-platform persistent remote display
> server and client for forwarding applications and desktop screens. It
> gives you remote access ...
>
>
>
>> Platforms. Unless otherwise stated, all the operating systems listed
>> here support all versions of xpra. The only architectures officially
>> tested and supported are ...
>>
>>
>>
>>
>> Be aware that your home made build will be severely degraded and may not
>> work as expected. (performance, features, security, etc)
>>
>>> How can I find out why it can't start local servers? setup.py showed that the "server" build switch is set to "Y".
>> My guess is that you're not setting the PYTHONPATH correctly.
>> You should be installing into a directory:
>> ./setup.py install --home=./install
>> Then adjusting PATH and PYTHONPATH accordingly.
>>
>> Cheers
>> Antoine
>>> Thank you,
>>>
>>> Ben
>>> _______________________________________________
>>> shifter-users mailing list
>>> shifter-users at lists.devloop.org.uk
>>> http://lists.devloop.org.uk/mailman/listinfo/shifter-users
shifter-users Info Page - devloop.org.uk<http://lists.devloop.org.uk/mailman/listinfo/shifter-users>
lists.devloop.org.uk
General discussion and help on using Window Switch. To see the collection of prior postings to the list, visit the shifter-users Archives.



> shifter-users Info Page - devloop.org.uk
> <http://lists.devloop.org.uk/mailman/listinfo/shifter-users>
shifter-users Info Page - devloop.org.uk<http://lists.devloop.org.uk/mailman/listinfo/shifter-users>
lists.devloop.org.uk
General discussion and help on using Window Switch. To see the collection of prior postings to the list, visit the shifter-users Archives.



> lists.devloop.org.uk
> General discussion and help on using Window Switch. To see the
> collection of prior postings to the list, visit the shifter-users Archives.
>
>
>
>> shifter-users Info Page - devloop.org.uk
>> <http://lists.devloop.org.uk/mailman/listinfo/shifter-users>
shifter-users Info Page - devloop.org.uk<http://lists.devloop.org.uk/mailman/listinfo/shifter-users>
lists.devloop.org.uk
General discussion and help on using Window Switch. To see the collection of prior postings to the list, visit the shifter-users Archives.



> shifter-users Info Page - devloop.org.uk
> <http://lists.devloop.org.uk/mailman/listinfo/shifter-users>
shifter-users Info Page - devloop.org.uk<http://lists.devloop.org.uk/mailman/listinfo/shifter-users>
lists.devloop.org.uk
General discussion and help on using Window Switch. To see the collection of prior postings to the list, visit the shifter-users Archives.



> lists.devloop.org.uk
> General discussion and help on using Window Switch. To see the
> collection of prior postings to the list, visit the shifter-users Archives.
>
>
>
>> lists.devloop.org.uk
>> General discussion and help on using Window Switch. To see the
>> collection of prior postings to the list, visit the shifter-users Archives.
>>
>>
>>
>>>
>>
>> _______________________________________________
>> shifter-users mailing list
>> shifter-users at lists.devloop.org.uk
>> http://lists.devloop.org.uk/mailman/listinfo/shifter-users
shifter-users Info Page - devloop.org.uk<http://lists.devloop.org.uk/mailman/listinfo/shifter-users>
lists.devloop.org.uk
General discussion and help on using Window Switch. To see the collection of prior postings to the list, visit the shifter-users Archives.



> shifter-users Info Page - devloop.org.uk
> <http://lists.devloop.org.uk/mailman/listinfo/shifter-users>
shifter-users Info Page - devloop.org.uk<http://lists.devloop.org.uk/mailman/listinfo/shifter-users>
lists.devloop.org.uk
General discussion and help on using Window Switch. To see the collection of prior postings to the list, visit the shifter-users Archives.



> lists.devloop.org.uk
> General discussion and help on using Window Switch. To see the
> collection of prior postings to the list, visit the shifter-users Archives.
>
>
>
>> shifter-users Info Page - devloop.org.uk
>> <http://lists.devloop.org.uk/mailman/listinfo/shifter-users>
shifter-users Info Page - devloop.org.uk<http://lists.devloop.org.uk/mailman/listinfo/shifter-users>
lists.devloop.org.uk
General discussion and help on using Window Switch. To see the collection of prior postings to the list, visit the shifter-users Archives.



> shifter-users Info Page - devloop.org.uk
> <http://lists.devloop.org.uk/mailman/listinfo/shifter-users>
shifter-users Info Page - devloop.org.uk<http://lists.devloop.org.uk/mailman/listinfo/shifter-users>
lists.devloop.org.uk
General discussion and help on using Window Switch. To see the collection of prior postings to the list, visit the shifter-users Archives.



> lists.devloop.org.uk
> General discussion and help on using Window Switch. To see the
> collection of prior postings to the list, visit the shifter-users Archives.
>
>
>
>> lists.devloop.org.uk
>> General discussion and help on using Window Switch. To see the
>> collection of prior postings to the list, visit the shifter-users Archives.
>>
>>
>>
>




More information about the shifter-users mailing list