Bug 966658

Summary: User Wacom preferences are per host in 6.4
Product: Red Hat Enterprise Linux 6 Reporter: James Pearson <james-p>
Component: gnome-settings-daemonAssignee: Carlos Garnacho <cgarnach>
Status: CLOSED ERRATA QA Contact: Desktop QE <desktop-qa-list>
Severity: medium Docs Contact: Lucie Vařáková <lmanasko>
Priority: medium    
Version: 6.4CC: ayadav, bnocera, cgarnach, cww, grants, james-p, mboisver, mclasen, svashisht, tpelka
Target Milestone: rcKeywords: FastFix, OtherQA, Patch
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: 2.28.2-36 Doc Type: Release Note
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-03-21 11:02:33 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1075802, 1269194, 1363705    
Attachments:
Description Flags
gnome-wacom-properties-bz966658.patch none

Description James Pearson 2013-05-23 15:50:04 UTC
Description of problem:

In 6.4, the new Wacom user preferences are tied to user@machine - whereas previously (pre 6.4) Wacom preferences saved for a user on one machine would work with a Wacom on another machine for the same user (assuming using home directory over NFS etc)

Version-Release number of selected component (if applicable):

gnome-settings-daemon-2.28.2-30.el6

How reproducible:


Steps to Reproduce:
1. Login to machineA with Wacom tablet
2. Change settings
3. Login to machineB with same or same type of Wacom tablet

Actual results:

Settings saved on machineA are not used on machineB

Expected results:

Previously saved settings should be used

Additional info:

We have many users that use different machines over the course of weeks/months - who now have to re-enter any custom Wacom settings when they use a new machine

Ideally, user settings should be host agnostic by default - with possibly optional host specific settings available if required

Comment 1 James Pearson 2013-05-25 11:13:46 UTC
I notice from the source, that the host specific settings use the contents of /etc/machine-id, or if not found the contents of /var/lib/dbus/machine-id or if that fails, then it defaults to "00000000000000000000000000000000"

As /etc/machine-id doesn't exist, then a simple hack would be to create this file on all hosts containing the same string (e.g. 32x "0", as above)

I've tested this and it works - I can now share preferences between hosts for the same Wacom type - although it would be much better if an option could be added to the preferences setting display to choose shared or host specific settings

Comment 2 Joaquim Rocha 2013-05-27 13:45:07 UTC
Hi James,

I'm checking this and I see that it was changed from https://bugzilla.gnome.org/show_bug.cgi?id=674792 but perhaps Bastien can help us understand the motivation behind the change and whether what you suggest (having a key for enabling/disabling the use of the machine-id) is a good idea because having such a setting sounds weird to me.

Best regards,

Comment 3 James Pearson 2013-05-30 12:23:56 UTC
Just to clarify - do you mean that having a key for enabling/disabling the use of the machine-id is a weird idea - or the change to per-machine settings is a weird idea ???

Comment 4 Joaquim Rocha 2013-05-30 12:32:34 UTC
Hi James,

I mean having a key for that seems weird. I'd like to hear first why it is so important to have per machine settings and if they are not, then I'd just remove it (of course that since there was an individual patch made for this, then there might be a good reason... so let's hear it).

Comment 5 James Pearson 2013-05-30 18:06:39 UTC
OK - yes it would be good to know why this change was made - there in no indication in that Gnome bug as to the reason for the change

Comment 6 Bastien Nocera 2013-06-04 10:24:51 UTC
A customer (one of the original users of this tool) requested that configuration be made per-machine (or per-host depending on how you look at the machine-id).

/etc/machine-id is the location of the file in newer versions of Fedora (offered by systemd) and I guess it wasn't ported properly to RHEL. From the machine-id(5) man page:
---8<---
The simple configuration file format of /etc/machine-id originates in the /var/lib/dbus/machine-id file introduced by D-Bus. In fact this latter file might be a symlink to /etc/machine-id.
---8<---

The RHEL 6 code should use /var/lib/dbus/machine-id instead.

Comment 7 James Pearson 2013-06-04 10:36:49 UTC
Unfortunately this is a change/regression from how wacomcpl worked prior to 6.4 - so it causes problems for our users that frequently move between different machines

Ideally the default behaviour should not change from 6.3 -> 6.4

If a change in behaviour is requested, then shouldn't this been made an option rather than the default behaviour that can't be altered by other users?

Comment 8 Bastien Nocera 2013-06-04 11:01:07 UTC
I made the change upstream, and I explained the possible loss of configuration for users upgrading from earlier RHEL versions in our conversations internally.

I wasn't responsible for backporting those changes (otherwise I'd have changed the path for the machine-id, certainly), or deciding whether it should be merged into this version of RHEL, so I can't really help more on this.

Comment 9 James Pearson 2013-06-04 12:10:33 UTC
I guess it was a pity that the upstream changes didn't include something to make the change of behaviour optional - especially if loss of configuration for users was a known issue at the time?

I suppose the backporting to RHEL just took those changes verbatim ???

Comment 11 grants 2013-09-09 23:23:33 UTC
I agree with James Pearson. We also rely on the fact that the wacom configuration is purely user based. We have users that float between machines and want their setting to float with them. 

Having an option to make the config switch between user@machine or user would be fine. Then it could handle both situations without loosing the original functionality.

Comment 12 James Pearson 2013-10-23 13:18:15 UTC
Any news on when this regression will be fixed?

Comment 15 Bastien Nocera 2014-01-27 14:18:00 UTC
I've put this patch up for review upstream:
https://bugzilla.gnome.org/show_bug.cgi?id=723099

Once it's accepted upstream, work can be done backporting this fix to RHEL 6.x.

If migration tools are necessary for pre-RHEL 6.4 installations, please file a separate bug, or contact your support manager.

It should be fairly straight forward to write a script to do that using "gconftool-2 --dump", changing the paths of the configuration and reloading them using "gconftool-2 --load".

Comment 16 James Pearson 2014-01-28 15:55:41 UTC
The patch does seem a bit hacky ... I'm currently using a similar hack - but in my case, using an environment variable to toggle sharing of setting between hosts

Shouldn't the toggle for this be a gconf setting? - that can be managed via standard gconf tools - and ideally via the Wacom control panel ???

Comment 19 Siteshwar Vashisht 2014-07-01 09:33:26 UTC
Created attachment 913714 [details]
gnome-wacom-properties-bz966658.patch

Comment 27 Tomas Pelka 2016-11-28 20:30:00 UTC
Dear James,

it seems we have a fixed rpm(s), would you be willing to test within your environment? If you agree I will ask someone to provide them to you.

Thanks
-Tom

Comment 28 James Pearson 2016-11-28 22:11:13 UTC
I should be able to test - thanks

Comment 31 Michael Boisvert 2016-12-20 16:36:08 UTC
Hi James, are you able to test this issue with the latest packages and report the results back here?

Comment 32 James Pearson 2016-12-21 10:49:26 UTC
I guess you mean packages from 6.9-beta?

I'll see if I can find some time to have a look before the end of the year ...

Comment 33 James Pearson 2017-01-03 12:38:49 UTC
Using gnome-settings-daemon-2.28.2-37 and control-center-2.28.1-41 (from 6.9-beta) appears to 'fix' the issue

i.e. when ~/.config/gnome-settings-daemon/no-per-machine-config exists, then the directory tree ~/.gconf/desktop/gnome/peripherals/wacom/00000000000000000000000000000000-usb:$vendor:$product/ is created - and used when the Wacom tablet is moved between hosts

Comment 34 Tomas Pelka 2017-01-04 10:45:50 UTC
(In reply to James Pearson from comment #33)
> Using gnome-settings-daemon-2.28.2-37 and control-center-2.28.1-41 (from
> 6.9-beta) appears to 'fix' the issue
> 
> i.e. when ~/.config/gnome-settings-daemon/no-per-machine-config exists, then
> the directory tree
> ~/.gconf/desktop/gnome/peripherals/wacom/00000000000000000000000000000000-
> usb:$vendor:$product/ is created - and used when the Wacom tablet is moved
> between hosts

Thanks James

your versions are the right ones. Moving to verified based on your feedback.

Thanks again!

Comment 37 errata-xmlrpc 2017-03-21 11:02:33 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2017-0705.html