Unity doesn't load, no Launcher, no Dash appears
When I login, nothing happens.
I am presented with my desktop wallpaper.
No Dash, no Launcher, nothing.
This answer applies to versions of Ubuntu running Compiz.
This answer assumes Unity is being run through Compiz. If you don't have compiz installed (ex: on non-Unity versions of Ubuntu, such as the Gnome-based Ubuntu 18.04 and later) this answer doesn't apply to you.
You just need to turn the Unity plugin back on. The problem is this is a pain in the bottom because you've now got no graphical method to do this. So:
Try to open a terminal with Ctrl+Alt+T.
This may not work but you can try right clicking on the desktop and selecting "Open terminal here." Otherwise, you may need to change to a "hard" terminal by pressing Ctrl+Alt+F1 and log in.-
Install
compizconfig-settings-manager
by runningsudo apt-get install compizconfig-settings-manager
-
Then run it with this:
DISPLAY=:0 ccsm &
The first part tells the terminal which display you want it to load on (otherwise it won't have a clue).
If you switched to a TTY in step 1, switch back to the graphical server by pressing Ctrl+Alt+F7 (or Ctrl+Alt+F8 sometimes).
There there should be a CompizConfig Settings Manager waiting for you.-
Find the Unity plugin. Enable it (detailed instructions just below). You will be asked "Ubuntu Unity Plugin requires the plugin OpenGL. Enable Ubuntu Unity Plugin / Enable OpenGL"
- 1) To enable the Unity Plugin: Click "Desktop" (left side) --> Ubuntu Unity Plugin. You can also type "unity plugin" into the "Filter" search box. Screenshot:
- From here, click the checkbox for "Enable Ubuntu Unity Plugin":
- 2) To enable OpenGL: click "General" (left side) --> then check the box for "OpenGL", as shown below. You can also type "opengl" into the "Filter" search box to bring it up.
Everything should spring into life but if it doesn't, you might have to restart. You can do that by going back to the terminal and running
sudo reboot
.
A solution good for me (has solved the same problem):
in a terminal:
export DISPLAY=:0
sudo dconf reset -f /org/compiz/
and then
setsid unity
In 13.04 and 14.04:
unity --replace
is deprecated. Instead, use the following:
dconf reset -f /org/compiz/
unity --reset-icons &disown
Reboot if it doesn't work right away.
For 12.10 and below:
Press Ctrl+Alt+T for a terminal and run ccsm
, then re-enable your 'Unity' plugin.
You also may then need to run a unity --replace
.
It is a good idea to check your graphics driver is configured to use hardware acceleration and it is configured to use OpenGL. Try searching Ask Ubuntu and Ubuntu Forums for information specific to your GPUs and Ubuntu flavour. For hybrid graphics users see the last section "Hybrid Graphics" below.
You might want to run the compizconfig-settings-manager package and make sure that the Unity plugin is checked (see What are some of the issues with CCSM and why would I want to avoid it?).
For 12.04 And Newer
Change to
tty1
by pressing Ctrl+Alt+F1 and log in.-
Install
compizconfig-settings-manager
by runningsudo apt-get install compizconfig-settings-manager
-
Then run it by doing this:
export DISPLAY=:0 ccsm
The first part tells the terminal which display you want it to load on (otherwise it won't have a clue).
Press Ctrl+Alt+F7 (or Ctrl+Alt+F8 sometimes) to get back to the graphical display where there should be a CompizConfig Settings Manager screen sitting there.
Find the Unity plugin. Enable it.
Everything should spring into life but if it doesn't, you might have to restart. You can do that by going back to
tty1
and runningsudo reboot
.
If unity still does not load try:
dconf reset -f /org/compiz/
unity --reset-icons &disown
Reboot if it doesn't work right away.
For 11.10 And Older
If you hope into a TTY (Ctrl+Alt+F1 through F6) and run:
DISPLAY=:0 unity --replace
It will reset Unity back on TTY 7 (Ctrl+Alt++F7).
You can also try just:
DISPLAY=:0 unity
But that won't work if a windows manager is already running on display 0 (it will give you an error, just use unity --replace
in that case).
If Unity absolutely refuses to restart try this:
Install gnome-panel
:
sudo apt-get install gnome-panel
Than run it on display 0:
DISPLAY=:0 gnome-panel
You should then have Gnome 2 style panels on your desktop, which you can use to logout.
Hybrid Graphics
Some very useful information and further reading for hybrid graphics users can be found here.
Once GPUs are configured appropriately for 3D acceleration and OpenGL you can:
-
Install Nvidia drivers from https://edge.launchpad.net/~xorg-edgers/+archive/ppa:
sudo apt-add repository ppa:xorg-edgers/ppa
or:
I would really prefer the stable PPA,
but it does not seem to have packages for 13.04 yet. Update: these seem to be available as of Sep. 25. I would install this stable PPA - you can try but I have not tested it.The Ubuntu-supplied Nvidia drivers were already installed and I simply installed from this PPA by adding it and doing a package update using
update-manager
.sudo apt-add repository ppa:ubuntu-x-swat/x-updates
-
Install Bumblebee from https://launchpad.net/~bumblebee/+archive/stable
UPDATE: As of Oct. 6,
ppa:xorg-edgers/ppa
seems to contain bumblebee as well. So if you install from this PPA, you might want to try skipping the addition of the Bumblebee PPA and installing it from here instead.If you chose the stable PPA in step 1, install the Bumblebee stable PPA as follows:
sudo apt-add-repository ppa:bumblebee/stable
-
UPDATE: After adding the PPA(s), update your package lists:
sudo apt-get update
If you already had nvidia drivers installed from Ubuntu's standard repositories, simply upgrade to get the new version from the repository chosen in step 1:
sudo apt-get upgrade sudo apt-get install bumblebee
-
Perform the following commands to 'repair' Unity (from brandon-bertelsen's answer to Unity doesn't load, no Launcher, no Dash appears):
dconf reset -f /org/compiz/ unity --reset-icons & disown