[quantal] [regression] Gnome Classic has no compiz plugins loaded

Bug #1036752 reported by Doug McMahon
80
This bug affects 12 people
Affects Status Importance Assigned to Milestone
Compiz
Invalid
Undecided
Unassigned
compiz (Ubuntu)
Fix Released
High
Didier Roche-Tolomelli
Quantal
Fix Released
High
Didier Roche-Tolomelli
gnome-session (Ubuntu)
Invalid
High
Unassigned
Quantal
Invalid
High
Unassigned

Bug Description

[Impact]
People upgrading from Quantal using the gnome classic session doesn't have any window manager (compiz started but no plugin apart ccp loaded).

[Test case]
2 tests to perform:

* having a precise machine, log in in the gnome classic session and then -> quantal update
1. install the new compiz package from -proposed
2. logout and login back to the classic session
3. window management and other compiz plugin should now be loaded

* new quantal install, with gnome-session-fallback
1. log in in gnome-classic -> no window management
2. install the new package from -proposed
3. logout/login
-> default plugins (without unity though) should be loaded.

[Regression potential]
Just upgrade not working, no regression per say.

Test case
new install from current or recent daily
install gnome-session-fallback
log in to gnome classic
There will be absolutely no compiz plugins loaded whatsoever

ProblemType: Bug
DistroRelease: Ubuntu 12.10
Package: gnome-session-fallback 3.5.5-0ubuntu1
ProcVersionSignature: Ubuntu 3.5.0-10.10-generic 3.5.1
Uname: Linux 3.5.0-10-generic x86_64
ApportVersion: 2.4-0ubuntu6
Architecture: amd64
Date: Tue Aug 14 12:55:47 2012
InstallationMedia: Ubuntu 12.10 "Quantal Quetzal" - Alpha amd64 (20120813.1)
PackageArchitecture: all
ProcEnviron:
 TERM=xterm
 PATH=(custom, no user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
SourcePackage: gnome-session
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Doug McMahon (mc3man) wrote :
summary: - gnome claasic - uses the Default profile but no compiz plugins loaded
+ gnome classic - uses the Default profile but no compiz plugins loaded
Revision history for this message
Doug McMahon (mc3man) wrote : Re: gnome classic - uses the Default profile but no compiz plugins loaded

As seen in xsession-errors (or from terminal
/usr/bin/compiz (core) - Info: Loading plugin: core
/usr/bin/compiz (core) - Info: Starting plugin: core
/usr/bin/compiz (core) - Info: Loading plugin: ccp
/usr/bin/compiz (core) - Info: Starting plugin: ccp
Backend : ini
Integration : true
Profile : default
Adding plugins
Initializing core options...done

Backend : ini - ???

Revision history for this message
Launchpad Janitor (janitor) wrote :

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

Changed in gnome-session (Ubuntu):
status: New → Confirmed
Revision history for this message
Daniel van Vugt (vanvugt) wrote : Re: [quantal] [regression] Gnome Classic uses the Default profile but no compiz plugins loaded

It would appear that in the recent transition from gconf to gsettings, we completely forgot to make a default compiz profile for Gnome Classic.

summary: - gnome classic - uses the Default profile but no compiz plugins loaded
+ [quantal] [regression][ Gnome Classic uses the Default profile but no
+ compiz plugins loaded
summary: - [quantal] [regression][ Gnome Classic uses the Default profile but no
+ [quantal] [regression] Gnome Classic uses the Default profile but no
compiz plugins loaded
Changed in compiz (Ubuntu):
status: New → Confirmed
importance: Undecided → High
Changed in gnome-session (Ubuntu):
importance: Undecided → High
Changed in compiz (Ubuntu):
milestone: none → ubuntu-12.10-beta-2
tags: added: regression-release
tags: added: gsettings
summary: - [quantal] [regression] Gnome Classic uses the Default profile but no
- compiz plugins loaded
+ [quantal] [regression] Gnome Classic has no compiz plugins loaded
Changed in compiz:
status: New → Invalid
Revision history for this message
Łukasz Zemczak (sil2100) wrote :

@Doug
Could you check if compiz-gnome is installed on this system? Since the default compiz gsettings schemas should be installed by default, and I'm pretty sure that the compiz-gnome.gsettings-override should set a sane list of active-plugins. And could you also check if /usr/share/glib-2.0/schemas/10_compiz-gnome.gschema.override is installed and what are its contents?

Revision history for this message
Doug McMahon (mc3man) wrote :

first - this is a couple of day old install But it is the the Aug. 15 image updated so i thought may be worth doing a fresh with the current image.
Anyway -
Created a new user, logged directly into Classic
Same thing, only the ccp plugin is loaded. As far as the override will attach though it seems more suited to an ubuntu session.

Is there any expectation of a Default profile being in dconf? Currently only the Unity profile is there.
If opening ccsm from the Classic login >Preferences, the Default profile > Plugin List confirms only ccp enabled.

If I enable the min set of plugins to get going, then in ccsm >Preferences > Default profile , (only profile avail.), when clicking on the "Reset to defaults" everything but ccp is unset

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

sil2100,

I have compiz-gnome installed, but still only a profile for Unity:
    dconf list /org/compiz/profiles/
gives me:
    unity/

So there's no default profile telling compiz what plugins to load in Gnome Classic.

Revision history for this message
Jason Conti (jconti) wrote :

I noticed that when loading ccsm in the gnome classic session it outputs:

Backend: ini

I can force it to use the gsettings backend by adding:

[gnome_session]
backend = gsettings
profile = Default

to /etc/compizconfig/config, but it will just load the unity active-plugins from /usr/share/glib-2.0/schemas/10_compiz-gnome.gschema.override, and I don't see any way to override this, even though the schema is relocatable. Looking at the migration scripts, it seems like:

[org.compiz.core:/org/compiz/profiles/unity/plugins/core/]
active-plugins=[..]

should work (and then we could create one for Default or gnome-classic or whatever), but it doesn't, compiz will only load core and ccp plugins.

Using the ini backend would be fine too, but it doesn't read any from /etc/compizconfig/, choosing instead to create a blank file in ~/.config/compiz-1/compizconfig/, so I can't override that unless I create/copy a Default.ini file there.

Revision history for this message
Jason Conti (jconti) wrote :

Though it does work with the gsettings backend if the settings are set at the user level with either ccsm or:

gsettings set org.compiz.core:/org/compiz/profiles/Default/plugins/core/ active-plugins "['core','composite','opengl','decor','move','imgpng','place','resize']";

So I guess it is just from the gsettings vendor overrides that you can't use the setting path.

Revision history for this message
Jason Conti (jconti) wrote :

Alright, ideally I would use gsettings, but I cannot figure out how to set up the default plugins without running some sort of script in the user session to set the keys if they are not already set.

So, my thought is that we can just use the ini backend but with the attached patch to compizconfig/libcompizconfig/backend/source/ini.c.

This patch allows compiz to fallback to a .ini profile in /etc/compizconfig/ to read settings if the value is not already set in the user .ini file in ~/.config/compiz-1/compizconfig/. With the addition of a simple Default.ini to /etc/compizconfig/ such as:

[core]
s0_active_plugins = core;composite;opengl;compiztoolbox;decor;vpswitch;snap;mousepoll;resize;place;move;wall;grid;regex;imgpng;session;gnomecompat;animation;fade;workarounds;scale;expo;ezoom

the Gnome Classic session will load up with a nice default set of plugins.

Technically it only needs to fallback for a List option to fix this issue, but I added them all anyway. Probably needs some testing and perhaps fixing.

Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "compiz_system_ini_v3.patch" of this bug report has been identified as being a patch. The ubuntu-reviewers team has been subscribed to the bug report so that they can review the patch. In the event that this is in fact not a patch you can resolve this situation by removing the tag 'patch' from the bug report and editing the attachment so that it is not flagged as a patch. Additionally, if you are member of the ubuntu-reviewers team please also unsubscribe the team from this bug report.

[This is an automated message performed by a Launchpad user owned by Brian Murray. Please contact him regarding any issues with the action taken in this bug report.]

tags: added: patch
Revision history for this message
Sam Spilsbury (smspillaz) wrote :

Hi Jason,

The way we made this work back in the days of Natty was to just use an environment variable to switch between the two sessions. This was done through /etc/compizconfig/config .

That mechanism should still be there. As long as COMPIZ_CONFIG_PROFILE is set to "" in a gnome-classic session, it should pick the "general" profile.

As far as I can tell, we aren't shipping a Default.ini in /etc/compizconfig/ If we just ship that there with a list of plugins to load, it should just pick that.

Revision history for this message
Doug McMahon (mc3man) wrote :

Probably not the place to mention other than atm not sure how you'll implement this so -
It appears here if using a .ini that while most of the default plugins suitable to Fallback work the vpswitcher seems lacking
Only has 'general' options & there doesn't seem to be any way to switch viewports except thru expo
(& super+s doesn't work in fallback

Revision history for this message
Jason Conti (jconti) wrote :

Hi Sam,

Yes the COMPIZ_CONFIG_PROFILE environment variable is still used, but if unset or the empty string compiz first checks GNOME_DESKTOP_SESSION_ID, which in quantal is currently set to 'this-is-deprecated'. If it is set, then it returns the section name as "gnome_session". Doesn't really matter though, it will default to Default.ini even if the section is missing, but as far as I can tell there isn't any code that reads an ini from /etc/compizconfig/ (and just dropping a Default.ini file in there and loading the gnome classic session only loads the "core" and "ccp" plugins).

I took a look at the natty package to see how it was handled there, and the code seems basically the same, so I don't think it would load an ini from /etc/compizconfig/ there either. The only difference I noticed was that /etc/compizconfig/config in natty looks like:

[kde4_session]
backend = kconfig4
integration = true
plugin_list_autosort = true

[kde_session]
backend = kconfig
integration = true
plugin_list_autosort = true

[gnome_session]
backend = gconf
integration = true
plugin_list_autosort = true

[general]
backend = ini
plugin_list_autosort = true

[general_ubuntu]
backend = gconf
integration = true
plugin_list_autosort = true
profile = unity

We only have the [general] and [general_ubuntu] sections in quantal (with the ubuntu section using gsettings now instead of gconf). We can't use gconf for gnome_session since that backend was dropped in the transition. I'd like to use gsettings but I can't figure out how to make it work since we would need to set defaults for the same key with different paths (or run a script when the user logs in checking if the key is set and then setting it, I don't really like that idea).

Jeremy Bícha (jbicha)
tags: added: rls-mgr-q-incoming
Changed in compiz (Ubuntu Quantal):
milestone: ubuntu-12.10-beta-2 → quantal-updates
tags: removed: rls-mgr-q-incoming
Changed in gnome-session (Ubuntu Quantal):
status: Confirmed → Invalid
Changed in compiz (Ubuntu Quantal):
assignee: nobody → Didier Roche (didrocks)
status: Confirmed → In Progress
description: updated
Revision history for this message
Adam Conrad (adconrad) wrote : Please test proposed package

Hello Doug, or anyone else affected,

Accepted compiz into quantal-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/compiz/1:0.9.8.4-0ubuntu3 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please change the bug tag from verification-needed to verification-done. If it does not, change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in compiz (Ubuntu Quantal):
status: In Progress → Fix Committed
tags: added: verification-needed
Revision history for this message
Doug McMahon (mc3man) wrote :

Tested on an existing Quantal install with a new user account. Logging into Classic went fine with window deco & other default plugins loaded & working as expected.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Alan Pope 🍺🐧🐱 🦄 (popey) wrote :

This is fixed in compiz 1:0.9.8.4-0ubuntu3. Tested here fine.

Revision history for this message
Łukasz Zemczak (sil2100) wrote :

Tested on an existing quantal system. Before, on the previous compiz, I had no window decorations in Gnome Classic. Using the new version in quantal-proposed the problem is fixed - I have a working Gnome Classic desktop. The default profile is migrated correctly with the default plugin list - works awesomely!

Revision history for this message
Adam Conrad (adconrad) wrote : Update Released

The verification of this Stable Release Update has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regresssions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package compiz - 1:0.9.8.4-0ubuntu3

---------------
compiz (1:0.9.8.4-0ubuntu3) quantal-proposed; urgency=low

  * debian/config, debian/compiz-gnome.migrations,
    debian/00_remove_unityshell_in_gnome_session.py:
    - add the default gnome_session profile to use gsettings as the migrated
      user are on this profile (LP: #1036752). The existing migration scripts
      will upgrade the user config.
    - For new users and users already on quantal before this fix, remove the
      local config file created if you logged in the classic session hiding the
      system one. Also, as the global default is including the unity* plugins,
      remove them from the list of plugins the first time you log in.
 -- Didier Roche <email address hidden> Wed, 17 Oct 2012 12:19:08 +0200

Changed in compiz (Ubuntu Quantal):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.