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

Xwayland startup failed, not setting up xwm #247

Closed
FlightBlaze opened this issue Jun 21, 2019 · 23 comments
Closed

Xwayland startup failed, not setting up xwm #247

FlightBlaze opened this issue Jun 21, 2019 · 23 comments

Comments

@FlightBlaze
Copy link

Log:
2019-06-21 15:33:06 - [wlroots-0.6.0/xwayland/xwayland.c:225] Xwayland startup failed, not setting up xwm

Wayfire is not working on Manjaro Linux KDE. Any ideas?

image

@ammen99
Copy link
Member

ammen99 commented Jun 21, 2019

How did you install Wayfire? Which version are you using?

@AdrianVovk
Copy link
Contributor

AdrianVovk commented Jun 21, 2019

Install XWayland with pacman and it should work. It isn't a dependency of the arch package for whatever reason

@soreau
Copy link
Member

soreau commented Jun 21, 2019

It says you have a stale lock file, might want to remove it or reboot.

@FlightBlaze
Copy link
Author

I installed xorg-server-xwayland with pacman. And it don't works

My steps from downloading to error:

  1. Clone repository using git
  2. Install meson and ninja
  3. Install dependencies
  4. Build with step-by-step recipe
  5. Run .. oops, xwayland is not installed
  6. Install XWayland (xorg-server-xwayland)
  7. Run again and get errors

@AdrianVovk
Copy link
Contributor

Is the XWayland command in your PATH?

@soreau
Copy link
Member

soreau commented Jun 21, 2019

Can you post the latest errors?

@ammen99
Copy link
Member

ammen99 commented Jun 21, 2019

Another thing to try would be installing the sway package and checking whether sway works (so that we are sure this is a problem in Wayfire), and not some system-setup oddity.

@FlightBlaze
Copy link
Author

FlightBlaze commented Jun 21, 2019

So, this is my idea and i'm going to implement it

image

Good?

@FlightBlaze
Copy link
Author

Can you post the latest errors?

[blaze@blaze-kde ~]$ wayfire 2019-06-21 20:13:09 - [wlroots-0.6.0/xwayland/sockets.c:65] Failed to bind socket @/tmp/.X11-unix/X0: Address already in use Xwayland: /usr/lib/libm.so.6: version GLIBC_2.29' not found (required by Xwayland)
2019-06-21 20:13:09 - [src/output/plugin-loader.cpp:103] error loading plugin: /usr/lib/wayfire/libviewport_impl.so: cannot open shared object file: No such file or directory
2019-06-21 20:13:09 - [src/output/plugin-loader.cpp:103] error loading plugin: /usr/lib/wayfire/librotator.so: cannot open shared object file: No such file or directory
2019-06-21 20:13:09 - [wlroots-0.6.0/xwayland/xwayland.c:225] Xwayland startup failed, not setting up xwm
libEGL warning: FIXME: egl/x11 doesn't support front buffer rendering.
2019-06-21 20:13:12 - [src/output/plugin-loader.cpp:103] error loading plugin: /usr/lib/wayfire/libviewport_impl.so: cannot open shared object file: No such file or directory
2019-06-21 20:13:12 - [src/output/plugin-loader.cpp:103] error loading plugin: /usr/lib/wayfire/librotator.so: cannot open shared object file: No such file or directory
2019-06-21 20:13:12 - [src/output/render-manager.cpp:391] constant_redraw_counter got below 0!
2019-06-21 20:13:12 - [src/output/render-manager.cpp:391] constant_redraw_counter got below 0!`

@soreau
Copy link
Member

soreau commented Jun 21, 2019

Try rootston or sway like @ammen99 suggested and see if there isn't some generic problem not specific to wayfire.

@FlightBlaze
Copy link
Author

I tried sway and it works:

1

And then wayfire:

image

Both based on wlroots, but wayfire is not working

@AdrianVovk
Copy link
Contributor

AdrianVovk commented Jun 22, 2019

It looks like XWayland is messed up because of Manjaro on this machine (Notice that it is linked against the wrong glibc. That's just next level genius right there)

Does Wayfire open if XWayland fails to start?

@ammen99
Copy link
Member

ammen99 commented Jun 22, 2019

I am not really sure whether Wayfire handles Xwayland startup failures correctly. Anyway, you can try either fixing the problem with Xwayland(the error about glibc), or you can try disabling Xwayland support in Wayfire at compile time (there is a configuration option which was implemented very recently)

@FlightBlaze
Copy link
Author

I am not really sure whether Wayfire handles Xwayland startup failures correctly. Anyway, you can try either fixing the problem with Xwayland(the error about glibc), or you can try disabling Xwayland support in Wayfire at compile time (there is a configuration option which was implemented very recently)

But where i can find configuration file with disable xwayland option?

@soreau
Copy link
Member

soreau commented Jun 24, 2019

@FlightBlaze
Copy link
Author

Thank you! But it still not working, Xwayland is not to blame. Black screen and errors in terminal are the same as with xwayland. It cannot find my eglstream capable device.

Running without sudo
Screenshot_20190626_152840

@FlightBlaze
Copy link
Author

I tried to open it in Openbox/x11, same result

@ammen99
Copy link
Member

ammen99 commented Jun 26, 2019

You certainly don't need sudo (and it is probable that Wayfire will break in that case).

The last screenshot looks almost fine. Have you installed wf-shell ? It is needed to show a background and a panel, otherwise you get a black screen.

Also, make sure that your ~/.config/wayfire.ini contains correct paths to wf-background/wf-panel, or that they can be found in your $PATH.

Alternatively, you can try to start an application from X: DISPLAY=garbage WAYLAND_DISPLAY=wayland-0 gedit for example. If it shows up in the Wayfire window, then the problem is indeed the path to wf-panel/wf-background

@FlightBlaze
Copy link
Author

Thank you for creating so cool and customizable window manager! :) I will try to make it fancy and user-friendly (see concept)
What would be better, modify this project or fork and modify?

image

@ammen99
Copy link
Member

ammen99 commented Jun 26, 2019

I am not exactly sure what your concept was (just a fancy minimize animation? The side dock?).

It would certainly be best not to fork the whole Wayfire. You can write a plugin instead (which can live in a separate repository) or, we can also merge it to the main repo. Ask in IRC if you have questions regarding plugins :)

@FlightBlaze
Copy link
Author

I am not exactly sure what your concept was (just a fancy minimize animation? The side dock?).

It would certainly be best not to fork the whole Wayfire. You can write a plugin instead (which can live in a separate repository) or, we can also merge it to the main repo. Ask in IRC if you have questions regarding plugins :)

It will be a fancy minimize animation, new system buttons layout, window translucency api, global menu like in mac, new look and new shell

@AdrianVovk
Copy link
Contributor

@FlightBlaze The minimize anim. can be done with a Wayfire plugin. Windows already have the ability to make themselves translucent. The system button layout is defined by the app itself (Wayland tends to use something called client-side-decorations), and if not you can make another Wayfire plugin for custom decorations. A global menu depends on support from the app, and has nothing to do with Wayfire (this will be handled entirely by your shell). As for the shell itself, it should be a separate process (or even multiple) using the layer-shell protocol to tell Wayfire how to interact with them.

Good luck with your project! Feel free to drop in on IRC and ask questions

@FlightBlaze
Copy link
Author

FlightBlaze commented Jun 27, 2019

@FlightBlaze The minimize anim. can be done with a Wayfire plugin. Windows already have the ability to make themselves translucent. The system button layout is defined by the app itself (Wayland tends to use something called client-side-decorations), and if not you can make another Wayfire plugin for custom decorations. A global menu depends on support from the app, and has nothing to do with Wayfire (this will be handled entirely by your shell). As for the shell itself, it should be a separate process (or even multiple) using the layer-shell protocol to tell Wayfire how to interact with them.

Good luck with your project! Feel free to drop in on IRC and ask questions

I mean not just transparent. I want to make api (for using with d-bus) to mark region for blurring.
Global menu can be done by patching libgtk and libqt (if these libraries are dynamically linked with apps)

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