Tool for dynamic dual monitors for nvidia - Disper

Anyone using dual monitors (dual head) and has a nvidia graphic card, might be interested in the app, Disper, nvnews.

You can configure a dual monitor, on/off, via nvidia-settings, but you can automate it with Disper by writing a script to execute something like:

extend mode

disper -e -t right
disper --export >.nvidia-disper-settings

single mode

disper -s
disper --export >.nvidia-disper-settings

set at logon

remember mode when logging on/off

disper --import <.nvidia-disper-settings

thanks

if i get a dual monitor ill have to come back to this, ok

peace

I was browsing through some Phoronix threads and stumbled across mention of ‘disper’, with website here: Disper On that site it notes:

Disper is an on-the-fly display switch utility. It is intended to be used just before giving a presentation with a laptop, when all one wants is that the beamer, which has just been connected, is able to show whatever you prepared.

Disper gives you the option to either clone all detected displays, or extend the desktop to them. Resolutions are automatically detected. For cloning, the highest common resolution supported by all displays is chosen; for extending every display device gets its highest supported resolution. For special setups requiring more detailed control, one can still use the standard display configuration utilities.

At the moment nVidia cards are supported, and a basic XRandR backend is in place.

Given xrandr does not work well on nVidia with the GNU/Linux drivers, I thought this might be of interest to some users. Of course one can also use nvidia-settings (packaged by the Packman packagers).

Needless to say, I was curious if it had ever been packaged for openSUSE, so I did a quick search and found version 0.2.3 had been packaged (but not version 0.3.0) : software.opensuse.org: Search Results for disper

… I’m a bit surprised this thread has been so dormant the past year, but possibly nvidia hardware is not as common in laptops as it once was ?

Hi
I’ve updated the package to the 0.3.0 release and pushed the update to X11:Utilities. If you want to try it, I can add the 11.4 repo so it will publish?

https://build.opensuse.org/package/show?package=disper&project=home%3Amalcolmlewis%3Abranches%3AX11%3AUtilities

Many thanks for that.

We need someone with a laptop with nVidia hardware to try this package.

Anyone ?

So I have a desktop, an nVIDIA card and two monitors, so I think I could test this, but I am a loss to understand the installation of these files.

Thank You,

Once disper is installed, there is a guide here with some of the commands: How to Change Linux Displays on the Fly with Disper

So, when I try to go to the repository:

http://download.opensuse.org/repositories/home:/malcolmlewis:/branches:/X11:/Utilities/openSUSE_11.4

I get this error:

**Object not found!
**
The requested URL was not found on this server. If you entered the URL manually please check your spelling and try again.
If you think this is a server error, please contact the webmaster.
**
Error 404 **

download.opensuse.org
Sun Jul 17 23:58:41 2011
Apache/2.2.10 (Linux/SUSE)

Thank You,

Hi
Correct, by default when you branch a package to update it doesn’t enable the repo, I need to do it manually… Should be there now.

So I added in the repository, searched on disper, found it and installed it into a 64 bit system. I have two displays connected to my nVIDIA video card, my main monitor in front, and a smaller TV, connected by HDMI above on a shelf. I used the following command to turn the top one on as an extended user space above my main work space with the command:

/usr/bin/disper -e -t top

It is working like a champ, though I can do the same with nvidia-settings, but it can’t be done as fast as this program runs from the terminal command line. Here is a help output from the command:

/usr/bin/disper -h

Usage: disper [options] (-l|-s|-c|-e|-p|-i)

Options:                                                                                                                                                     
  --version             show program's version number and exit
  -h, --help            show this help message and exit
  -v, --verbose         show what's happening
  -q, --quiet           be quiet and only show errors                                                                                                        
  -r RESOLUTION, --resolution=RESOLUTION
                        set resolution, e.g. "800x600", or "auto" to detect                                                                                  
                        the display's preferred resolution, or "max" to use
                        the maximum resolution advertised. For extend it is                                           
                        possible to enter a single resolution for all displays
                        or a comma-separated list of resolutions (one for each
                        display). Beware that many displays advertise
                        resolutions they can not fully show, so "max" is not
                        advised.
  -d DISPLAYS, --displays=DISPLAYS
                        comma-separated list of displays to operate on, or
                        "auto" to detect; the first is the primary display.
  -t DIRECTION, --direction=DIRECTION
                        where to extend displays: "left", "right", "top", or
                        "bottom"
  --scaling=SCALING     flat-panel scaling mode: "default", "native",                                                 
                        "scaled", "centered", or "aspect-scaled"                                                      
  --plugins=PLUGINS     comma-separated list of plugins to enable. Special                                            
                        names: "user" for all user plugins in ~/.disper/hooks;                                        
                        "all" for all plugins found; "none" for no plugins.                                           
  --cycle-stages=CYCLE_STAGES
                        colon-separated list command-line arguments to cycle
                        through

  Actions:
    Select exactly one of the following actions

    -l, --list          list the attached displays
    -s, --single        only enable the primary display
    -S, --secondary     only enable the secondary display
    -c, --clone         clone displays
    -e, --extend        extend displays
    -p, --export        export current settings to standard output
    -i, --import        import current settings from standard input
    -C, --cycle         cycle through the list of cycle stages


Thank You,