xfce4-whiskermenu-plugin "Switch Users" functionality

Bug #1285440 reported by ToZ on 2014-02-27
This bug affects 12 people
Affects Status Importance Assigned to Milestone
xfce4-whiskermenu-plugin (Ubuntu)
xubuntu-default-settings (Ubuntu)

Bug Description

Xubuntu 14.04 Beta 1
(not sure where to put this request, can't file bug reports against the whisker menu through ubuntu-bug, but I don't think it belongs there).

Whisker menu has an option to "Switch Users" on the main menu dialog but it is greyed out. In the properties, it is currently set to run gdmflexiserver but the package "libgdm1" is not installed. Installing that package doesn't make the functionality work because of a "GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.DisplayManager was not provided by any .service files" error message.

You can use the dm-tool from the lightdm package to enable this functionality by using the command: "dm-tool switch-to-greeter" in the "Switch Users" command on the Behaviour tab.

Suggestion #1: Include this command as the default for "Switch Users" behaviour.

Although this will enable the switch users functionality, it raises a secondary issue. The new greeter is opened on a secondary virtual console (Ctrl+Alt+F8) and every subsequent switch user command creates a new virtual console login. The issue is that the new user will need to know about virtual consoles and how to switch between them. In addition, when switching consoles, the light-locker lock screen displays the black "This session is locked" screen but doesn't include the userid of the logged in user (like the xscreensaver dialog did) and includes a delay of about 5 seconds before the login dialog appears. This further complicates the identification of which console the user is at and having to wait 5 seconds to identify it.

Suggestion #2: Edit the light-locker lock screen message to include the userid of the currently logged in user.

Suggestion #3: Decrease the wait time time of the light-locker "This session is locked" screen to about 1 or 2 seconds.

Suggestion #4: Create a wrapper program to manage multi-user sessions. A program that lists available active sessions that can be switched to and offers the opportunity to create a new session. Change the whisker-menu properties to run this program which will then interface with the dm-tool command.

ProblemType: Bug
DistroRelease: Ubuntu 14.04
Package: xubuntu-default-settings 14.04.1
ProcVersionSignature: Ubuntu 3.13.0-12.32-generic 3.13.4
Uname: Linux 3.13.0-12-generic i686
ApportVersion: 2.13.2-0ubuntu5
Architecture: i386
CurrentDesktop: XFCE
Date: Wed Feb 26 20:23:53 2014
InstallationDate: Installed on 2014-02-26 (1 days ago)
InstallationMedia: Xubuntu 14.04 LTS "Trusty Tahr" - Alpha i386 (20140225)
PackageArchitecture: all
SourcePackage: xubuntu-default-settings
UpgradeStatus: No upgrade log present (probably fresh install)

Related branches

ToZ (toz) wrote :
Ubuntu QA Website (ubuntuqa) wrote :

This bug has been reported on the Ubuntu ISO testing tracker.

A list of all reports related to this bug can be found here:

tags: added: iso-testing
Adolfo Jayme (fitojb) on 2014-03-02
no longer affects: xubuntu-default-settings (Ubuntu)
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in xfce4-whiskermenu-plugin (Ubuntu):
status: New → Confirmed

It renders essential features or functionality of the package (or a dependent one) broken.

Changed in xfce4-whiskermenu-plugin (Ubuntu):
importance: Undecided → High
Simon Steinbeiß (ochosi) wrote :

Thanks for the bugreport.

#1 would work, but it results in the same action as locking. (The currently logged-in user is pre-selected.) There is an additional security concern, because – unlike running the "lock" action – switching users via dm-tool doesn't check whether any locking programme like light-locker is running. And this is also the main reason why I wouldn't add it to whiskermenu by default.

(You seem to be misunderstanding a few things about user-switching and lightdm/light-locker. It is true that lightdm spawns a new X session each time you switch users, but those X sessions also go away or gets used after you have successfully completed the desired action (e.g. unlock an existing session or create a new session). Hence the user doesn't have to know anything about VT-switching, this is all handled graciously by lightdm and light-locker.)

#2 That doesn't make any sense and also doesn't help. As mentioned above, the user doesn't have to know or do anything about VT-switching.

#3 This timeout is hardcoded in light-locker and I'm not sure how lowering that would actually help with the bug.

#4 That is what lightdm and the greeter are there for.

ToZ (toz) wrote :

So if I understand correctly, the current method to switch users is to lock the current user and on the unlock screen, select the new user that you would like to log in as (the VT switching will happen automatically behind the scenes). That is fine, but a couple of things to consider:
1. This is different from the older method(s) including xfswitch plugin, xscreensaver "New Login" and the old GDM methods, and may not be intuitive to the user.
2. The presence of a disabled "Switch Users" button (in addition to a "Lock Screen" button) on the whisker menu is confusing.
Would it then be preferable to remove the "Switch Users" button and have an instructional piece on how to switch users, or enable the "Switch Users" button but have it set to just lock the screen? Or a third option that I'm not seeing?

Brian McNeil (brian-mcneil) wrote :

Following comments elsewhere from Toz (which turned out most-helpful), I've effectively copied the gdmflexiserver file (/usr/lib/lightdm/lightdm/gdmflexiserver) from a 13.10 install of Ubuntu Studio into a 14.04 environment. That resolves the issue without resorting to locking the screen and selecting 'New Login'.

It not only resolves the issue with whiskermenu, the standard 'Action Buttons' panel no longer shows "Switch User" as greyed-out.

The relevant command in gdmflexiserver doesn't make reference to gnome, being as-follows:

dbus-send --system --type=method_call --print-reply --dest=org.freedesktop.DisplayManager $XDG_SEAT_PATH org.freedesktop.DisplayManager.Seat.SwitchToGreeter

Changed in xubuntu-default-settings (Ubuntu):
status: New → Fix Released
b3nmore (b3nmore) wrote :

I've attached a python script which one can use for user switching. It switches to the login/unlock screen or, if the user disabled light-locker, directly to its session.

Download it and make it executable; then you can call it from whisker menu, a launcher or a keyboard shortcut.

This bug was fixed in the package xfce4-whiskermenu-plugin - 1.4.0-1ubuntu1

xfce4-whiskermenu-plugin (1.4.0-1ubuntu1) utopic; urgency=medium

  * debian/patches/01_replace-gdmflexiserver.patch
    - Use dm-tool instead of gdmflexiserver for user-switching,
      the latter is no longer provided by lightdm (LP: #1320560)
 -- Sean Davis <email address hidden> Tue, 14 Oct 2014 06:39:57 -0400

Changed in xfce4-whiskermenu-plugin (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers