Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Starting xpra server... #298

Closed
libben opened this issue Dec 16, 2016 · 18 comments
Closed

Starting xpra server... #298

libben opened this issue Dec 16, 2016 · 18 comments

Comments

@libben
Copy link

libben commented Dec 16, 2016

I tried running iceweasel@default and xterm@default. Both hang with "Starting xpra server..."
I am on Parabola GNU/Linux-libre.
Commands entered, exactly:

% sudo pip3 install subuser
% subuser subuser add xterm xterm@default
A (Accept and apply changes)
% SUBUSER_DEBUG_XPRA=TRUE SUBUSER_VERBOSITY=5 subuser run xterm

Results of the last command:

/home/ben/.subuser/registry: /usr/bin/git ls-tree master ./

/home/ben/.subuser/registry: /usr/bin/git ls-tree -d master ./

/home/ben/.subuser/registry: /usr/bin/git show master:subusers.json

/home/ben/.subuser/registry: /usr/bin/git show master:permissions/xterm/permissions.json

Setting up subuser home dir.
Requesting connection to X11 bridge.
/home/ben/.subuser/registry: /usr/bin/git show master:permissions/!service-subuser-xterm-xpra-client/permissions.json

/home/ben/.subuser/registry: /usr/bin/git show master:permissions/!service-subuser-xterm-xpra-server/permissions.json

Cleaning up old bridge volume files.
Setting up XPRA bridge volumes.
Creating the /home/ben/.subuser/volumes/xpra/xterm/tmp/.X11-unix directory.
Creating the /home/ben/.subuser/volumes/xpra/xterm/xpra-home directory.
Creating the /home/ben/.subuser/volumes/xpra/xterm/xpra-home/tmp directory.
Starting xpra server...
Hostname set.
Entering run subrutine.
Building run command.
Running subuser with Docker.
docker 'run' '--rm' '--cidfile' '/tmp/subuser-!service-subuser-xterm-xpra-server' '-e' 'TMPDIR=/home/ben/tmp' '-e' 'HOME=/home/ben' '--workdir=/home/ben' '--net=none' '--volume=/home/ben/.subuser/volumes/xpra/xterm/tmp/.X11-unix:/tmp/.X11-unix:rw' '--volume=/home/ben/.subuser/volumes/xpra/xterm/xpra-home:/home/ben:rw' '-e' 'USER=ben' '--user=1000' '--hostname' 'xpra-serverdf8a9e65759fe10ef0121a796fc75ef76b4948bce28275cf592a' '--entrypoint' '/usr/bin/xpra' 'sha256:fbda48dc7c1a01c375d6defa19179775c262c67eaa7d11db67001379ea182f5c' 'start' '--no-pulseaudio' '--no-mdns' '--encoding=rgb' '--no-daemon' '--no-notifications' '--mmap' '--opengl=no' '--cursors' '--no-system-tray' '--clipboard' ':100'
Waiting for CID file to be generated.
Reading CID file.
Getting server CID
_XSERVTransmkdir: Owner of /tmp/.X11-unix should be set to root

X.Org X Server 1.19.0
Release Date: 2016-11-15
X Protocol Version 11, Revision 0
Build Operating System: Linux 3.16.0-4-amd64 x86_64 Debian
Current Operating System: Linux xpra-serverdf8a9e65759fe10ef0121a796fc75ef76b4948bce28275cf592a 4.8.12-gnu-2 #1 SMP PREEMPT Wed Dec 7 18:53:05 UYT 2016 x86_64
Kernel command line: initrd=\initramfs-linux-libre.img root=/dev/sda2 rw
Build Date: 23 November 2016  07:20:23PM
xorg-server 2:1.19.0-2 (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/ben/.xpra/Xorg.:100.log", Time: Thu Dec 15 16:49:22 2016
(++) Using config file: "/etc/xpra/xorg.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
/usr/lib/xorg/Xorg: symbol lookup error: /usr/lib/xorg/modules/drivers/dummy_drv.so: undefined symbol: ChangeWindowProperty
could not connect to X server on display ':100' after 3 seconds

Attached is /home/ben/.subuser/volumes/xpra/xterm/xpra-home/.xpra/Xorg.:100.log, renamed because Github won't upload .log files.
Xorg.:100.log.txt

@FrauH0lle
Copy link

I want to report the same issue when trying to start KeepassX from the default repo.
OS: up-to-date Manjaro Linux KDE
GPU:AMD R9 290, using amdgpu module + Mesa 13
Dual monitor setup

@timthelion
Copy link
Contributor

timthelion commented Dec 16, 2016 via email

@timthelion
Copy link
Contributor

timthelion commented Dec 18, 2016 via email

@timthelion
Copy link
Contributor

timthelion commented Dec 18, 2016 via email

@FrauH0lle
Copy link

Unfortunately I get still the same error.

@timthelion
Copy link
Contributor

timthelion commented Dec 18, 2016 via email

@timthelion
Copy link
Contributor

Somehow, this is violating one of three assumptions that I'm making:

  • Docker works the same everywhere so long as the behavior isn't
    relying on some outside resource such as a mountpoint or a webservice

  • The behavior of the dummy x server is not relying on any of the
    mountpoints subuser or Docker sets up

  • Subuser's update mechanism works corrrectly

I'm guessing that we've run into the later.

So in order to test this hypothesis, first I run:

$ subuser list subusers --internal | grep xterm

To find my xterm xpra subuser's that make the xterm xpra-bridge on my
machine.

Then I run:

    timothy@main-computer$ subuser run --entrypoint=/bin/bash \!service-subuser-xterm-xpra-server
    timothy@415400e738b0f8e60169:~$ xpra --version
    xpra v0.17.4
    timothy@415400e738b0f8e60169:~$ exit
    exit
    timothy@main-computer$ subuser run --entrypoint=/bin/bash \!service-subuser-xterm-xpra-client
    timothy@47b9dab7fa7f0f174c12:~$ xpra --version
    xpra v0.17.4
    timothy@47b9dab7fa7f0f174c12:~$ exit
    exit

And then I look at the subuser default repositories base image to remind
myself what the images are based on
https://github.com/subuser-security/subuser-default-repository/blob/latest/xpra-base/image/SubuserImagefile

It is debian:strech

As a sanity check, I cat /etc/apt/sources.list inside the subuser run --entrypoint=/bin/bash \!service-subuser-xterm-xpra-client container.
It is indeed strech.

Now I look at https://packages.debian.org/stretch/xpra to see what the
version of xpra should be. AND, Huston, we have a problem! The versions
don't match. On my updated subuser system I have 0.17.4 and the correct
version is 0.17.6! So the bug is, that subuser isn' updating properly,
PLUS, the latest xpra package on strech is broken.

I see that I have my work cut out for me...

@timthelion
Copy link
Contributor

Well, today I played with this more, and it looks like I haven't proven that the subuser update mechanism is broken. When I ran apt-get update && apt-get upgrade -yq in an xpra service container, I still get the 0.17.4 version of xpra...

@libben
Copy link
Author

libben commented Dec 20, 2016

I updated, and have v0.17.6.

% sudo pip3 uninstall subuser
% sudo pip3 install subuser
% subuser update all
A (accept and apply changes to xterm's permissions)

Interesting part of the ensuing output:

...
New images for the following subusers need to be installed:
!service-subuser-xterm-xpra-server
!service-subuser-xterm-xpra-client
...

Went to bed, turned my computer on again today and ran:

% subuser run xterm

which still hangs at "Starting xpra server..."

% subuser run --entrypoint=/bin/bash \!service-subuser-xterm-xpra-server
ben@[container]:~$ xpra --version
xpra v0.17.6
ben@[container]:~$ exit
exit
% subuser run --entrypoint=/bin/bash \!service-subuser-xterm-xpra-client
ben@[container]:~$ xpra --version
xpra v0.17.6

@timthelion
Copy link
Contributor

timthelion commented Dec 20, 2016 via email

@libben
Copy link
Author

libben commented Dec 20, 2016

Yep, that's correct: I cannot start it with 0.17.6.

@libben
Copy link
Author

libben commented Dec 20, 2016

For comparison with your sha256sums and hashes: the installed-images.json file in /home/ben/.subuser has the contents

{
 "sha256:ee45ba6fbb60a5e3a7c6c0d3a1d98060c6bb8e9f69fe41359ec01ca0c1f6693e": {
  "image-source-hash": "37a5d89fcc9938d5be62e8ea153bdcafe086398d",
  "source-repo": "default",
  "image-source": "subuser-internal-xpra-client"
 },
 "sha256:51bb1f569146e525ccd2db9d9a043d5f5c19c482edffc94e6415a428f2e428f4": {
  "image-source-hash": "949e1a552e7b967cea2a786ade0b0a827bf49f45",
  "source-repo": "default",
  "image-source": "xpra"
 },
 "sha256:c230b2806699b95d9974cf9ba2f93a2b8976b1d6992335f85aeb068f2061ef4d": {
  "image-source-hash": "04d06871700f77ca9d2be1303089b0aecd7c798d",
  "source-repo": "default",
  "image-source": "subuser-internal-xpra-server"
 },
 "sha256:63227a51d70b0b6e83b2da8cb8d22cb82f42cdc467eccf408129c3a933e1f7aa": {
  "image-source-hash": "7e679272789c7fc81c7f25ac6b1eca48e102a5ac",
  "source-repo": "default",
  "image-source": "xterm"
 },
 "sha256:09f4a0db3e6306926305a83f41c5ef1eae58f3364c56cdd96d3716b0b84d828f": {
  "image-source-hash": "37a5d89fcc9938d5be62e8ea153bdcafe086398d",
  "source-repo": "default",
  "image-source": "subuser-internal-xpra-client"
 },
 "sha256:3b8eaa3bcd43df8f474e3502b9d8e6ce8c3a643d1553eae477433ae5924aec31": {
  "image-source-hash": "04d06871700f77ca9d2be1303089b0aecd7c798d",
  "source-repo": "default",
  "image-source": "subuser-internal-xpra-server"
 },
 "sha256:0564044bdecd3af917c0f68920569da9037033447dd7e719c280555fa7136e44": {
  "image-source-hash": "e59d0543cf7fb71ea0f1fbaa3e35c6aa77fe9990",
  "source-repo": "default",
  "image-source": "libdebian"
 },
 "sha256:009fc5d1d49cdeea44776e29468fb470c4cb66bf4e267c9b67fd76b5bd540a0c": {
  "image-source-hash": "949e1a552e7b967cea2a786ade0b0a827bf49f45",
  "source-repo": "default",
  "image-source": "xpra"
 },
 "sha256:e2866b6d689a62770b1d1b06fb773cb78f0a4db0d7db45b4c77de7decd4e6a5d": {
  "image-source-hash": "949e1a552e7b967cea2a786ade0b0a827bf49f45",
  "source-repo": "default",
  "image-source": "xpra"
 },
 "sha256:74d3750334db59cbb718c141e754603aca025f93350c9327e0074ca834213d73": {
  "image-source-hash": "37a5d89fcc9938d5be62e8ea153bdcafe086398d",
  "source-repo": "default",
  "image-source": "subuser-internal-xpra-client"
 },
 "sha256:0c8e037d7abb41e77d77b52cb04a2911f2969f949186b51e364e6a35f86e224d": {
  "image-source-hash": "b1968d5e991596e5adfd0099604e45d343908245",
  "source-repo": "default",
  "image-source": "libx11"
 },
 "sha256:3a29930c21987a82d89216dcaa50cd14d6809f5b9de8ccd7a3f5cb95865dd1e7": {
  "image-source-hash": "04d06871700f77ca9d2be1303089b0aecd7c798d",
  "source-repo": "default",
  "image-source": "subuser-internal-xpra-server"
 }
}

@timthelion
Copy link
Contributor

timthelion commented Dec 20, 2016 via email

@timthelion
Copy link
Contributor

timthelion commented Dec 20, 2016 via email

@timthelion
Copy link
Contributor

timthelion commented Dec 21, 2016 via email

@chadrh
Copy link

chadrh commented Dec 21, 2016 via email

@libben
Copy link
Author

libben commented Dec 26, 2016

% subuser update all
...
Get:246 http://deb.debian.org/debian stretch/main amd64 xserver-xorg-video-dummy amd64 **1:0.3.8-1** [18.8 kB]
...
% subuser run xterm
Starting xpra server...
Starting xpra client...
Warning: locale not supported by C library, locale unchanged

and xterm launched! Huzzah!
2016-12-25-224244_3840x2160_scrot
I'm ready to close this issue. Could someone else (DonHugo69?) please confirm this new version of xserver-xorg-video-dummy, 1:0.3.8-1, works for them too?

@FrauH0lle
Copy link

Yes, I can confirm it now works with keepassX and my own GnuCash subuser.
Thanks a lot and Merry Christmas!

@libben libben closed this as completed Dec 26, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants