How to set window manager?

I have installed Leap 15, and am trying to figure out how to set the window manager. Apparently some (descriptive terms deleted) among the developers decided to break the normal /etc/sysconfig mechanism, and install something called update-alternatives in its place. So after wasting an hour or so searching, I finally discovered this fact.

So I run the command “update-alternatives --config default-session.desktop”, and it gives me 3 alternatives: the icewm that starts by default, and two versions of my fvwm2 window manager, one labeled “manual mode”, one “auto mode”. So I select one of these (I’ve tried both) and reboot. The system still comes up with that icewm window manager.

Even trying to start fvwm2 from within icewm (with the --replace option) doesn’t work, That just kills everything and puts me back at the login screen.

So what do I need to do to get my system working? Do I need to go back and re-install the previous version (42.2)? That works ok on my other machines.

Using yast2 alternatives instead of update-alternatives directly works better for some people.

Which display manager have you installed/selected? Are you using startx instead?

The preferred WM (or DE) is set via the display manager login screen. For example, if lightdm is in use, look to the top right for the spanner icon. From there you can set the desired desktop session. It’s a similar process for gdm and sddm.

I think you are confused between:

  • WIndow manager;
  • Desktop environment;
  • Display manager

A desktop environment is a collection of programs that presents a desktop. A window manager is a program that runs within a desktop environment to manage the placement of windows (and to put menus etc on windows).

A display manager is a program that allows you to login and select your preferred desktop environment.

What you need is to select a suitable display manager. And then, on the login screen for that display manager, you can select which desktop environment you want. I am currently using GDM as my display manager, but “lightdm” would be your best choice. With either of those, there is a menu where I can select “fvwm” for my desktop environment. And either one will remember my selection and make that the default for my next login.

Check whether “lightdm” is installed. If not, then install it. Then set it as your display manager with (as root)

update-alternatives --config default-displaymanager

Reboot, and you should get the lightdm login screen. For “lightdm” the menu is near the top right of the screen. You should be able to select “fvwm” there, and it will be remembered for future logins.

No, I don’t think I’m confused, but to avoid the possibility, perhaps some explanation is in order. First, I’ve been using SuSE Linux since sometime in the '90s, and Unix/X for quite a while before that, so I’m not exactly a newbie. I don’t have or want a “desktop environment” (which is something like KDE or Gnome, intended to make the computer work like Windoze), so we can leave that part out.

I am using the display manager that was set up by the installation program. This is lightdm, rather than the standard xdm. It should be settable in /etc/sysconfig/displaymanager, but is not set there in this install. The display manager should present the login screen (which lightdm does), and start the window manager I have specified - fvwm2. The window manager to start should be specified in /etc/sysconfig/windowmanager. Even though I did so, and tried the usdate-alternatives method, it did not work.

The “spanner icon” trick mentioned by deano_ferrari does seem to work, though I could have gone weeks without figuring it out on my own. Now I just need to figure out how to switch display managers, and figure out why the system is putting half the stuff on my notebook display - I run in a dock, with large monitor & standard keyboard/mouse, so the laptop display should be shut off and everything redirected to the large screen.

Anyway, thanks to everyone for the help. It’s much appreciated.

No.

That is already explained above in post #4:

update-alternatives --config default-displaymanager

Setting the DM using ‘update-alternatives’ is explained in the release notes…

 In the past, you could use /etc/sysconfig or the     YaST module /etc/sysconfig Editor to define the login     manager and desktop session. Starting with openSUSE Leap 15.0, the values     are not defined using /etc/sysconfig anymore but     with the alternatives system.    
 To change the defaults, use the following alternatives:    
  •    Login manager: default-displaymanager      
    
  •    Wayland session: default-waylandsession.desktop      
    
  •    X desktop session: default-xsession.desktop      
    
For example, to check the value of     default-displaymanager, use:    

sudo update-alternatives --display default-displaymanager
To switch the default-displaymanager to xdm, use:
sudo update-alternatives --set default-displaymanager
/usr/lib/X11/displaymanagers/xdm
To enable graphical management of alternatives, use the YaST module Alternatives that can be installed from the package yast2-alternatives.

Yes, someone on the development team decided to break code that has been working for decades. I’d call that a bug, myself.

Not at all - it’s a deliberate design decision that has been documented (as with most changes).

Let’s try to clear up some things…

What is a Desktop?
A fairly large, full graphical User environment with extensive functionality and features.

What is a Display Manager?
(My definition) - It’s essential for launching a Desktop and among other things includes the graphical User login screen.
https://en.wikipedia.org/wiki/X_display_manager_(program_type)

What is a Window Manager?
Largely responsible for how objects look and function in a graphical environment.
https://en.wikipedia.org/wiki/X_window_manager

Can you run a Desktop without a Window Manager?
I haven’t yet found a situation where this is possible

Can you run a Window Manager without a Desktop?
Yes. Although nowadays I typically sometimes run standalone Windows Managers in a windowed console, not a true physical terminal.

Note that before you can enable a DM or WM, you have to first install its package. And simply installing does not enable, you have to run either or both of the following commands to enable what you want. If you don’t see an alternatives for your DM or WM, ask about it in this Forum and possibly submit a bug.

In LEAP 15, how do you set or display info about the Display Manager?

update-alternatives --config default-displaymanager

How do you set or display info about the Window Manager?

update-alternatives --config default-xsession.desktop

Note that even after configuring using update-alternatives, you may still not see what you want… In that case you should disable auto-login (which is still done in /etc/sysconfig and can be set using the YaST module), then on the login page there will be a menu where you can select what you want.

Lastly,
It should be noted that IceWM is a Window Manager, not a Desktop but in our openSUSE is implemented as, and is an example of a Window Manager running without a Desktop. This is probably the main reason why you’ll find numerous functionality common in Desktops don’t work in IceWM. Openbox and Fluxbox are also WMs which are often run “standalone” without a Desktop.

HTH,
TSU

Yes. As I said, this is something I simply don’t want. Pretty much everything I do is either from the command line, or from applications started from the command line. (If I wanted something that looked/worked like Windoze, I would simply get Windoze :-))

Can you run a Window Manager without a Desktop?
Yes. Although nowadays I typically sometimes run standalone Windows Managers in a windowed console, not a true physical terminal.

Yes, that’s what I have always done, since long before *nix had “Desktops”.

Note that before you can enable a DM or WM, you have to first install its package. And simply installing does not enable, you have to run either or both of the following commands to enable what you want. If you don’t see an alternatives for your DM or WM, ask about it in this Forum and possibly submit a bug.

Yes, I did install the window manager I normally use - FVWM2. The normal/default display manager, xdm, is also installed on the system (apparently as part of the X package?), but is not used.

In LEAP 15, how do you set or display info about the Display Manager?

update-alternatives --config default-displaymanager

How do you set or display info about the Window Manager?

update-alternatives --config default-xsession.desktop

Note that even after configuring using update-alternatives, you may still not see what you want… In that case you should disable auto-login (which is still done in /etc/sysconfig and can be set using the YaST module), then on the login page there will be a menu where you can select what you want.

But that was my problem. (I did try finding an answer myself when the standard, long-established method didn’t work.) I tried using the update-alternatives method to change window managers, and it didn’t work. Whether or not that change to established methods was a good idea or not is a matter of opinion. However, it seems - well, to be polite, let’s just say “Not a really good idea” :slight_smile: - to make the change without making sure that it actually does work.

As for the “menu” in IceWM, how on Earth am I supposed to firgure out that the little blob (which doesn’t really look like anything much to me, and is barely visible on my display) is supposed to be a menu that one can use to set the windowmanager?

I installed “fvwm2” for Leap 42.x. And I was able to select that from the login menu. I rarely used it, so I did not try doing the same with 15.0. But it probably still works the same way. And, with “lightdm” handling the login, once you login once with “fvwm2”, it will remember that and make it the default for the next login.

Necrothread but…

@jamesqf as a sysadmin long in the tooth myself I feel you. Especially with fvwm2, which I used to run in my youth. However this is the modern world.

the

**update-alternatives --config default-displaymanager **

then

**update-alternatives --config default-xsession.desktop
**
Commands do indeed work as described, provided, (in my case) you restart vncserver.

In the meaningless jumping through hoops, a user had requested gnome to get a login box, but then gnome did what it does best, crash because of memory errors. (signal 6) Leaving the homebrew applications marooned. So the search was on to find a way to switch the windows manager to icewm.

Which now works, “Hooray for our side” To quote Flynn :slight_smile: