Bug#597383: gdm3: gdm greeter appears on wrong monitor while using TwinView

Alexandre Kouznetsov alk at ondore.com
Sun Sep 19 08:04:47 UTC 2010


Package: gdm3
Version: 2.30.2-4
Severity: normal
Tags: squeeze

I have two monitors, using TwinView, configured with help of "nvidia-settings".
My primary monitor is on the left side, and the secondary is on the right side
(as the default).
When GDM starts, the greeter appears on the secondary (right) monitor, while
it's expected to be on the primary (left). Once logged in, the primary monitor
selection behaves fine, all the menus and panels stays on the primary monitor
as expected. A also have found reports of the same problem on ATI cards.

Apparently it has to do with the mouse position when X starts and the way the
greeter chooses the montor on which to show up. As I see it, the greeter is
supposed to appear on the monitor where the mouse cursor is, which happen to be
placed exactly in the middle of two monitors. The option "XineramaScreen" in
/etc/gdm3/custom.conf (as
http://library.gnome.org/users/gdm/stable/configuration.html.en suggests) does
not seem to correct the problem (they removed Xinerama support from GDM3?).

I do not have a solution, but found some workarounds:

1. While X starts, move the mouse to the left. The delay between X starts and
the greeters is showed seemes to give enought time for the cursor to move to
the correct direction. So when the greeter shows, it is placed on the right
(actually, on the left one, sorry) monitor. Can't say it's usable on a regular
basis, but I believe this workaround illustrates well the nature of the
problem.

2. nvidia-settings utility can create a good xorg.conf example. Between other
things, it allows you to specify the respective position of the screens quite
precisely. In my case (two 1280x1024 flat screens), the line is:
Option  "MetaModes" "DFP-0: nvidia-auto-select +0+0, DFP-1: nvidia-auto-select
+1280+0"
The workaround is to make the screens to overlap at least one pixel:
Option "MetaModes" "DFP-0: nvidia-auto-select +0+0, DFP-1: nvidia-auto-select
+1279+0"
This brakes the thin balance of the cursor position to the right side (actually
to the left, sorry again) and the GDM greeter behaves correctly.

3. There is a bug report of the same problem in Ubuntu:
https://bugs.launchpad.net/ubuntu/+source/gdm/+bug/395314
Joerg Friede suggestes another workaround which i have not tested, but i see no
reason why it shouldn't work. Let me quote:
> Another quick workaround (if not already posted somewhere else) that worked
for me:
>
> - install xwit from using apt-install or synaptics
> - add the following line to /etc/gdm/Init/Default or another script that gets
called by gdm prior to login
>
> xwit -root -warp 500 500 #or use any other x/y coordinates that lie within
the range of the primary monitor
>
> Hope this helps

Thank you.



-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.32-5-amd64 (SMP w/2 CPU cores)
Locale: LANG=es_MX.utf8, LC_CTYPE=es_MX.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages gdm3 depends on:
ii  adduser                 3.112            add and remove users and groups
ii  debconf [debconf-2.0]   1.5.35           Debian configuration management sy
ii  gconf2                  2.28.1-3         GNOME configuration database syste
ii  gnome-session [x-sessio 2.30.2-1         The GNOME Session Manager - GNOME 
ii  gnome-session-bin       2.30.2-1         The GNOME Session Manager - Minima
ii  gnome-terminal [x-termi 2.30.2-1         The GNOME terminal emulator applic
ii  libart-2.0-2            2.3.21-1         Library of functions for 2D graphi
ii  libatk1.0-0             1.30.0-1         The ATK accessibility toolkit
ii  libattr1                1:2.4.44-2       Extended attribute shared library
ii  libaudit0               1.7.13-1+b2      Dynamic library for security audit
ii  libbonobo2-0            2.24.3-1         Bonobo CORBA interfaces library
ii  libbonoboui2-0          2.24.3-1         The Bonobo UI library
ii  libc6                   2.11.2-5         Embedded GNU C Library: Shared lib
ii  libcairo2               1.8.10-5         The Cairo 2D vector graphics libra
ii  libcanberra-gtk0        0.24-1           Gtk+ helper for playing widget eve
ii  libcanberra0            0.24-1           a simple abstract interface for pl
ii  libdbus-1-3             1.2.24-3         simple interprocess messaging syst
ii  libdbus-glib-1-2        0.88-2           simple interprocess messaging syst
ii  libdevkit-power-gobject 1:0.9.5-1+b1     abstraction for power management -
ii  libfontconfig1          2.8.0-2.1        generic font configuration library
ii  libfreetype6            2.4.2-1          FreeType 2 font engine, shared lib
ii  libgconf2-4             2.28.1-3         GNOME configuration database syste
ii  libglib2.0-0            2.24.1-1         The GLib library of C routines
ii  libgnome2-0             2.30.0-1         The GNOME library - runtime files
ii  libgnomecanvas2-0       2.30.1-1         A powerful object-oriented display
ii  libgtk2.0-0             2.20.1-1+b1      The GTK+ graphical user interface 
ii  liborbit2               1:2.14.18-0.1    libraries for ORBit2 - a CORBA ORB
ii  libpam-modules          1.1.1-6          Pluggable Authentication Modules f
ii  libpam-runtime          1.1.1-6          Runtime support for the PAM librar
ii  libpam0g                1.1.1-6          Pluggable Authentication Modules l
ii  libpanel-applet2-0      2.30.2-1         library for GNOME Panel applets
ii  libpango1.0-0           1.28.1-1         Layout and rendering of internatio
ii  libpolkit-gobject-1-0   0.96-2           PolicyKit Authorization API
ii  libpolkit-gtk-1-0       0.96-2           PolicyKit GTK+ API
ii  libpopt0                1.16-1           lib for parsing cmdline parameters
ii  librsvg2-common         2.26.3-1         SAX-based renderer library for SVG
ii  libselinux1             2.0.96-1         SELinux runtime shared libraries
ii  libwrap0                7.6.q-19         Wietse Venema's TCP wrappers libra
ii  libx11-6                2:1.3.3-3        X11 client-side library
ii  libxau6                 1:1.0.6-1        X11 authorisation library
ii  libxdmcp6               1:1.0.3-2        X11 Display Manager Control Protoc
ii  libxklavier16           5.0-2            X Keyboard Extension high-level AP
ii  libxml2                 2.7.7.dfsg-4     GNOME XML library
ii  lsb-base                3.2-23.1         Linux Standard Base 3.2 init scrip
ii  metacity [x-window-mana 1:2.30.1-2       lightweight GTK+ window manager
ii  policykit-1-gnome       0.96-2           GNOME authentication agent for Pol
ii  twm [x-window-manager]  1:1.0.4-2        Tab window manager
ii  upower                  0.9.5-1+b1       abstraction for power management
ii  xterm [x-terminal-emula 261-1            X terminal emulator
ii  zlib1g                  1:1.2.3.4.dfsg-3 compression library - runtime

Versions of packages gdm3 recommends:
ii  at-spi                        1.30.1-2   Assistive Technology Service Provi
ii  gnome-icon-theme              2.30.3-1   GNOME Desktop icon theme
ii  gnome-power-manager           2.30.1-1   power management tool for the GNOM
ii  gnome-settings-daemon         2.30.2-1   daemon handling the GNOME session 
ii  xserver-xephyr                2:1.7.7-6  nested X server
ii  xserver-xorg                  1:7.5+6    the X.Org X server
ii  zenity                        2.30.0-1   Display graphical dialog boxes fro

Versions of packages gdm3 suggests:
ii  gnome-mag                     1:0.16.1-2 a screen magnifier for the GNOME d
ii  gnome-orca                    2.30.2-1   Scriptable screen reader
ii  gok                           2.30.0-1   GNOME Onscreen Keyboard
ii  libpam-gnome-keyring          2.30.3-1   PAM module to unlock the GNOME key
ii  metacity                      1:2.30.1-2 lightweight GTK+ window manager

-- debconf information:
* shared/default-x-display-manager: gdm3
  gdm3/daemon_name: /usr/sbin/gdm3





More information about the pkg-gnome-maintainers mailing list