After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 536553 - gnome-session should use gnome-wm as default
gnome-session should use gnome-wm as default
Status: RESOLVED OBSOLETE
Product: gnome-session
Classification: Core
Component: gnome-session
2.23.x
Other Linux
: Normal normal
: ---
Assigned To: Session Maintainers
Session Maintainers
Depends on:
Blocks:
 
 
Reported: 2008-06-04 07:35 UTC by Sebastien Bacher
Modified: 2020-10-30 14:32 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Sebastien Bacher 2008-06-04 07:35:08 UTC
I've been trying the new gnome-session but I get no wm started at the moment, that's because I've no wm installed provided a .desktop for this action, there is several issues there:
- a wm should always be started and not be relying on this one having a .desktop compatible to gnome-session
- the current mechanism doesn't allow doing fallback to an another choice easily
- gnome-wm which has the some logic for that and works correctly is installed but not used right now

Wouldn't it make sense to have a gnome-wm.desktop as default choice since it has the logic to pick the better alternative available?
Comment 1 Dan Winship 2008-06-04 13:38:26 UTC
(In reply to comment #0)
> - a wm should always be started and not be relying on this one having a
> .desktop compatible to gnome-session

What if the user doesn't have any window managers installed? There will always be scenarios where the system can be sufficiently broken that it won't be able to start a wm. The problem is just that at this point in the 2.23 cycle, those scenarios are still common. (Presumably you're trying the 2.23 gnome-session but not also trying the 2.23 metacity with it. This won't be a problem once 2.24 ships.)

> - the current mechanism doesn't allow doing fallback to an another choice
> easily

This is mostly because the capplet side is not written yet. When that's done it will actually be *easier* to change your wm than it was with gnome-wm.

> - gnome-wm which has the some logic for that and works correctly is installed
> but not used right now
> 
> Wouldn't it make sense to have a gnome-wm.desktop as default choice since it
> has the logic to pick the better alternative available?

gnome-wm is NOT a good solution, because it requires gnome-session to encode logic about the entire rest of the universe. See bug 521893, bug 419219, bug 386894, bug 350848, bug 339227, bug 118744, bug 116204, and bug 110722. The new system lets WMs handle this themselves.
Comment 2 Sebastien Bacher 2008-06-04 15:01:03 UTC
> gnome-wm is NOT a good solution, because it requires gnome-session to encode
logic about the entire rest of the universe

but having the logic done one upstream make sense rather than asking every distributor to rewrite a similar logic no?
Comment 3 Dan Winship 2008-06-04 15:33:51 UTC
The distributors aren't expected to do *anything* (other than ship metacity 2.24 along with gnome-session 2.24, or else change the details of the default session if they don't want to use metacity). It's the window manager authors that are expected to take action (providing a .desktop file with an "X-GNOME-Provides: windowmanager" line). And even if they don't do that, people will still be able to use the session capplet to disable metacity and enable that other WM. They'll just have to click through an "are you sure" on the way.

In the past, we have had to update gnome-wm for almost every new release of compiz. That's dumb, and it's annoying for the gnome-session maintainers, and *it's annoying for the compiz users and developers*, because there's always going to be a lag between when compiz makes a change and when gnome-session catches up with it. With the new system, when compiz changes the way that it needs to be invoked, they only need to update their own .desktop file, and everything works, because when you install the new binary, you'll be installing the new .desktop file too, and it doesn't matter what version of gnome-session you're running. Everybody wins.

Comment 4 Sebastien Bacher 2008-06-05 08:04:46 UTC
not sure that every wm authors will agree to do changes to their software because GNOME has decided that now wm should have a .desktop to be used and should register to the session now, some might argue that GNOME is breaking something which has been working for ever and that every desktop environment could start creating different requirements and if they agree to do the change it's not sure that all of those will be updated before GNOME 2.24

anyway, let's be constructive, the .desktop system is great if you have your installed wms handling that correctly but I've some questions about how that's going to work exactly:

- let's say a distribution wants to run $whatever_wm if composite is available and $standard_wm if that's not the case, gnome-wm had some logic to do that, what would be the way to do it now?

- is there a way to prioritize choices right now?

- would it be possible to have a standard fallback in gnome-session not relying on having a wm .desktop installed to make the transition easier?
Comment 5 Dan Winship 2008-06-05 15:04:04 UTC
(In reply to comment #4)
> - let's say a distribution wants to run $whatever_wm if composite is available
> and $standard_wm if that's not the case, gnome-wm had some logic to do that,
> what would be the way to do it now?

The current system doesn't allow for that. This might be a bug. There's some discussion in bug 332410 about possibly making gnome-wm be a "run the window manager named in gconf" script. There's some other discussion of choosing metacity-vs-compiz in bug 461730.

(A simple possibility here might be for gnome-session to only consider the required components to be fulfilled if they actually start up correctly and register. In that case, if someone set their wm to compiz, and then logged in without compositing, compiz would start up and then exit, and so gnome-session would then launch the fallback windowmanager, metacity. This is basically the same as the level of support in 2.22's gnome-wm, which really is basically just "if $WINDOW_MANAGER got set to 'compiz' somehow, but compositing is disabled, then ignore $WINDOW_MANAGER".)

> - is there a way to prioritize choices right now?

No, because having a prioritized list of window managers is silly. We don't use a prioritized list of possible panels or file managers, why should we use a prioritized list of window managers? No one has ever actually wanted to be randomly assigned "the first window manager in this list that happens to be installed". Either people want a specific window manager (in which case they can choose that in the session capplet), or else they don't care (in which case they do nothing, and they get the default window manager that GNOME or their distro has chosen).

> - would it be possible to have a standard fallback in gnome-session not relying
> on having a wm .desktop installed to make the transition easier?

Lucas and I were talking about this bug on irc yesterday, and we both agree that we don't want gnome-session to include a list of window managers. So what would this fallback be? Just a wrapper script to allow running gnome-session 2.23 with metacity 2.22?
Comment 6 André Klapper 2020-10-30 14:32:10 UTC
Assuming that this problem is obsolete nowadays. 

If you can still reproduce this problem with a recent version (currently: 3.38) of GNOME / gnome-session, then please report this at https://gitlab.gnome.org/GNOME/gdm/-/issues/ and follow https://wiki.gnome.org/Community/GettingInTouch/BugReportingGuidelines - thanks a lot!