Compiz issues in 20.04

OK, got my widow decoration and controls back, so I can debug some.

UM 18.04 included the file /etc/compizconfig/mate.ini in compiz-mate, but that file is missing from compiz-mate in 20.04.

I presume that file was in compiz-mate in UM 19.10, but I don't have a copy of 19.10 to confirm. Can anyone with 19.10 see if the file was part of compiz-mate?

Without this file it is impossible to select "mate" in CCSM > Preferences > Profile, which was the default, already present, setting in 18.04. (It includes amoung other things the MATE logos for the cube, but also more important things like crash handlers, reverting to Marco, etc.)

Note there must be other files also missing because copying it over to 20.04 manually after the fact doesn't help.

1 Like

I see that 19.10 has mate.ini file, while 20.04 LTS do not have it.

I tried to manually install compiz-mate package from 19.10 on 20.04 LTS but with no luck. Window decorations are still missed. Will try to dig deeper. Thanks for the pointer!

Bug report for that was already posted here: Ubuntu MATE 20.04 Pre-release Testing

1 Like

Windows decoration is a Compiz option: CCSM > Effects > Window Decoration. Enable it. It's default settings should work, if not set Command field to either /usr/bin/gtk-window-decorator or gtk-window-decorator - either should work.

Comment #4 on Launchpad #1864218 explains why everything is disabled. Looks like the Compiz folks want configuration files to be provided by the upstream projects:

So @Wimpy would need to bundle mate.ini into a package. Interestingly, he hadn't responded to the review :point_up:

I had a stab at fixing that - no luck. Will have another look at that again - it bothers me too!

Edit: Theme fixed.

4 Likes

@lah7 Thanks for that link.

OK, I have it all working now (with the exception of the cube's top & bottom logos). Details here in case others want to try now, to give guidance (if needed) on a possible fix, and/or as a workaround in 20.04 Release in the event that it is not addressed by then.

Using lah7's link to the diff list as a guide you need to:

  • Create/copy 65compiz_profile-on-session into /etc/X11/Xsession.d

  • Append those 8 lines shown to /etc/compizconfig/config

  • Create/copy mate.ini to /etc/compizconfig

  • And the 2 files Ubuntu-Mate-Dark-no-logo.jpg and unbuntu-mate-desktop-circle_of_mates_dark.png to /usr/share/backgrounds/ubuntu-mate-common (sourced from any earlier UM release)

Then reboot. But be warned that you will lose any config changes that you have made to CCSM since installing 20.04 (by overwriting them with Wimpy's default).

Regarding how to release, I wonder if these files can't just be part of the UM 20.04 release itself. They aren't very big and they will have no effect if Compiz is not installed or enabled. Possibly the X11 session file (65compiz... ) is inelegant. I don't know if MATE Tweak restarts X11 when changing WM, if it does - or could - perhaps MATE Tweak could install it only when needed/switching to Compiz?

4 Likes

Guess it's high time for me to get back on the horse and see if Scott's 0.8 branch per my instructions work on Focal.

Ubuntu MATE bug report submitted.

My thanks to @Bill_Mi, @Norbert_X and particularly @lah7 for their help.

2 Likes

That could be ubuntu-mate-settings. I think that package could be configured to say "Yes, I replace compiz-mate!"

I'm confused over the existence of compiz-mate now we know why it's been stripped down. The package description is misleading:

This package contains files needed to integrate compiz with the MATE desktop
environment.

As we can see from 19.10 - there is no overwrite needs, so we simply need to backport/adapt 19.10 packages to 20.04 LTS. On local machine it ends with success.

Actually I think there are with the splitting of /etc/compizconfig/config (so I'm guessing that is the reason for the debian/control "breaks" question in the merge post). Ie. Compiz will always create it's own, now much smaller, /etc/compizconfig/config, so that file is going to exist already on all Compiz installs, so we would need to overwrite it or append to it I think.

Perhaps need to copy whatever Unity and Flashback Gnome have done? As merge post indicates that they have already addressed.

And possibly breaks in /control may be needed to prevent independent compiz upgrades by MATE users?

@Wimpy was live streaming yesterday - near the end @franksmcb sent a link to the merge. Martin was quite surprised this had actually happened, says he'll have a think:

(near the end - 2:23:37)

1 Like

Another recent live stream from @Wimpy. No fix yet, it's going to need a little more work/research, especially to ensure no breakage of users coming from 18.04 and 19.10.

(work on Compiz starts about half way through)

2 Likes

Can anyone please test if the D-Bus plugin works again in 20.04?
It doesn't work for me in 19.04.

But be careful, when being enabled, it let compiz enter an endless crash/restart loop for me, where it is hard to escape from! :smiley:

FYI, there has been an update to the bug report Bug #1868443 from muktupavels (author of the original Merge post), and it looks as if there may be still more reorganisation changes to/for upstream projects (like MATE)!

Seems rather late IMHO for such activity with Beta just 4 days away. Rational move might be to revert to as-for-19.10 for this 20.04 LTS, and take the time to do everything right for 20.10?

But either way will stand by for further alpha, beta or ??? testing as needed.

1 Like

Going to update my guide, but Compiz 0.8 installation pre-requisites needs to be modified to use either python-dev-is-python2 or python-dev-is-python3 for use in 20.04.

As we are started to talk here about workarounds, below I propose mine.
It reverts the patch (https://code.launchpad.net/~muktupavels/compiz/+git/compiz/+merge/374783/+index?ss=1).
It copies 2 files from Ubuntu MATE 19.10 packages and writes 1 new to 20.04 LTS on file level.

The script is below:

# install Compiz
sudo apt install -y compiz compiz-core compiz-mate compiz-plugins compiz-plugins-default

# prepare download directory
mkdir -p ~/Downloads/mate-20-04-fix
cd ~/Downloads/mate-20-04-fix

# fill /etc/compizconfig/mate.conf manually
cat <<EOF | sudo tee /etc/compizconfig/mate.conf
[general_mate]
backend = gsettings
integration = false
plugin_list_autosort = true
profile = mate
EOF

# get /etc/X11/Xsession.d/65compiz_profile-on-session from compiz-gnome
wget http://archive.ubuntu.com/ubuntu/pool/universe/c/compiz/compiz-gnome_0.9.14.0+19.10.20190918-0ubuntu1_amd64.deb
dpkg -x compiz-gnome_0.9.14.0+19.10.20190918-0ubuntu1_amd64.deb compiz-gnome/
sudo cp -v compiz-gnome/etc/X11/Xsession.d/65compiz_profile-on-session /etc/X11/Xsession.d/65compiz_profile-on-session

# get /etc/compizconfig/mate.ini from compiz-mate
wget http://archive.ubuntu.com/ubuntu/pool/universe/c/compiz/compiz-mate_0.9.14.0+19.10.20190918-0ubuntu1_amd64.deb
dpkg -x compiz-mate_0.9.14.0+19.10.20190918-0ubuntu1_amd64.deb compiz-mate/
sudo cp -v compiz-mate/etc/compizconfig/mate.ini /etc/compizconfig/mate.ini

Then reboot, launch MATE Tweak and select Compiz as Window manager.

I have tested it on my Ubuntu MATE 20.04 LTS test machines.

3 Likes

Thanks for the research, a fix is on the way:

6 Likes

I can confirm that a complete uninstall of compiz, followed by a re-install per the 19.10 instructions, now results in a fully working compiz system - consistant with 18.04. Tested on real hardware (Core2Duo) on daily build.

Thanks for the efforts @Wimpy!!

2 Likes