Bug 1474967

Summary: gnome-shell 'enabled-extensions' dconf key doesn't enable extensions for existing users, just for new users
Product: Red Hat Enterprise Linux 7 Reporter: Deepu K S <dkochuka>
Component: doc-Desktop_Migration_and_Administration_GuideAssignee: Jana Heves <jsvarova>
Status: CLOSED CURRENTRELEASE QA Contact: Tomas Pelka <tpelka>
Severity: medium Docs Contact:
Priority: high    
Version: 7.3CC: dkochuka, jhradile, jsvarova, rhel-docs
Target Milestone: rcKeywords: Documentation
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-04-12 14:37:04 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: 1470091    

Description Deepu K S 2017-07-25 17:26:40 UTC
Document URL: 
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Desktop_Migration_and_Administration_Guide/extensions-enable.html

Section Number and Name: 
11.2. Enabling Machine-wide Extensions


Describe the issue:
The documentation states that;
"Note that newly-installed machine-wide extensions are disabled by default. To enable the extensions for all users, you need to set the org.gnome.shell.enabled-extensions key."

However after running `# dconf update`, the added extensions are not reflected to older users even after log out and login as mentioned in point 3.

The older users may have their own-enabled extensions. i.e If the user has their own enabled-extensions key set (e.g. if they've enabled an extension, and possibly even then disabled it), then the default enabled-extensions in dconf 'system' is ignored.


Suggestions for improvement: 
A change is needed in documentation which should say,

"To set the default enabled extensions you need to set the org.gnome.shell.enabled-extensions key. There is currently no way to enable additional extensions for users who have already logged in".

"This doesn't apply for existing users who have installed and enabled their own gnome-extensions."


Additional information: 
[root@vm252-28 ~]# cat /etc/dconf/db/local.d/00-extensions
[org/gnome/shell]
enabled-extensions=['launch-new-instance.github.com','alternate-tab.github.com']
[root@vm252-28 ~]# 

[root@vm252-28 ~]# dconf update

[root@vm252-28 ~]# gsettings get org.gnome.shell enabled-extensions
['launch-new-instance.github.com', 'alternate-tab.github.com']
[root@vm252-28 ~]#

'test' is an older user and 'newuser' is the newly created user.

[newuser@vm252-28 ~]$ gsettings get org.gnome.shell enabled-extensions
['launch-new-instance.github.com', 'alternate-tab.github.com']
[newuser@vm252-28 ~]$ 

[test@vm252-28 ~]$ gsettings get org.gnome.shell enabled-extensions
['launch-new-instance.github.com', 'places-menu.github.com', 'openweather-extension']
[test@vm252-28 ~]$ 



[root@vm252-28 ~]# cat /etc/dconf/db/local.d/00-extensions
[org/gnome/shell]
enabled-extensions=['launch-new-instance.github.com']
[root@vm252-28 ~]#

[root@vm252-28 ~]# dconf update

[root@vm252-28 ~]# gsettings get org.gnome.shell enabled-extensions
['launch-new-instance.github.com']
[root@vm252-28 ~]#

[newuser@vm252-28 ~]$ gsettings get org.gnome.shell enabled-extensions
['launch-new-instance.github.com']
[newuser@vm252-28 ~]$ 

[test@vm252-28 ~]$ gsettings get org.gnome.shell enabled-extensions
['launch-new-instance.github.com', 'places-menu.github.com', 'openweather-extension']
[test@vm252-28 ~]$ 

The changes doesn't affect older users or logged in users. The dconf settings get inherited to newly created users.