aesophor / wmderland

🌳 X11 tiling window manager using space partitioning trees
https://www.reddit.com/r/unixporn/comments/fb8ve1/wmderland_104_time_to_move_on/
MIT License
409 stars 15 forks source link

[Bug] Doesn't work on Fedora Workstation 31 #39

Closed cristianovitorino closed 4 years ago

cristianovitorino commented 4 years ago

Steps to reproduce

  1. Follow BUILD.md install instructions
  2. Reboot
  3. Try to login

Current behaviour (bug)

Expected behaviour (correct)

Hardware and Driver

aesophor commented 4 years ago

Expected behaviour (correct)

  • A session entry should be linked to the session manager.
  • Login should proceed normally and work with common session managers like GDM or LightDM, and not have a black screen in case of usage with .xinitrc.

Thank you very much for the detailed bug report!

For the first one, I'll update BUILD.md. wmderland.desktop has to be copied to /usr/share/xsessions/.

For the second one, a black screen should be correct, you just have to modify the config file to get wallpaper and keybindings to work. You can also try to launch rofi. At the time being, I'm installing fedora workstation 31 on Virtualbox.

cristianovitorino commented 4 years ago

Expected behaviour (correct)

  • A session entry should be linked to the session manager.
  • Login should proceed normally and work with common session managers like GDM or LightDM, and not have a black screen in case of usage with .xinitrc.

Thank you very much for the detailed bug report!

For the first one, I'll update BUILD.md. wmderland.desktop has to be copied to /usr/share/xsessions/.

Oh the file is created on /usr/share/xsessions/, that is not the problem, sorry for not explaining correctly, the problem is that it never shows up on either GDM or LightDM. There is no way to login into wmderland other than the .xinitrc. That's what I meant by "link", the file is created on xsessions, it exists, looks normal, same exact format as my i3 setup, but it just doesn't show up on either GDM or LightDM, there is no link between the two things, even tho the file exists and should work normally.

For the second one, a black screen should be correct, you just have to modify the config file to get wallpaper and keybindings to work. You can also try to launch rofi. At the time being, I'm installing fedora workstation 31 on Virtualbox.

OK, thank you. I'll try to see what I can do config wise to see if works, I'm used to i3-gaps, shouldn't be too hard, but using .xinitrc is a bummer for me, would be nice if it worked with GDM or LightDM.

I'm also testing on other distros on a VM the moment, see if I can help track down the problem.

aesophor commented 4 years ago

I've updated BUILD.md (the instructions on how to modify the config file are also included).

I'm going to test it on LighDM and GDM! My fedora VM is ready

cristianovitorino commented 4 years ago

I've updated BUILD.md (the instructions on how to modify the config file are also included).

I'm going to test it on LighDM and GDM! My fedora VM is ready

Thanks for looking into this.

I've followed the update BUILD.md, but wmderland still doesn't show up on GDM.

I managed to get wmderland working normally on EndeavourOS (Arch Linux under the hood) in a VM through the AUR package.

aesophor commented 4 years ago

It's a bit weird... I can successfully find wmderland's entry in GDM and execute wmderland.

I also slightly modified the config to display wallpaper and launch gnome-terminal via keybinds:

scrot-2020-03-08_101305_632x619 scrot-2020-03-08_102351_834x1011

aesophor commented 4 years ago

@cristianovitorino Could you maybe post the output of ls -la /usr/share/xsessions please? I'll also check on Google if there's any option of GDM that can possibly interfere with the desktop files in this directory.

cristianovitorino commented 4 years ago

Weird indeed. I have a standard vanilla Fedora. Also the Fedora installed fresh new on the VM has the same behaviour. I just can't comprehend what's happening. And yet, it works normally on EndeavourOS.

My HDD Fedora ls: sábado-07-março-2020_23-31-46

sábado-07-março-2020_23-37-47

aesophor commented 4 years ago

Weird indeed. I have a standard vanilla Fedora. Also the Fedora installed fresh new on the VM has the same behaviour. I just can't comprehend what's happening. And yet, it works normally on EndeavourOS.

My HDD Fedora ls: sábado-07-março-2020_23-31-46

I've found the problem. The permission of wmderland.desktop must be set to readable by groups and others:

sudo chmod go+x /usr/share/xsessions/wmderland.desktop
cristianovitorino commented 4 years ago

I've found the problem. The permission of wmderland.desktop must be set to readable by groups and others:

sudo chmod go+x /usr/share/xsessions/wmderland.desktop

I was about to test just that haha. Let me try it out.

cristianovitorino commented 4 years ago

Unfortunately still doesn't work. I'll try altering permissions to different groups, if that doesn't work I'll try to dnf autoremove GDM and reinstall it. It will break my GNOME setup a bit, but I'm really puzzled by this problem.

IMG_20200307_234321701

cristianovitorino commented 4 years ago

No luck. Made a clean install of GDM but didn't solve the issue. Altering groups didn't help either.

I'm out of ideas.

aesophor commented 4 years ago

No luck. Made a clean install of GDM but didn't solve the issue. Altering groups didn't help either.

I'm out of ideas.

This is really confusing lol... Does it also happen on a VM or only on the HDD install?

aesophor commented 4 years ago

What if we modify /usr/share/xsessions/i3.desktop and change Exec=i3 to Exec=wmderland (and the same for TryExec)?

cristianovitorino commented 4 years ago

This is really confusing lol... Does it also happen on a VM or only on the HDD install?

Same behaviour on a fresh install of Fedora on the VM. What gives right? LOL

BTW, I've installed another WM (awesome) just to see if it's a problem directly related to Fedora itself and it's GDM, but the awesome WM showed up normally.

I blame ghosts. Your WM is haunted dude haha. Or my Fedora install LOL

cristianovitorino commented 4 years ago

What if we modify /usr/share/xsessions/i3.desktop and change Exec=i3 to Exec=wmderland (and the same for TryExec)?

Good idea, let me check.

aesophor commented 4 years ago

The screenshots I posted earlier was tested with Fedora-Workstation-Live-x86_64-31-1.9.iso (fresh install). I've updated build.sh and now it will automatically install the .desktop file. I'll try to reinstall fedora on a VM again.

I'm really sorry for causing you spending so much time debugging this issue...

cristianovitorino commented 4 years ago

I'm really sorry for causing you spending so much time debugging this issue...

Hey man no problem at all, thanks for trying to help, saw your post on r/unixporn and really wanted to give it a go, since I love i3-gaps and minimalism : )

BTW:

What if we modify /usr/share/xsessions/i3.desktop and change Exec=i3 to Exec=wmderland (and the same for TryExec)?

This worked!

What's up with that? I wonder WTH Fedora is doing under the hood for this bizarre behaviour to appear.

aesophor commented 4 years ago

Hey man no problem at all, thanks for trying to help, saw your post on r/unixporn and really wanted to give it a go, since I love i3-gaps and minimalism : )

Thank you so much for trying it out! I'm so happy to read this!

This worked!

What's up with that? I wonder WTH Fedora is doing under the hood for this bizarre behaviour to appear.

Great! I'm really clueless about this... May I ask you to sudo cp i3.desktop wmderland.desktop and see if the entry shows up in GDM? My VM is still installing

cristianovitorino commented 4 years ago

Great! I'm really clueless about this... May I ask you to sudo cp i3.desktop wmderland.desktop and see if the entry shows up in GDM? My VM is still installing

Doesn't work : (

It is as if .desktop files are hardlinked forever to the DM when a WM is installed, but not wmderland, so bizarre.

aesophor commented 4 years ago

Tried reinstalling Fedora workstation 31 on Virtualbox and it works... so confusing

scrot-2020-03-08_122149_305x357

scrot-2020-03-08_122252_836x630

I'm using virtualbox 5.2.32 and I downloaded the .iso from: https://getfedora.org/en/workstation/download/ scrot-2020-03-08_121108_580x204

I'm out of ideas too...

Edit: Here's what I did after a fresh install of Fedora

1. sudo dnf install cmake make g++ vim libX11-devel
2. git clone https://github.com/aesophor/wmderland.git
3. cd wmderland
4. ./build.sh --install  # it will now automatically install .desktop to /usr/share/xsessions
5. mkdir -p ~/.config/wmderland
6. cp example/config ~/.config/wmderland
7. Then I modified the config a little bit, logout and then the entry is there
cristianovitorino commented 4 years ago

Yeah, that's exactly how I always installed.

I deleted wmderland clean from my Fedora and reinstalled it again.

It... works now. But why? LOL It finally shows up on GDM.

I've already deleted it clean and reinstalled multiple times and never worked, but now it did? Did you change something on the source code in the last hour?

I have no idea why or how it works now.

I want to close the issue, but it feels bad because I don't know what happened.

Maybe reinstalling GDM clean did something? Since I never tried to reinstall wmderland after I clean installed GDM until now.

Also shows up on CDM: domingo-08-março-2020_01-28-34

aesophor commented 4 years ago

Yeah, that's exactly how I always installed.

I deleted wmderland clean from my Fedora and reinstalled it again.

It... works now. But why? LOL It finally shows up on GDM.

I've already deleted it clean and reinstalled multiple times and never worked, but now it did? Did you change something on the source code in the last hour?

That's great!

I did add the following line to build.sh in the last hour. When running build.sh --install, it will ensure the desktop file's permission is set to 644, although I think this probably won't help as you've already manually set the permission to 644 before, and even tried making a copy from i3.desktop.

sudo install -D -m644 ../example/wmderland.desktop /usr/share/xsessions/

https://github.com/aesophor/wmderland/blob/master/build.sh#L54


Perhaps reinstalling GDM really did clean something... I don't know either lol. But anyways, I'm so glad it is working now. If you have any other feature request or issue, please let me know! :smile_cat:

cristianovitorino commented 4 years ago

Thanks for the help man.

Could you add a recommendation on BUILD.md for Fedora users saying that you might need to reinstall GDM if wmderland doesn't show up on their GDM even after reboot? Also a warning that removing GDM with autoremove will break GNOME a bit, but they can restore it by just reinstalling the environment.

I think that's the best we can do for now to help if anyone else has the same issue.

The steps I did:

sudo systemctl disable gdm.service
sudo dnf autoremove -y gdm
sudo dnf upgrade -y
sudo dnf install -y gdm
sudo dnf group install -y gnome-desktop
sudo systemctl enable gdm.service
aesophor commented 4 years ago

No problem! I'll add it right away.

cristianovitorino commented 4 years ago

No problem! I'll add it right away.

Awesome! Thanks for everything. Gonna finally tinker with wmderland soon : )

cristianovitorino commented 4 years ago

Oh, just a last thing: an important step I think is to do a clean delete and clean recompile of wmderland AFTER reinstalling GDM and rebooting.

aesophor commented 4 years ago

Thank you! I've updated BUILD.md

https://github.com/aesophor/wmderland/blob/master/BUILD.md#gdm-entry-not-present-fedora-workstation-31