12

After doing a fresh install of Ubuntu 16.04, I log in, but the unity desktop environment does not load. All I get is the desktop background, and occasionally an information window about an error with compiz shows up.

I had this before also with the final Beta, and could not find a solution.

When I try to restart unity from the Ctrl + Alt + F1 console, with:

DISPLAY=:0 unity

I get:

compiz (core) - Info: Loading plugin: core
... many more instructions here
compiz (core) - Info: Unity is not supported by your hardware. Enabling software rendering instead (slow). 
... many more instructions again
compiz (core) - Info: Starting plugin: switcher
Illegal instruction (core dumped)

I have the Nvidia gtx980 graphics card, and according to Ubuntu, the (open-source) Nvidia driver has been installed correctly, so, imo, Unity should be fully supported, but for some reason when Ubuntu tries to start Unity, it fails with the only information being Illegal instruction.

Please advise on any way I can fix this or debug it

Illidanek
  • 331
  • You should review "X" configs – Valeriy Solovyov Apr 21 '16 at 16:51
  • How exactly and where? – Illidanek Apr 21 '16 at 16:53
  • 1
    That sounds like Compiz/Unity needs a graphics feature that is not or incorrectly supported by your graphics card or the driver. Did you try installing the closed source driver? – JanC Apr 21 '16 at 16:57
  • Yes and when I installed it, through the traditional "Additional Drivers" window, Ubuntu would no longer boot, it would get stuck with big icons on the startup loading screen, suggesting that the graphics driver is not working. I saw that in some cases you have to run something after installing the nvidia proprietary drivers, if so, what exactly should I do? – Illidanek Apr 21 '16 at 17:00
  • @JanC Ok so I have actually overcome this, I have managed to install the closed source Nvidia driver, and now, when starting unity I get .... compiz (core) - Info: Unity is fully supported by your hardware. then further down: Compiz (opengl) - Info: GLX_EXT_buffer_age is supported Segmentation fault (core dumped)

    Any idea why it's now failing at the openGL stage?

    – Illidanek Apr 21 '16 at 17:54
  • I have no idea, but most likely you want to report a bug at this point... – JanC Apr 21 '16 at 18:19
  • 1
    Fix #5 on http://askubuntu.com/a/481620/281857 worked for me too! Thanks! –  Apr 22 '16 at 00:51

7 Answers7

11

I solved the problem following these steps:

  1. Activated the proprietary Nvidia graphics driver instead of the nouveau open-source one.
  2. Unfortunately this made my Ubuntu fail to boot, so I had to follow these steps to get it to work: https://askubuntu.com/a/391608/281857
  3. At this point Ubuntu was booting but there was still no launcher, top bar, etc. However I could right-click on the desktop to open a Terminal, and ran Fix 5 detailed by this answer: https://askubuntu.com/a/481620/281857
Illidanek
  • 331
  • have not been able to find a fix and the fixes in the post do not help. any other pointers? im running it in virtual box – Manny265 May 07 '16 at 01:12
  • @Manny264 I recommend starting your own question. You can there explain what exactly is the problem and what you have tried so far. – Illidanek May 08 '16 at 19:53
  • didnt realise this was so specific to nvdia gx card. I dd find a solution on this question: http://askubuntu.com/questions/17381/unity-doesnt-load-no-launcher-no-dash-appears – Manny265 May 08 '16 at 21:53
6

Usually the answer to this is by resetting dconf entries for unity:

dconf reset -f /org/compiz/
setsid compiz

This seems to be due to bug #1569357 on launchpad. Usually they also give a few remediations for the bug in the launchpad entry, and it only seems to happen with sddm (the simple desktop display manager) - it does not happen with lightdm.

Using dconf reset -f /org/compiz/ did not work with me (sudo or no sudo). setsid compiz also didn't.

I also found that if you have logged in and have no launched and no panel, a quick way to make them start if you have a command line is:

nohup /usr/bin/unity > /dev/null 2>&1 &
nohup /usr/lib/x86_64-linux-gnu/unity/unity-panel-service > /dev/null 2>&1 &

This is just for the session you are in though. It won't make the launched and panel start the next time you log in.

Patola
  • 86
3

Use these command to fix the issue :

sudo dpkg --configure -a  
sudo apt-get update  
sudo apt-get upgrade -y  

And reboot the machine..You will get desktop back

Anwar
  • 76,649
Vaneet
  • 41
2

Unfortunately I do not have the reputation to comment, but Patola's solution worked for me with one slight change:

dconf reset -f /org/compiz/
setsid compiz

should be

dconf reset -f /org/compiz/
setsid compiz --replace
0

I had the same problem, and this worked for me:

sudo apt-get install --reinstall compiz
Hypercube
  • 676
0

I faced similar issue try getting hold of unity console once system boots using: Ctrl + Alt + F1.

  1. Log in with admin credentials.
  2. List display drivers using :

    ubuntu-drivers devices
    
  3. Install nvidia driver:

    sudo apt-get install sudo apt-get install nvidia-361
    

    or

     sudo apt-get install nvidia-364
    
  4. Reboot system:

    sudo reboot now
    
  5. To resume graphical display:

    Ctrl + Alt + F7

Worked for me. All the best

Anwar
  • 76,649
0
setsid compiz --replace

was the fix and worked in my case - unity fixed! Thanks @Jonathan Richards!

andrew.46
  • 38,003
  • 27
  • 156
  • 232