redhog / InfiniteGlass

Window manager with infinite desktop, infinite zoom and infinite window resolution
https://redhog.github.io/InfiniteGlass/
GNU General Public License v3.0
35 stars 5 forks source link

xinit: XFree86_VT property unexpectedly has 0 items instead of 1 #89

Open IanTrudel opened 2 years ago

IanTrudel commented 2 years ago

InfiniteGlass fails to start withtin Xephyr, see log below. There might be some dependency for InifiniteGlass missing on my machine but Xephyr runs fine on its own. I have tried with and without an external monitor attached.

make GLASS_DMALLOC="" -C glass-annotator
make[1] : on entre dans le répertoire « /home/ian/Workspace/InfiniteGlass/glass-annotator »
make[1]: rien à faire pour « all ».
make[1] : on quitte le répertoire « /home/ian/Workspace/InfiniteGlass/glass-annotator »
make GLASS_DMALLOC="" -C glass-renderer
make[1] : on entre dans le répertoire « /home/ian/Workspace/InfiniteGlass/glass-renderer »
make[1]: rien à faire pour « all ».
make[1] : on quitte le répertoire « /home/ian/Workspace/InfiniteGlass/glass-renderer »
. build/env/bin/activate; cd glass-lib; pip install -e .
Obtaining file:///home/ian/Workspace/InfiniteGlass/glass-lib
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Requirement already satisfied: numpy in /home/ian/Workspace/InfiniteGlass/build/env/lib/python3.10/site-packages (from glass-lib==0.1) (1.23.1)
Requirement already satisfied: python-xlib>=0.25 in /home/ian/Workspace/InfiniteGlass/build/env/lib/python3.10/site-packages (from glass-lib==0.1) (0.31)
Requirement already satisfied: sakstig in /home/ian/Workspace/InfiniteGlass/build/env/lib/python3.10/site-packages (from glass-lib==0.1) (0.1.7)
Requirement already satisfied: six>=1.10.0 in /home/ian/Workspace/InfiniteGlass/build/env/lib/python3.10/site-packages (from python-xlib>=0.25->glass-lib==0.1) (1.16.0)
Requirement already satisfied: pyleri in /home/ian/Workspace/InfiniteGlass/build/env/lib/python3.10/site-packages (from sakstig->glass-lib==0.1) (1.4.1)
Installing collected packages: glass-lib
  Attempting uninstall: glass-lib
    Found existing installation: glass-lib 0.1
    Uninstalling glass-lib-0.1:
      Successfully uninstalled glass-lib-0.1
  Running setup.py develop for glass-lib
Successfully installed glass-lib-0.1

[notice] A new release of pip available: 22.1.2 -> 22.2
[notice] To update, run: pip install --upgrade pip
. build/env/bin/activate; cd pysmlib; pip install -e .
Obtaining file:///home/ian/Workspace/InfiniteGlass/pysmlib
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Installing collected packages: pysmlib
  Attempting uninstall: pysmlib
    Found existing installation: pysmlib 0.1
    Uninstalling pysmlib-0.1:
      Successfully uninstalled pysmlib-0.1
  Running setup.py develop for pysmlib
Successfully installed pysmlib-0.1

[notice] A new release of pip available: 22.1.2 -> 22.2
[notice] To update, run: pip install --upgrade pip
GLASS_DEBUGGER="" BUILD="build" XSERVERPATH="/usr/bin/Xephyr" XSERVEROPTS=":100 -ac -screen 1280x768x24 -host-cursor -extension MIT-SHM -nolisten tcp" scripts/xstartup.sh

xinit: XFree86_VT property unexpectedly has 0 items instead of 1
Copying 1
inet6/computer:32949,inet/computer:44893,local/computer:@/tmp/.ICE-unix/4596,unix/computer:/tmp/.ICE-unix/4596
X Error of failed request:  BadRROutput (invalid Output parameter)
  Major opcode of failed request:  139 (RANDR)
  Minor opcode of failed request:  9 (RRGetOutputInfo)
  Serial number of failed request:  12
  Current serial number in output stream:  12
NEW CONN <glass_ghosts.session.Server object at 0x7fda9f008610>
NEW CONN DONE <glass_ghosts.session.Server object at 0x7fda9f008610> 140576947203392 {140576947203392: <glass_ghosts.session.Server.Connection object at 0x7fda9f006d40>} 94518352668384 140576947203392
X Error of failed request:  BadRROutput (invalid Output parameter)
  Major opcode of failed request:  139 (RANDR)
  Minor opcode of failed request:  9 (RRGetOutputInfo)
  Serial number of failed request:  12
  Current serial number in output stream:  12
X Error of failed request:  BadRROutput (invalid Output parameter)
  Major opcode of failed request:  139 (RANDR)
  Minor opcode of failed request:  9 (RRGetOutputInfo)
  Serial number of failed request:  12
  Current serial number in output stream:  12
....
redhog commented 2 years ago

That is very strange. If you run Xephyr w just a terminal in it, does it work? If you then start glass-renderer from the terminal, does that trigger the bug?

IanTrudel commented 2 years ago

No, it doesn't. I'm getting a black screen though. There was an xterm opened and it seems to be behind the black screen. Opened another and it doesn't show either. I tried both starting from an xterm within Xephyr and from an outside terminal (with a DISPLAY env set to :100). No errors, just black screen.

image

redhog commented 2 years ago

Black screen is expected in this mode: The renderer doesn't have any desktop setup properties to tell it what to render.

redhog commented 2 years ago

Next step would be to run glass-theme before the renderer from the terminal. That should give you some graphics... hopefully.

IanTrudel commented 2 years ago

Running glass-theme results in:

Traceback (most recent call last):
  File "/home/ian/Workspace/InfiniteGlass/./build/env/bin/glass-theme", line 33, in <module>
    sys.exit(load_entry_point('glass-theme', 'console_scripts', 'glass-theme')())
  File "/home/ian/Workspace/InfiniteGlass/glass-theme/glass_theme/__init__.py", line 14, in main
    with InfiniteGlass.Display() as display:
  File "/home/ian/Workspace/InfiniteGlass/glass-lib/InfiniteGlass/display.py", line 114, in display_exit
    raise exc
  File "/home/ian/Workspace/InfiniteGlass/glass-theme/glass_theme/__init__.py", line 24, in main
    cls(display, **config.get("args", {}))
  File "/home/ian/Workspace/InfiniteGlass/glass-theme/glass_theme/default.py", line 22, in __init__
    self.setup_splash_animation()
  File "/home/ian/Workspace/InfiniteGlass/glass-theme/glass_theme/default.py", line 158, in setup_splash_animation
    anim = self.display.root["IG_ANIMATE"]
  File "/home/ian/Workspace/InfiniteGlass/glass-lib/InfiniteGlass/window.py", line 59, in window_getitem
    raise KeyError("Window %s has no property %s" % (self.__window__(), name))
KeyError: 'Window 1326 has no property IG_ANIMATE'
redhog commented 2 years ago

Ah, that's because glass-animator isn't running, which is ok. You can set the mode to no_splash in your theme.yaml see if that works...

IanTrudel commented 2 years ago

And... we have progress! What are the artifacts? Doesn't seem quite right.

Capture d’écran du 2022-07-29 12-57-01

redhog commented 2 years ago

That looks distinctly wrong. Never seen! What version of Xephyr etc are you running? I'd like to try to reproduce this!

IanTrudel commented 2 years ago

That looks distinctly wrong. Never seen! What version of Xephyr etc are you running? I'd like to try to reproduce this!

xorg-server-xephyr 21.1.4-1 (xorg)

IanTrudel commented 2 years ago

I tried several applications and a couple of games on Xephyr just to make sure. Seems to be working fine otherwise.

Capture d’écran du 2022-07-30 23-45-48

redhog commented 2 years ago

The original problem seem to be some X server / xinit issue, not really directly InfiniteGlass related, see https://forums.linuxmint.com/viewtopic.php?t=254651

The following reproduces the error:

redhog@glittertind:~$ startx -- /usr/bin/Xephyr :100

xinit: XFree86_VT property unexpectedly has 0 items instead of 1
xinit: connection to X server lost

waiting for X server to shut down 
Couldn't get a file descriptor referring to the console
redhog@glittertind:~$ 

(note: no InfiniteGlass involved).

IanTrudel commented 2 years ago

Reproduced the test above:

startx -- /usr/bin/Xephyr :100

xinit: XFree86_VT property unexpectedly has 0 items instead of 1
/etc/X11/xinit/xinitrc: ligne 51: twm : commande introuvable
/etc/X11/xinit/xinitrc: ligne 52: xclock : commande introuvable

Capture d’écran du 2022-07-31 15-31-47

Installed the missing twm and xclock packages:

startx -- /usr/bin/Xephyr :100

xinit: XFree86_VT property unexpectedly has 0 items instead of 1
twm: created fontset with 10 fonts (7 missing) for "-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*"
twm: created fontset with 10 fonts (7 missing) for "-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*"
twm: created fontset with 10 fonts (7 missing) for "-adobe-helvetica-bold-r-normal--*-100-*-*-*-*-*-*"
twm: created fontset with 10 fonts (7 missing) for "-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*"
twm: created fontset with 10 fonts (7 missing) for "-adobe-helvetica-bold-r-normal--*-100-*-*-*"
twm: created fontset with 2 fonts (15 missing) for "fixed"

Capture d’écran du 2022-07-31 15-32-29

redhog commented 2 years ago

So maybe that's not the real error, and it kinda works anyway, and then something else breaks?

redhog commented 2 years ago

I have bugfixed run in docker! Pull the newest version, make sure to delete any old docker image and container and try run it!