miracle-wm-org / miracle-wm

Miracle is a Wayland tiling window manager built on Mir
https://miracle-wm.org
GNU General Public License v3.0
406 stars 13 forks source link

Build fails on Debian Testing (Trixie) #63

Open franzcor opened 7 months ago

franzcor commented 7 months ago

Hi, I wanted to give miracle-wm a try on Debian but I was not able to compile it.

Here is the error I got:


 cmake --build build
[  5%] Building CXX object CMakeFiles/miracle-wm-implementation.dir/src/tree.cpp.o
/home/franzo/Documents/gitRemote/miracle-wm/src/tree.cpp: In member function ‘std::shared_ptr<miracle::Node> miracle::Tree::advise_new_window(const miral::WindowInfo&)’:
/home/franzo/Documents/gitRemote/miracle-wm/src/tree.cpp:71:15: error: ‘class miral::WindowManagerTools’ has no member named ‘send_tree_to_back’
   71 |         tools.send_tree_to_back(window_info.window());
      |               ^~~~~~~~~~~~~~~~~
/home/franzo/Documents/gitRemote/miracle-wm/src/tree.cpp: In member function ‘void miracle::Tree::advise_focus_gained(miral::Window&)’:
/home/franzo/Documents/gitRemote/miracle-wm/src/tree.cpp:353:15: error: ‘class miral::WindowManagerTools’ has no member named ‘send_tree_to_back’
  353 |         tools.send_tree_to_back(window);
      |               ^~~~~~~~~~~~~~~~~
gmake[2]: *** [CMakeFiles/miracle-wm-implementation.dir/build.make:90: CMakeFiles/miracle-wm-implementation.dir/src/tree.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:104: CMakeFiles/miracle-wm-implementation.dir/all] Error 2
gmake: *** [Makefile:136: all] Error 2

libmiral-dev on Debian is at (3.9.0.2.14.1-4+b2) Could that be related to the issue?

P.S. I had to search for the dependencies inside the cmake file, would be great to list them in the README file already! Here they are:

             cmake,
               pkg-config,
               build-essential,
               libmiral-dev,
               libgtest-dev,
               libyaml-cpp-dev,
               libglib2.0-dev,
               libevdev-dev,
               nlohmann-json3-dev,
               libnotify-dev

Would you like me to create a PR to add them to the readme in the building section?

mattkae commented 7 months ago

Hiya @franzcor That does look like libmiral-dev is a bit behind on Debian.

Also, if you'd like to add them, that would be great :smile:

franzcor commented 7 months ago

Hi, thanks for the reply!

To me it looks like they have the same version, as shown here:

https://packages.ubuntu.com/noble/libmiral-dev

What then could be the problem? I am runnin on debian testing not stable so I get updated stuff mostly.

On March 20, 2024 12:43:39 PM GMT+01:00, Matthew Kosarek @.***> wrote:

Hiya @franzcor That does look like libmiral-dev is a bit behind on Debian.

Also, if you'd like to add them, that would be great :smile:

-- Reply to this email directly or view it on GitHub: https://github.com/mattkae/miracle-wm/issues/63#issuecomment-2009376689 You are receiving this because you were mentioned.

Message ID: @.***>

mattkae commented 7 months ago

Ah I see the issue. I am using libmiral6 (4.1.0), while the main archive is using libmiral5 (3.9.0). Could you try using the mir-team ppa and rebuilding? sudo add-apt-repository --update ppa:mir-team/release

(And a link to the official Mir docs if anything is wrong: https://canonical-mir.readthedocs-hosted.com/stable/getting_and_using_mir/)

Let me know if that works for you!

spongythecake commented 7 months ago

I was able to install on Debian Trixie and it involved libmiral with compile-from-source, then linked to my path.

mattkae commented 7 months ago

@spongythecake That might be the case until that is updated to latest. Were you not able to add the mir team ppa?

franzcor commented 6 months ago

I tried tho and it was not able to install mir because glibc is behind at 2.37 but 2.38 is needed. Trying to install 2.38 from experimental in my debian trixie destroyed my system and needed to reinstall everything :D :D Will wait for the new package then retry installing mir from the ppa

mattkae commented 6 months ago

Sounds good :sweat_smile: Dependencies are tough...