Multiple X Screen Spawning

I’m a former fvwm user from a long long time ago. And I’m moving back to fvwm3 as my primary wm.

The faq documentation implies that fvwm should automatically spawn itself on all found X screens. I noticed that fvwm3 doesn’t spawn itself on all my X screens.

Has that support been removed? I noticed that the -s option has been removed which implies that fwvm3 only starts on the current X screen.

I’m guessing that the normal way is to just start fvwm3 using the -d option on whatever screen and use -f for different configs - is that the correct way?

fvwm3 should cover all screens using RandR. Do you have RandR setup correctly, what is the output of xrandr -q, so you see all three of your monitors there. What makes you think fvwm3 isn’t using all screens?

Thanks for the response. I did compile RandR into fvwm.

I’m not referring to the monitors. I’m referring to X screens (ie X screen = video card). I have multiple video cards. And I have multiple monitors on some of the video cards. RandR is detecting all the screens and monitors fine.

$ xrandr --screen 0 --listmonitors
Monitors: 2
0: +*HDMI-0 1920/521x1080/293+0+1080 HDMI-0
1: +DP-5 1920/521x1080/293+0+0 DP-5

$ xrandr --screen 1 --listmonitors
Monitors: 1
0: +*HDMI-0 3840/1872x2160/1053+0+0 HDMI-0

$ xrandr --screen 2 --listmonitors
Monitors: 1
0: +DP-0 1920/598x1080/336+0+0 DP-0
1: +DP-4 2560/597x1440/336+0+0 DP-4

It’s not a showstopper for me. I was just trying to figure out if running a fvwm3 process for each X screen was the proper way. The monitors on each X screen are detected just fine by each fvwm3 process using the -d option to specify the screen and working as expected.

This is a bit out of my experience, but I think you can mess with the provider options to add multiple providers to the same output, then RandR would just see those as separate monitors on the same output and fvwm3 should be able to span them all.

So I wouldn’t try and run fvwm3 like this – as it’s not going to be supported. At best, fvwm3 expects your screens to all be on the same $DISPLAY.

So I wouldn’t try and run fvwm3 like this – as it’s not going to be supported. At best, fvwm3 expects your screens to all be on the same $DISPLAY.

Thanks for that tidbit. That’s unfortunate to hear. Are you saying that the -d option will be deprecated in the future?

Running fvwm3 on each unique $DISPLAY is effectively what I’m doing. And multiple monitors on screen is working great with Xrandr. The model used by fvwm3 actually makes sense as I’ve started to become more familiar with fvwm3 over the past few days.

I’m coming from a window manager (fluxbox) which supports multiple X screens natively. But there are a few quirks and bugs which I’ve decided that I don’t want to deal with anymore. It is why I am re-exploring fvwm.

From what I can see so far - fvwm3 supports multiple X screens in a similar way as other window managers except that it has to be exec’d manually for each X screen.

The only real lack of support that I’ve observed is that there is no display screen support in the configuration files and some modules so I’ve had to make a few minor changes.

No, I’m not.

But when it comes to RandR, fvwm3 will only see which displays are running on $DISPLAY.

I still thought it was possible to put all the providers on a single $DISPLAY with xrandr. You should see all the cards with xrandr --list-providers, then I think you put them all on the same source, xrandr --setprovideroutputsource PROVIDER1 PROVIDER2 PROVIDER3 && xrandr --auto. I don’t have such a setup, so not something I can test.

Once they are all on the same $DISPLAY, then fvwm3 should be able to work with them.

Thanks for that tip. I had tried it when you initially mentioned it. Btw - the option is --listproviders in newer version of the xrandr. And it only list the available providers for the specific display set by $DISPLAY or if using the xrandr --display.

I’m using Nvidia cards and the Nvidia drivers and it does look like there could be a way to use RandR so that all the cards could be treated like a single X screen in the way that you described.

But I didn’t dig into it too much since I’m actually preferring to use multiple X screens. It’s how I’m accustomed to using X screens.