Compiz
A recent batch of Unity and Compiz updates landed on Ubuntu 16.04, and it broke my fractional scaling.
Someone already filed a bug, but nobody seems to give a shit.
So what do you do? Roll back, obviously. Except rolling back Unity isn’t that simple — too many dependencies, plus core components like Compiz. If you’re going to roll back, you might as well go big.
If you use Firefox in fullscreen as much as I do, you’ve probably hit the same problem I have.
What happens is this: while I’m browsing fullscreen in Firefox, I click some other popup window and it opens underneath Firefox instead of coming to the front. WiFi status, uploading images to Weibo, all sorts of stuff.
And it only happens under Unity. Annoying as hell.
Well, there’s a fix now.
UPDATE: the compiz patch PPA has been updated to the latest version, so pinning the compiz version is no longer necessary.
I wrote up a method for fixing this bug between Compiz and Nvidia’s proprietary driver. The conclusion was: use the PPA. Then recently Compiz went and updated with a vengeance, the PPA build got overwritten, and lo and behold, the bug wasn’t fixed — the screen started flickering again, the hell.
First thing I thought of was rolling back to the PPA version with Synaptic, but compiz has too many dependencies, it pulls in unity directly, and the rollback dialog won’t let you multi-select. So I just went to the patched PPA, downloaded the debs, and downgraded everything in one go with sudo dpkg -i *.deb.
Opened Synaptic again and pinned all the compiz versions.
On Ubuntu 14.04, if you’re on an Nvidia card, the 331 driver in the repos — or anything older — won’t give you trouble. But if you install 340 or above, whether by hand or through a PPA, parts of the system start flickering: buttons, lists, that sort of thing.
Plenty of users have confirmed this is a Compiz bug. There’s a long discussion here, and the eventual fix is to patch it.
No telling when the Compiz patch itself will land, but you can try this PPA:
ppa:townsend/compiz-nvidia-refresh-test
After testing, the problem was gone with the latest 343 driver. Card is a GTX770 4G.