SOLVED: Replicating desktop configuration on an external monitor

I have a Dell E5570 laptop, running ubuntu 14.04. I’ve been trying to replicate my desktop configuration on an external monitor. Thanks to a lot of help from Jacob Vlijm through this thread:

http://askubuntu.com/questions/748442/how-can-i-mirror-two-monitors-with-14-04-on-a-dell-5570?noredirect=1#comment1117037_748442

I’ve made some progress using the command

xrandr --output  eDP1 --auto --output DP3 --auto --same-as eDP1

but haven’t managed to fully replicate what I have, a screenshot of which is provided below.

https://are.berkeley.edu/~leo1730simon/personal/fvwmSetup.png

After executing the xrandr command, I still have a 3x2 configuration, but the second of my columns has disappeared, the third column is in the second column place, and the third column is now empty. Curiously, if I attach the external monitor without executing the xrandr command, the only column I can see is the second of my original columns, and my external monitor is an extension of my laptop monitor.

Would most appreciate any help in getting a full replication. Thanks!

Afraid I can’t claim I entirely understand your problem, one thing that might be of note though is that FVWM currently does not have xrandr support, so without a restart it won’t react properly to the changed state. You can try just restarting your FVWM (with the Restart command).

Alternatively, assuming you can compile/install software on that machine, there is a (friendly) Fvwm fork named MVWM which added xrandr support so you could give that a try until such a time as these changes are (hopefully) merged back into FVWM.

This looks quite promising, there’s a lot of things that I’ve desired for long. But allow me the question: Why did you fork the project, why did you not just contribute to the actual FVWM? Do you fear some quarrel?

MVWM is a cleanup fork of one of the core developer of FVWM. It’s a playground for new implementations and ideas. Also a try to remove bloatware entered FVWM over the years.

– Thomas –

And for the record, I am not the author of the fork :slight_smile:

Is this still an issue?

I’m having trouble following the issue you posted. Is the right-most portion of your desk just getting chopped off?

Have you tried changing which display is the primary and then telling fvwm to restart? Or turning off one display and then restarting fvwm?

For example:

Turn on the display:

    xrandr --output "eDP1" --auto

Set it to mirror:

    xrandr --output "eDP1" --same-as "DP3"

Make it primary:

   xrandr --output "eDP1" --primary

And then if the resolution is different than what FVWM started with, tell fvwm to restart (for example, via FvwmConsole):

    Restart

I made a script for configuring the connected displays through xrandr from FVWM. You piperead the script into your configuration and then add it to a menu. For example:

    AddToFunc StartFunction
    + I PipeRead 'python $[FVWM_USERDIR]/display.py'
  
    AddToMenu MenuFvwmRoot
    + "Displays" Popup DisplaysMenu

The script is on github https://github.com/itstaken/dot-files/blob/master/.fvwm/display.py. It’s a bit inflexible in that it needs to be in your .fvwm folder, and it doesn’t persist the settings through a restart, but generally I’ve found it useful for this sort of thing when moving my laptop between different projectors and the like.

Edit: fixed link (had a trailing paren)

Magic!!! :smiley:
I put the 3 xrandr commands you suggested into a bash script that I run on startup, plus an FvwmCommand Restart just in case, and it worked beautifully, i.e., I have my 2x3 desktop just as when I’m not hooked up to an external monitor.

I’m not sure what the display.py script adds to this? I tried using it (without the bash script) and it had no effect; perhaps it’s something wrong with my startup script, since there’s no menu item in the Root Fvwm menu showing up either. But since I go what I wanted, it’s academic I think…

Thanks so much for your help

You could say it’s academic. You certainly don’t need it, it was just something that I’ve been using so I don’t have to run xrandr commands for newly connected external displays. When invoked from a menu it just lets you do stuff that xrandr does, but by clicking the mouse in a menu.