Unity - Ubuntu: Questions and Answers (2014)

Ubuntu: Questions and Answers (2014)

Unity

Skip to questions, Wiki by user jorge-castro

alt text

Unity is the default interface for Ubuntu on PCs and TVs. It is the result of design and development work lead by Canonical and the Ubuntu community. You can participate in Unity design and engineering and the parts of Unity are all published under open source licenses.

· Homepage

· Wiki Page

· Launchpad Project - Workspace for bug reports and source code.

Design and discussion happens on the unity-design mailing list (formerly called Ayatana). Discussion about implementation details and code happens on the unity-dev mailing list.

Based on the Compiz window manager, Unity has been Ubuntu's default interface since 11.04. An early version of Unity was also used as the interface of Ubuntu 10.10 Netbook Edition. Since Ubuntu 11.10, a 2D version using the Metacity window manager is available as the fallback for computers not powerful enough to run Compiz.

This tag is for questions relating to Unity in general.

If you have a question about a specific part of Unity and aren't sure what it is called, please see What's the right terminology for Unity's UI elements?


Questions

Q: Is it possible to make indicator-appmenu ignore a specific application?

Tags: unity (Next Q), indicator (Next Q)

The new indicator-appmenu in Maverick breaks the LyX menu: the application menu is not shown either in the application window nor in the applet. (See Bug report.)

As a workaround while the bug is fixed, is there a way to make an exception for the applet, so that LyX would be ignored and the applet could still be used for everything else? Something akin to Maximus exceptions.

Tags: unity (Next Q), indicator (Next Q)

User: topyli


Answer by htorque

Run an application

· To start an application (eg., gcalctool) with the menu within the application rather than in the panel, run the following in a terminal:

· UBUNTU_MENUPROXY= gcalctool

To start the application with the menu enabled in the application and the panel, run:

APPMENU_DISPLAY_BOTH=1 gcalctool

· Instead of using the terminal, you can use the Alt + F2 shortcut to start a run dialog, in which you would enter:

· env UBUNTU_MENUPROXY= gcalctool

or

env UBUNTU_DISPLAY_BOTH=1 gcalctool

Edit application launchers in Ubuntu 10.10

To make it easier to always launch your application with the same appmenu settings, you can edit application launchers in the menu, the gnome-panel, and on the desktop:

· Gnome-panel and desktop: simply right-click the launcher, select "Properties" and prepend env UBUNTU_MENUPROXY= or env UBUNTU_DISPLAY_BOTH=1 to the value in the "Command" field:

· Menu: right-click the menu and select "Edit Menus". In the new window, find the launcher you want to edit and click the "Properties" button on the right. Again, simply prepend the variables like above (don't forget the 'env'), click on "Close" two times and you should be done.

Edit launchers in Compiz-based Unity in Ubuntu 11.04

· Dirty method: Change the launcher's .desktop file in the /usr/share/applications directory:

o For example, run

o gksudo gedit /usr/share/applications/gcalctool.desktop

o Now edit the Exec=-line to contain either of the two variables from above, eg.:

o Exec=env UBUNTU_MENUPROXY= gcalctool

o Save the file, and launching gcalctool from Unity's launcher bar should run it with the menu within the application.

Disadvantages of this method: it will change the launcher for all users and will probably be reverted by system updates.

· Better method:

o If already added, unpin the launcher from the launcher bar.

o Copy the related .desktop file to your home directory:

o cp /usr/share/applications/gcalctool.desktop ~/.local/share/applications

o Like in the method above, edit the Exec=-line to contain either of the two variables:

o Exec=env UBUNTU_MENUPROXY= gcalctool

o Make the file executable:

o chmod +x ~/.local/share/applications/gcalctools.desktop

o Start Nautilus in that folder and double click the .desktop file (which should just read "Calculator" in the example):

o nautilus ~/.local/share/applications

o Now you should see the launcher icon in the launcher bar - pin it via the quicklist and you are done.


Note: To make above work with KDE applications, replace UBUNTU_MENUPROXY= with QT_X11_NO_NATIVE_MENUBAR=1.


Tags: unity (Next Q), indicator (Next Q)


Q: Why is Ubuntu switching to Unity?

Tags: unity (Next Q), gnome (Next Q)

I understand from Jono Bacon's blog that Ubuntu will be switching to Unity as the default desktop in the upcoming 11.04.

What's not clear is "Why?".

Could someone explain the benefits of Unity over GNOME 2.x or indeed GNOME 3.x so that people can be informed about this decision?

Tags: unity (Next Q), gnome (Next Q)

User: popey


Answer by 8128

This Arstechnica article based around an interview with Mark Shuttleworth (the founder of Ubuntu and Canonical) gives some reasons for going forward with Unity, as opposed to using the GNOME Shell.

The GNOME Shell is the major new component of GNOME 3, that many people are incorrectly referring to as simply 'GNOME 3'. Remember that future Ubuntu versions will still be based on GNOME 3 - the underlying infrastructure, applications, etc will not change - they just won't use the GNOME Shell by default.

· Ubuntu would like to embrace different ideas to other parts of the GNOME family - specific examples mentioned are Mac OS X style global menus, and heavier 'Zeitgeist' integration.

· There are concerns about hardware support with the Mutter technology GNOME Shell uses. Whilst Unity has up to now also used Mutter, Unity has been ported to Compiz, which, through its inclusion in default Ubuntu for over three years, has proved itself to have excellent hardware support.

· Recent Ubuntu design work, such as Application Indicators and NotifyOSD are likely to be incompatible with GNOME Shell, and we want to keep these improvements, not move backwards!

· Other distributions may have different user bases and needs. Ubuntu has a lot of home users, whereas many other distributions have more commercial users in workplaces. Canonical employs a lot of professional design experts and they may feel they can do a better job than, or at least take a different approach to, the existing GNOME Shell.


Answer by pableu

This article at Arstechnica can maybe shed some light on this.

I also asked Shuttleworth why Canonical is building its own shell rather than customizing the GNOME Shell. He says that Canonical made an effort to participate in the GNOME Shell design process and found that Ubuntu's vision for the future of desktop interfaces was fundamentally different from that of the upstream GNOME Shell developers.

So basically, the Ubuntu Guys think that their vision of how a desktop interface should be is too different from vision that GNOME has with GNOME Shell. So they don't try to adapt GNOME Shell to suit their needs but instead they develop something entirely new, Unity.


Tags: unity (Next Q), gnome (Next Q)


Q: How can I configure Unity's launcher auto-hide behavior?

Tags: unity (Next Q)

This has been an issue for me with Unity since its release.
I'd like to make the the launcher auto-hide. Especially on Netbooks, where screens are small, the launcher is quite wide, making it difficult to properly display some websites and other apps. How can I configure the auto-hide behavior?

Tags: unity (Next Q)

User: wilsonliam


Answer by jorge-castro

11.04 & 11.10

The Unity launcher has an auto-hide option that is enabled by default. Lee's answer has the details. It has a few options:

· Never - The launcher will never hide.

· Autohide - The launcher will hide automatically based on time.

· Dodge Windows - The launcher will hide when a window would overlay it.

· Dodge Active Window - The launcher will hide only when an active window would overlay it.

This question has information on how to configure the different modes of Unity:

· How can I configure Unity?


Answer by lee-jarratt

11.04 & 11.10

You can disable the autohide feature of the Unity launcher by following these simple steps:

WARNING: CCSM is an advanced tool and using it may break your Unity. To avoid this, follow the steps exactly as mentioned here

· Install the CompizConfig Settings Manager package via the Ubuntu Software Centre

Installing the Compiz settings manager

· Once installed, open the settings manager and scroll down until you see the 'Ubuntu Unity Plugin' which is located in the Desktop category.

The Compiz settings manager

· Set 'Hide Launcher' to 'Never'.

Changing the Launcher autohide settings

· The settings will have automatically applied and the launcher will now be locked in place.


Answer by fossfreedom

12.04 and later - Unity

The Unity Launcher auto-hide option is now a System Setting - Appearance option: By default, auto-hide is switched off - in previous versions of Ubuntu these behaviour was reverse.

enter image description here

From the Behaviour tab you have the option to switch-on autohiding of the Launcher and using the slide-bar to control the responsiveness to the reveal of the launcher.

enter image description here

You can use the Reveal Location radio-buttons to indicate where you need to position your mouse to reveal the launcher.

The option to switch on autohiding and controlling the hotspot location (left edge/top left corner) is on the Behaviour tab.

Unlike previous versions of Ubuntu, the dodge windows option has been removed due to User testing that showed that this form of autohiding caused confusion.

12.04 & Unity-2D

The Unity-2D Launcher delay is now a System Setting - Appearance option:

enter image description here

From the Behaviour tab you have the option to switch-on autohiding of the Launcher and by clicking the Low/High buttons to control the responsiveness to the reveal of the launcher.

enter image description here

You can use the Reveal Location radio-buttons to indicate where you need to position your mouse to reveal the launcher.

By default the auto-hide nature is toggled off meaning the launcher is permanently visible.


Linked Question:

· Shortcut to change Launcher 'Hide' setting


Tags: unity (Next Q)


Q: What's the right terminology for Unity's UI elements?

Tags: unity (Next Q)

I've sent a few mails to the Ayatana mailing list regarding some UI suggestions for Unity, but I'm afraid I keep confusing the right terms for the UI element, so I would like to have some clarification.

Answer Index:

· Ubuntu 12.10, 12.04 LTS and 11.10

· Ubuntu 11.04

Tags: unity (Next Q)

User: bou


Answer by mgunes

Is the bar at the top called "panel"?

Yes, the top bar is called the "unity-panel" or simply "panel", the container for indicators and global menus.

Does the Ubuntu logo at the top left corner have a name?

It's called the "home button" though it's jokingly referred to as the BFB by developers, for "Big Freaking Button"

Is the left sidebar called "dock"?

It's called the Launcher.

Are the coloured tiles with app icons on them called "launchers"?

"Launcher icons" or "Launcher items".

Is the purple tile called "workspace switcher"?

Yes.

Are the fullscreen things that appear when you click the Ubuntu logo, the Places tile or the Apps tile, called "dash"? Do they all have the same name?

Right; "Dash" is the component name for the overlay that's used for Applications and Places. In non-technical contexts it seems to be used as the Applications Dash and the Places Dash

Other Terms

· The menu is referred to as the Application Menu, not global menu. This is to distinguish it from the other global menu project.

There seems to be no term decided upon for items kept on the launcher via the "Keep in launcher" function. The relevant dbusmenu functionality is named "pinning_item" in the code; "sticky" doesn't appear anywhere in the wiki and bug reports, and "Favorites" is used in the architecture document once and somewhat ambiguously to refer to what seems to be the "pinned" application items. So "Pinned" and "Favorites" seem both fine for now.

For further information, see the Unity Architecture document, and /Unity/Lenses on the wiki.


Answer by stefano-palazzo

Ubuntu 11.04

alt textenter image description hereenter image description here

1. Launcher

2. Launcher Items

3. Workspace Switcher

Menu Bar:

4. Window Title

5. Application Menus

6. Status Menus (Indicators)

1. Network Menu

2. Sound Menu

3. Messaging Menu

4. Clock

5. Me Menu

6. Session Menu

And others

This region also contains the Notification Area, disabled by default.

7. Window Decoration

8. Window Buttons

9. Toolbar

10.Status Bar

11.Desktop

12.Ubuntu Button (Home Button or BFB, "Big Freakin' Button")

13.Dash

14.Run Command (Alt+F2)


Answer by alaukik

Ubuntu from 11.10 up

1.

o Windows Title

2.

o Application Menu

3.

o Dash icon

4.

o Launcher icons

5.

o Workspace switcher

6.

o Launcher

7.

o Trash

8.

o Indicators

enter image description here

enter image description here


Tags: unity (Next Q)


Q: How do I enable or disable the global application menu?

Tags: unity (Next Q)

I'm fairly excited for Unity, as it looks like a promising new direction for Ubuntu. However, I do have a concern - will it be possible to use Unity without the global menu?

I have my window manager set to focus-follows-mouse/sloppy focus, and find the productivity gains to be immense. Sloppy focus is incompatible, however, with global menus, as it is possible for the focus to change while you move from window to menu.

Will Unity support an option to use window menus while still using Unity?

Tags: unity (Next Q)

User: michael-ekstrand


Answer by njpatel

11.04 - 13.10

Yes, the Desktop version of Unity will use the global menu by default.

· To disable the global menu remove the indicator-appmenu Install indicator-appmenupackage, then log out and back in.

Unity will continue to run without it and your menus will appear inside the application windows as normal. You can also tell the appmenu to ignore specific applications if you're having a problematic app.

The command line way to remove the package is:

sudo apt-get remove indicator-appmenu

Removing the appmenu will break the HUD feature


Answer by håkon-a.-hjortland

11.04 - 13.10 - How to disable the global menu (appmenu / application menu)

For current user only, all applications

Add this to ~/.gnomerc and log out of the desktop and in again:

STARTUP="env UBUNTU_MENUPROXY= $STARTUP"

For current user only, only applications launched from the shell

Add this to ~/.bashrc and restart the shell:

UBUNTU_MENUPROXY=

For current user only, only for specific applications launched from the shell

Add lines like this to ~/.bashrc and restart the shell:

alias gvim='UBUNTU_MENUPROXY= gvim'

Based on http://askubuntu.com/a/132581/32651.

For current user only, only for specific application launchers

See http://askubuntu.com/a/6802/32651.

For all users, all applications (fix it in /etc)

Create config file with fix (note that the parentheses are part of the command):

(umask 022; echo UBUNTU_MENUPROXY= | sudo tee /etc/X11/Xsession.d/81ubuntumenuproxy)

After this, log out of the desktop and in again.

To remove the fix:

sudo rm /etc/X11/Xsession.d/81ubuntumenuproxy

Based on http://www.webupd8.org/2011/03/disable-appmenu-global-menu-in-ubuntu.html.

For all users, all applications (uninstall packages)

Ubuntu 11.04 and 11.10:

sudo apt-get remove appmenu-gtk indicator-applet-appmenu indicator-appmenu

Ubuntu 12.04:

sudo apt-get remove appmenu-gtk appmenu-gtk3 appmenu-qt indicator-appmenu

After this, log out of the desktop and in again.

To undo, just install the packages again: sudo apt-get install [...]

From http://www.webupd8.org/2011/03/disable-appmenu-global-menu-in-ubuntu.html.

Notes 1

Just doing

sudo apt-get remove indicator-appmenu

will still give problems with gvim and image viewers etc. since UBUNTU_MENUPROXY will still be set to 'libappmenu.so' by the appmenu-gtk and appmenu-gtk3 packages.

Notes 2

The default value is UBUNTU_MENUPROXY='libappmenu.so'. The UBUNTU_MENUPROXY= statement clears the variable. Note that export [...] is not required when changing an already existing variable.

See also

· Gvim might spit out this warning 25 seconds after being started:
** (gvim:20320): WARNING **: Unable to create Ubuntu Menu Proxy: Timeout was reached
To fix this, either disable global menu, at least for gvim, or fix gvim.

· Delayed in-window menu creation is a problem in image viewers etc., for example eog.
To fix this, disable the global menu properly, at least for those applications.

· Get both global menu and in-window menu:
APPMENU_DISPLAY_BOTH=1
See http://askubuntu.com/a/6802/32651.

References

· https://wiki.ubuntu.com/DesktopExperienceTeam/ApplicationMenu#Troubleshooting


Answer by dbarth

For reference, here is how to disable the global menu on a per application basis: https://wiki.ubuntu.com/DesktopExperienceTeam/ApplicationMenu#Troubleshooting

To disable appmenu support on a per application basis, set the UBUNTU_MENUPROXY variable to null, with:

env UBUNTU_MENUPROXY= eclipse

the env keyword is useful if your trying to launch the application with the ALT-F2 shortcut.


Tags: unity (Next Q)


Q: How can I edit/create new launcher items in Unity by hand?

Tags: unity (Next Q)

Will Unity allow making custom launcher icons from .desktop files or via menu editing system? (Right now the launcher doesn't give the option to "keep in launcher" on all programs.

For some programs I use, I have to make custom launchers or .desktop files.

For instance, daily blender builds are generally just folders with an executable.

In basic Gnome or KDE, I can make a new menu entry with the menu editing system. Then, I can also add it to Docky either from the menu or by dragging a .desktop file to it. Unity launcher doesn't support drag and drop, so thats not a bug or anything, but when I open a .desktop file, it has unpredictable results. Most time it will not have "keep in launcher". Sometime it will have a pinnable item without the .desktop's icon, and if I pin the item to the launcher, it will not call upon the program again after closing it. I've also gotten it to just work with a .desktop file for celtx.

Tags: unity (Next Q)

User: ike


Answer by duanedesign

For 11.04 and earlier:

Unity does support custom launchers from .desktop files. To create custom launcher from a .desktop file you need to create a *.desktop file for your program.

gedit ~/.local/share/applications/name.desktop

The .desktop file should look something like this:

[Desktop Entry]

Name=the name you want shown

Comment=

Exec=command to run

Icon=icon name

Terminal=false

Type=Application

StartupNotify=true

In your file manager open your home folder and navigate to: (You may need to press ctrl+h to show hidden files to see the .gconf directory.)

.gconf-> desktop-> unity-> launcher -> favourites

you'll see a bunch of folders starting with "app-". you need to create a folder for your program. Use the same name.desktop you used in /usr/share/applications. Go into 1 of the folders for something that is already on the dock & copy the xml file and paste that into your new folder. Open it with your text editor and change the name of the *.desktop to your name.desktop.

Open gconf-editor (you can open gconf by running the command gconf-editor in the Terminal) & go to:

desktop-> unity-> launcher -> favorites

Double click the list on the right & add your name.desktop.

Log out & back in and you should see your launcher. (thank you kerry_s on the Ubuntu Forums for helping with this answer)

Unity also has a feature called Lenses. By default, you have two in Unity: Applications and Files. In the future, you will be able to install and create a lot more. There is some info about that on the Ubuntu wiki: https://wiki.ubuntu.com/Unity/Lenses


Answer by david6

For Ubuntu 11.10 and later together with Unity (3D)

NOTE: This can replace the function of an existing icon, or (once created) can be searched for (from Dash icon) to add to current button-bar.

First make your OWN copy of any of the .desktop files you want to modify. It is MUCH safer, and then you can always delete and start over.

(list all files)

ls /usr/share/applications/*.desktop

Example: Mozilla Firefox, firefox.desktop

(do this once, or after deleting any failed attempt)

cp /usr/share/applications/firefox.desktop ~/.local/share/applications

Then carefully change any wording, or add additional options.

(edit the file)

gedit ~/.local/share/applications/firefox.desktop &

Note: The ampersand '&' releases the command line immediately.

My own 'firefox.desktop' file: (heavily customized)

Skip code block

[Desktop Entry]

Version=1.0

Name=Firefox Web Browser

Name[fr]=Navigateur Web Firefox

Name[it]=Firefox Browser Web

Comment=Browse the World Wide Web

Comment[de]=Im Internet surfen

Comment[fr]=Naviguer sur le Web

Comment[it]=Esplora il web

GenericName=Web Browser

GenericName[fr]=Navigateur Web

GenericName[it]=Browser web

Exec=firefox %u

Terminal=false

X-MultipleArgs=false

Type=Application

Icon=firefox

Categories=GNOME;GTK;Network;WebBrowser;

MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/vnd.mozilla.xul+xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;x-scheme-handler/chrome;video/webm;

StartupWMClass=Firefox

StartupNotify=true

#X-Ayatana-Desktop-Shortcuts=NewWindow;

X-Ayatana-Desktop-Shortcuts=NewWindow;Private;Safe;ProfileManager

[NewWindow Shortcut Group]

Name=Open a New Window

Name[de]=Ein neues Fenster ffnen

Name[fr]=Ouvrir une nouvelle fentre

Name[it]=Apri una nuova finestra

Exec=firefox -new-window about:blank

TargetEnvironment=Unity

[Private Shortcut Group]

Name=Private Mode

Exec=firefox -private-toggle

TargetEnvironment=Unity

[Safe Shortcut Group]

Name=Safe Mode

Exec=firefox -safe-mode

TargetEnvironment=Unity

[ProfileManager Shortcut Group]

Name=Profile Manager

Exec=firefox -ProfileManager

TargetEnvironment=Unity

enter image description here

For experts: Attached 1 are several of my own favorites, for your education or use. The LibreOffice icon can replace ALL the other ones, and ALL add several right-click options. Enjoy.

enter image description here

enter image description here

enter image description here


Answer by bazon

For 11.04 and earlier:

This is a method without editing config files and without root privileges.

First create the Launcher on the Desktop (only temporary)

· right click your desktop

· select Create Launcher...

· create the custom Launcher as you want to.

Making a Launcher

Now you got the launcher on the Desktop. If you are satisfied with it, get it in the Launcher Panel:

· Open your Home Folder. Press Ctrl + H to show hidden files if necessary.

· Browse to .local/share/applications

· Drag and drop your Launcher from Desktop to that folder.

· Now drag and drop your launcher from .local/share/applications to the Launcher Bar on the left on your Screen.

· You can now delete your custom Launcher on the Desktop if it's still there.

That's it.


Tags: unity (Next Q)


Q: Unity doesn't load, no Launcher, no Dash appears

Tags: unity (Next Q)

When I login, nothing happens.

I am presented with my desktop wallpaper.

Blank desktops suck

No Dash, no Launcher, nothing.

Tags: unity (Next Q)

User: jrg


Answer by oli

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:

1. Press Ctrl+Alt+F1 and log in.

2. Install the jibby you'll need to configure the settings by running this:

3. sudo apt-get install compizconfig-settings-manager

3. Then run it by doing this:

4. export DISPLAY=:0

5. ccsm

The first part tells the terminal which display you want it to load on (otherwise it won't have a clue).

4. 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.

5. Find the Unity plugin. Enable it.

6. 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 running sudo reboot.


Answer by xyzzyman

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 --reset.


Answer by brandon-bertelsen

In 13.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.


Tags: unity (Next Q)


Q: How do I reset my Unity configuration?

Tags: unity (Next Q)

I've been messing around with Unity and broke something, how do I "start over"?

Tags: unity (Next Q)

User: jorge-castro


Answer by kees-cook

The following command does not work on newer distributions (as the reply is ERROR: the reset option is now deprecated).

For 12.04 and older

The simplest way is to hit "open a Terminal" or hit Alt-F2 and run the command:

unity --reset


Answer by mahesh

For 12.10 - 13.04

I, along with jokerdino and amithkk have created a python script that cleanly resets Unity for Quantal and above.

It is hosted on github at https://github.com/phanimahesh/unity-revamp

The script is now bundled with Unity Tweak Tool. You can install it using

sudo add-apt-repository ppa:freyja-dev/unity-tweak-tool-daily

sudo apt-get update

sudo apt-get install unity-tweak-tool

For 13.10 & 14.04

sudo apt-get install unity-tweak-tool

To reset Unity, do

unity-tweak-tool --reset-unity

Note - if this does not resolve your Unity issues then the following Q&A may apply to you:

· How do I reset GNOME to the defaults?


What happens behind the scenes?

Simple. We chase each individual setting that Unity uses, and reset them to their default values, and then reload unity to apply changes. Ah yes, we also kill Unity and compiz before we start, since it is known to get tricky if we change settings under compiz's nose.


Why is this better compared to using dconf-editor or dconf reset ?

· Didier Roche (didrocks), the author of unity python wrapper says dconf reset does not work in all cases.

· The consensus among Unity developers is that the settings be modified using Gsettings instead of dconf directly.


What exactly is dconf ?

A little history

· The configuration settings were managed by gconf earlier.

· Gnome provides Gsettings as a replacement for gconf.

· Gsettings is a high level api that manipulates the settings stored in a backend.

· Unity stores its settings in the backend dconf since it can be loaded much faster than gconf.


Answer by alex-launi

As Kees said, running unity --reset will reset all of the launcher options, but it won't remove your custom favorites. To also remove any launchers you've added to the launcher, run

unity --reset-icons

Or manually by:

gsettings reset com.canonical.Unity.Launcher favorites

I would recommend running the gsettings command before unity --reset, so that you won't have to restart unity for the gsettings key reset to take effect.


Tags: unity (Next Q)


Q: What are Unity's keyboard and mouse shortcuts?

Tags: unity (Next Q), shortcut-keys (Next Q)

In Unity, are there any pre-defined shortcuts, e.g. to open the dash or unhide the launcher?

Tags: unity (Next Q), shortcut-keys (Next Q)

User: htorque


Answer by jorge-castro

This page will document the keyboard shortcuts and mouse tricks for Unity. Please feel free to add more!

Read this first to get familiar with the UI elements of Unity and to find the right keys on your keyboard:

1. Unity Terminology

2. What are the meta, super, and hyper keys?

Keyboard Shortcuts

Holding down the Super key will get you a keyboard overlay that documents most of these (12.04 and earlier).

Launcher

· Hold Super - Invoke the Launcher (Pre-12.04).

· Hold Super, then press 1 or 2 or 3 and so on until 0 to open or focus an application. The number corresponds to the location of the icon on the launcher from top to bottom.

o Adding Shift will open a new instance of the application if it's already open.

o Holding the key is also useful when you want to get to the Launcher but do not want to invoke the Dash.

· Super-T - Open the rubbish bin/trash can.

· Alt-F1 - Put keyboard focus on the Launcher, use arrow keys to navigate, Enter launches an application, Right arrow exposes the quicklists if an application has them.

· Ctrl-Alt-T - Launch a terminal window.

Dash

· Tap Alt - Opens the HUD

· Hold Alt - Reveals application menu

· Tap Super - Opens the Dash. The open signal is sent when you let go of the key, not when you push it down, so if it feels slow just let go of the key earlier.

· Over an item, you can hit the Secondary key (commonly to the left of the right Ctrl) to see a preview of the item, as you can do with a secondary click over it.

Ubuntu 11.10

o Tab Move to the next lens (When the dash is open)

o Shift-Tab Move to the previous lens (when the dash is open)

Ubuntu 12.04 and 12.10 and 13.10

o Ctrl-Tab Move to the next lens (When the dash is open)

o Ctrl-Shift-Tab Move to the previous lens (when the dash is open)

· Alt-F2 - Invoke the Dash in a "special mode" to run a command. Typing in a Folder Name will find that folder in Nautilus, you can also use ~ as a shortcut in the field.

· The Dash opens with focus on the search box to find applications and files. Using the arrow keys will navigate the results, use Enter to launch. Hitting Enter twice in rapid succession after a search term will automatically launch the first match in a search, even if it's still ongoing. (Basically a dash version of "I'm feeling lucky").

· Super-A - Open Applications lens

· Super-F - Open Files & Folders lens

· Super-M (11.10+ only) - Open the music lens

· Super-V (12.04 and earlier) - Open the video lens

Panel

· F10 (11.10 and earlier) / Alt-F10 (12.04 and earlier) - Open the first menu on the panel, use the arrows keys to "scrub" across the menus. (There is no shortcut for the session menu, so hitting F10 and left arrow is a quick way to get there)

· Press Esc to close the menus without choosing anything.

Window Management

· Ctrl-Super-D - Show desktop; hitting it again restores the windows.

· Super-W - Spread mode, zoom out on all windows in all workspaces, in 12.04 and 12.10 it zooms out on the windows in the current workspace.

· Super-D (11.10 and earlier) - Minimize all windows; hitting it again restores them.

· Alt-Space - Opens the window's accessibility menu.

· Alt-Tab - Switch to other applications, you can hold Alt down and then hit tab to switch to the next application.

· Alt-` - Switch between an application's windows. Hitting this combo when you're already focused on an application will automatically switch only between the windows for that application. The ` key on US layouts, but Unity will use whichever key is above your Tab key. (More info) (Video)

· Ctrl-Super- - Maximize the current window

· Ctrl-Super- - Restore/Minimize the current window (seems to be buggy at the moment)

· Ctrl-Super- - Maximize current window to the left

· Ctrl-Super- - Maximize current window to the right

Window Placement

If you cycle through the same key Unity will cycle through different placement widths, so experiment by hitting the numkey multiple times, for example Ctrl-Alt-numpad 5 5 5:

· Ctrl-Alt-Numpad 7 - Place window in top left corner of screen.

· Ctrl-Alt-Numpad 8 - Place window in top half of screen.

· Ctrl-Alt-Numpad 9 - Place window in top right corner of screen.

· Ctrl-Alt-Numpad 5 - Center/Maximize the window in the middle of the screen. In 12.04 this toggles between maximize and restore state

· Ctrl-Alt-Numpad 1 - Place window in the bottom left corner of the screen.

· Ctrl-Alt-Numpad 2 - Place window in the bottom half of the screen.

· Ctrl-Alt-Numpad 3 - Place window in the bottom right corner of the screen.

· Ctrl-Alt-Numpad 0 - Minimize the current window (Ubuntu 12.04.1).

Workspace Management

· Super-S - Expo mode (for everything), zooms out on all the workspaces and lets you manage windows.

· Shift-Alt- - Expo mode for all windows in the current workspace only.

· Ctrl-Alt- / / / - (11.10+) - Change to a new workspace.

· Ctrl-Alt-Shift- / / / - Place window to a new workspace.

· Ctrl-Alt-L - Lock the screen.

Screenshots

· PrtScn - Take a screenshot of the current workspace

· Alt-PrtScn - Take a screenshot of the current window

· Shift-PrtScn - Take a screenshot of a region traced by the mouse (shows crosshairs)

System

· Ctrl-Alt-Del - Logout

Mouse Tricks

Launcher

· Clicking and holding an icon and then dragging it around will allow you to reorder it on the launcher. You can also drag it off to the right of the launcher to move it around. Note that you need to make an explicit movement to the right to move the icon off the launcher before you can move it around.

· Dragging and Dropping an icon into the trash can will remove it from the Launcher. The program itself will remain installed and accessible through the dash.

· Scrolling the mouse wheel while over the Launcher scrolls the icons if you have too many and need to move around quickly.

Window Management

· Maximizing - Dragging a window to the top panel, or double-clicking a window's titlebar, or Alt-F10 (11.10 and earlier), will maximize it.

· Restore - There are two ways to restore, or unmaximize, the topmost maximized window of the current monitor for this workspace (not using the window controls)

o Double clicking on the top panel (but not in the application's menu)

o Dragging the top panel down.

· Middle click on Maximize - Maximize Window Vertically.

· Right click on Maximize - Maximize Window Horizontally

· Focus the topmost maximized window of the current monitor for this workspace: Left click on the top panel (but not in the application's menu)

· Tiling - Dragging a Window to the left/right border will auto tile it to that side of the screen.

· Middle click on an application's launcher icon - Open a new instance of the application in a new window. If the application isn't running it will just open it normally.

· Middle click on the top panel or window title bar (but not the menu) - send the current window behind all other windows.

· Alt-Left drag inside a window - move the window

· Alt-Middle drag inside a window close to its border - resize the window

· Alt-Right click inside a window - window accessibility menu


Answer by octavian-damiean

I've made a Unity tricks overlay for the 11.04 default wallpaper.

enter image description here
Click on the image for a full screen version.

If you find a mistake just tell me. Here is the JPEG source version.

Enjoy!


Answer by yann-dìnendal

There is a feature in development for 12.04 so that when you long-press the Super key, a detailed overlay of possible shortcuts will appear.

Also notice the numbers appearing besides the application icons in the launcher dock on the left. Super + Number is a short cut to that specific app, to save you from Alt + Tab madness when rapidly switching between three or more apps (such as while programming).

Super_key_shortcuts_overlay


Tags: unity (Next Q), shortcut-keys (Next Q)


Q: How do I build Unity from source?

Tags: unity (Next Q)

I'd like to know how I would build Unity from source code in the current development release. Please cover the following topics:

· Which packages are needed to compile Unity?

· Where would I get the current source code?

· What are the steps to actually configure and compile Unity?

· Is it possible to safely run the latest version alongside the version from the repositories?

Tags: unity (Next Q)

User: htorque


Answer by stefano-candori

Building Unity from Source

In this guide you will build a separated version of Unity trunk (locally installed to your home directory), so you don't need to worry about corrupting the version from the Ubuntu repositories and you also won't need to get root permissions throughout the whole process (except for installing the build dependencies).

0. Installing build dependencies

You'll need to run this once to install all necessary build dependencies:

sudo apt-get install bzr cmake compiz-dev gnome-common libbamf3-dev libboost-dev \

libboost-serialization-dev libgconf2-dev libgdu-dev libglewmx1.6-dev \

libgnome-desktop-3-dev libibus-1.0-dev libindicator3-dev libjson-glib-dev \

libnotify-dev libnux-2.0-dev libpci-dev libsigc++-2.0-dev libunity-dev \

libunity-misc-dev libutouch-geis-dev libxxf86vm-dev libzeitgeist-dev xsltproc

If you have source code repositories (aka deb-src) enabled, you can instead use:

sudo apt-get build-dep unity

1. Preparing the environment

Replace SOURCE and PREFIX with the directories you'd like the source and build files to go. In this example I put both in my home directory:

Skip code block

export SOURCE=$HOME/source/unity

export PREFIX=$HOME/build/unity

export PKG_CONFIG_PATH="$PREFIX/lib/pkgconfig:$PKG_CONFIG_PATH"

export LD_LIBRARY_PATH="$PREFIX/lib:$LD_LIBRARY_PATH"

export LD_RUN_PATH="$PREFIX/lib:$LD_RUN_PATH"

export XDG_DATA_DIRS="$PREFIX/share:$XDG_DATA_DIRS"

mkdir -p "$PREFIX"

mkdir -p "$SOURCE"

cd "$SOURCE"

2. Building Nux

You will probably need to grab the latest version of Nux to get Unity trunk to compile:

bzr branch lp:nux

cd nux

./autogen.sh --disable-examples --disable-gputests --disable-tests --prefix="$PREFIX"

make -j4

make install

cd ..

Tip: Most modern desktops and laptops have several cores. You can greatly speed up the compilation by taking advantage of this. The make command has build-in support for this which you can activate using the -jN switch where Nis the number of jobs to run in parallel. A good rule of thumb is to run 2 times the number of cores on your processor. Thus, on a normal dual core computer you should run make -j4 to minimize the compilation time.

3. Building Unity

Now grab the latest Unity code and build it:

bzr branch lp:unity

cd unity

mkdir build

cd build

cmake .. -DCMAKE_BUILD_TYPE=Debug -DCOMPIZ_PLUGIN_INSTALL_TYPE=local -DGSETTINGS_LOCALINSTALL=ON -DCMAKE_INSTALL_PREFIX="$PREFIX"

make -j4

make install

That's it, log out and back in again and you should be running the latest Unity. Alternatively, you can run

setsid $PREFIX/bin/unity

4. Updating

Make sure to prepare the environment like described in step 1, then simply enter both top-level directories nux and unity, run bzr pull, rebuild, and reinstall.

I suggest removing and recreating the build directory in the unity directory, to make sure no old files are messing with your build.

5. Removing Unity

Remove the three directories $SOURCE, $PREFIX and ~/.compiz-1.


Useful Link:

· http://unity.ubuntu.com/getinvolved/development/unity/


Tags: unity (Next Q)


Q: How can I keep recent files from appearing in Unity?

Tags: unity (Next Q), unity-dash (Next Q)

I sometimes browse erotic media files but I would like to avoid having them appear in files & folders / recent. How can I do that?

The old "making .recently-used.xbel a folder" trick from 10.10 and older doesn't work any more.

Plus I'd prefer to turn off tracking only temporarily.

I also prefer not to use a separate user for this, as switching users sometimes isn't fast enough.

Tags: unity (Next Q), unity-dash (Next Q)

User: mr.pig


Answer by manish-sinha

Method 1: Using Activity Log Manager

Ubuntu Precise 12.04

In Ubuntu Precise Activity Log Manager 0.9 is included by default. It can be accessed from System Settings or just by looking for Privacy.

Finding Activity Log Manager in Dashenter image description here

Or you can simply type Privacy in Dash

enter image description here

Now you can start blacklisting applications. Screenshots

enter image description hereenter image description hereenter image description here


Activity Log Manager in Oneiric and first release

You can install Activity Log Manager from the Stable PPA.

For more details about Activity Log Manager you should check out the article on OMG! Ubuntu! and article on Webupd8

A new version of Activity Log Manager is in development which looks better and is simpler to use. A screenshot of the unreleased Activity Log Manager

Unreleased Activity Log Manager screenshot


Method 2: Using Gnome Activity Journal

You can do it, provided that there is some pattern in the files. For example you have kept all your explicit content in folder /home/mrpig/erotica/ folder.

Then open Activity Journal which is a GUI frontend to Zeitgeist which acts as a Dashboard showing your recent activities. On top right Zeitgeist Icon, click it and Preferences. Check "Blacklist Manager" plugin

Then goto "BlackList Manager" tab. Click on New button, and then edit the new entry which comes as file:///home/mrpig/erotica/*


Linked Question:

1. Hidden files are shown in Dash


Answer by alin-andrei

There is a way to do it, but it will clear all the other recent files as well.

All you have to do is run the following commands:

rm ~/.local/share/zeitgeist/activity.sqlite

zeitgeist-daemon --replace

Edit zeitgiest/activity.sqlite no longer exists on my system:

rm ~/.local/share/zeitgeist

zeitgeist-daemon --replace

It takes a moment, but it repopulates as the daemon starts.

Update: Activity Log Manager has been released. This is a GUI tool that allows you to tweak the Zeitgeist history: you can delete part of the Zeitgeist history, blacklist some applications or prevent logging certain types of files as well as blacklist folders.

Install it using the commands below:

sudo add-apt-repository ppa:zeitgeist/ppa

sudo apt-get update

sudo apt-get upgrade

zeitgeist-daemon --replace

sudo apt-get install activity-log-manager

Q: What can replace system monitoring in the top Gnome Panel in Unity?

Tags: unity (Next Q), indicator (Next Q)

I'm used to have System monitoring in the top Gnome Panel: CPU, Temperature, Net, Fan-Speed. (see screenshot below)

screenshot of Gnome 2 panel showing the system monitor applets

In Unity, the Top Panel is locked for window name and global menu, so I can't add panel applets. So my question is:

Is there a way to replace this kind of system monitoring (always visible, taking not much space) in Unity?

Tags: unity (Next Q), indicator (Next Q)

User: tobi


Answer by zarej

Exactly like old gnome indicator: http://www.webupd8.org/2011/05/network-memory-and-cpu-usage-indicator.html#more

Note from the link: Once installed, launch System Load Indicator from Dash. Unlike the old gnome applets, this is how to add those indicators to the panel.


Answer by leo

I found the following question and answer that solved the problem for me. It contains a list of replacements for the old applets called application indicators. Unfortunately not all of them are available for natty yet, but at least I got a very basic system load monitor (indicator-sysmonitor) and a weather indicator (indicator-weather) working.

enter image description here

Click the button to install:

Install via the software center

· What Application Indicators are available?


Answer by krumpelstiltskin

Here is a quick and dirty system monitor that I hacked together out of python: menubar

It uses the "System Monitor Indicator" (here) to call the script that I wrote. To use it:

1. install indicator-sysmonitor. To do that, run the following command:

2. sudo apt-add-repository ppa:alexeftimie/ppa && sudo apt-get update && sudo apt-get install indicator-sysmonitor

2. copy the script below into a file called sysmonitor

3. make the script executable (chmod +x path-to-file)

4. click on the indicator and choose "Preferences". Example showing that

5. choose "use this command" and give it the path to the sysmonitor file.

here's the code:

Skip code block

#!/usr/bin/python

import re

import sys

import time

import psutil

#Functions:_ __ __ __ __ __ __ __ __ __ __ __

#__/ \__/ \__/ \__/ \__/ \__/ \__/ \__/ \__/ \__/ \__/ \__/ \__/ \_

#interface |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed

net_re = re.compile(r"\s*\S+:\s+(\d+)\s+\d+\s+\d+\s+\d+\s+\d+\s+\d+\s+\d+\s+\d+\s+(\d+)\s+\d+\s+\d+\s+\d+\s+\d+\s+\d+\s+\d+\s+\d+\s+")

def getInOut():

"""

Get a readout of bytes in and out from /proc/net/dev.

"""

netfile = "/proc/net/dev"

try: f = open(netfile)

except:

sys.stderr.write("ERROR: can't open "+netfile+".\n")

sys.exit(2)

f.readline() #Burn the top header line.

f.readline() #Burn the second header line.

inb = 0

outb = 0

for line in f:

m = net_re.match(line)

inb += int(m.group(1))

outb += int(m.group(2))

f.close()

return (inb,outb)

def sampleNet():

"""

Get a sample of I/O from the network interfaces.

"""

return makeSample(getInOut)

def makeSample(function):

inlist = list()

outlist = list()

(inbytes, outbytes) = function()

inlist.append(inbytes)

outlist.append(outbytes)

time.sleep(1)

(inbytes, outbytes) = function()

inlist.append(inbytes)

outlist.append(outbytes)

return (inlist[1] - inlist[0], outlist[1] - outlist[0])

def diskstatWrapper():

"""

Wrapper for the diskstats_parse function that returns just the in and out.

"""

ds = diskstats_parse("sda")

return (ds["sda"]["writes"], ds["sda"]["reads"])

def sampleDisk():

"""

Get a sample of I/O from the disk.

"""

return makeSample(diskstatWrapper)

def diskstats_parse(dev=None):

"""

I found this on stackoverflow.

(http://stackoverflow.com/questions/3329165/python-library-for-monitoring-proc-diskstats)

"""

file_path = '/proc/diskstats'

result = {}

# ref: http://lxr.osuosl.org/source/Documentation/iostats.txt

columns_disk = ['m', 'mm', 'dev', 'reads', 'rd_mrg', 'rd_sectors',

'ms_reading', 'writes', 'wr_mrg', 'wr_sectors',

'ms_writing', 'cur_ios', 'ms_doing_io', 'ms_weighted']

columns_partition = ['m', 'mm', 'dev', 'reads', 'rd_sectors', 'writes', 'wr_sectors']

lines = open(file_path, 'r').readlines()

for line in lines:

if line == '': continue

split = line.split()

if len(split) != len(columns_disk) and len(split) != len(columns_partition):

# No match

continue

data = dict(zip(columns_disk, split))

if dev != None and dev != data['dev']:

continue

for key in data:

if key != 'dev':

data[key] = int(data[key])

result[data['dev']] = data

return result

#MAIN: __ __ __ __ __ __ __ __ __ __ __ __

#__/ \__/ \__/ \__/ \__/ \__/ \__/ \__/ \__/ \__/ \__/ \__/ \__/ \_

(indiff, outdiff) = sampleNet()

outstr = ""

outstr += "cpu: "+str(int(psutil.cpu_percent()))+"%\t"

outstr += "net: "+str(indiff/1000)+"|"+str(outdiff/1000)+" K/s\t"

(diskin, diskout) = sampleDisk()

outstr += "disk: "

if(diskin):

outstr += "+"

else:

outstr += "o"

outstr += "|"

if(diskout):

outstr += "+"

else:

outstr += "o"

print outstr

EDIT: if you want memory usage (as report by "top") add the lines

memperc = int(100*float(psutil.used_phymem())/float(psutil.TOTAL_PHYMEM))

outstr += "mem: "+str(memperc)+"%\t"

If you have version 2.0 of psutil then you can get the memory usage as reported by the GNOME System Monitor with the following line:

memperc = int(100*float(psutil.used_phymem()-psutil.cached_phymem())/float(psutil.TOTAL_PHYMEM))

If you have little space, and you prefer to have units for the net speed (b, k, M) you may use this as well

Skip code block

def withUnit(v):

if v<1024:

return "%03d" % v+"b";

if v<1024**2:

s= ("%f" % (float(v)/1024))[:3];

if s[-1]=='.':

s=s[:-1]

return s +"k";

return ("%f" % (float(v)/(1024**2)))[:3] +"M";

(indiff, outdiff) = sampleNet()

outstr = ""

outstr += "c"+ "%02d" % int(psutil.cpu_percent())+" "

outstr += "m"+ "%02d" % int((100*float(psutil.used_phymem())/float(psutil.TOTAL_PHYMEM)))+" "

outstr += "d"+withUnit(indiff)+" u"+withUnit(outdiff)


Tags: unity (Next Q), indicator (Next Q)


Q: How do I access and enable more icons to be in the system tray?

Tags: unity (Next Q), indicator (Next Q), notification-area (Next Q)

So I'm messing around with Natty a little, and I noticed that all the apps that would normally use the system tray (or "notification area"?) aren't displaying there. Is that a bug, or is that the way it's going to be? I heard something about Ubuntu getting rid of that feature entirely. Is there a way to add it back? I mean, I didn't really like it, either, especially when there were apps that used it unnecessarily, but I can't use CryptKeeper at all now, or easycrypt, and I don't know whether Dropbox has synced without opening Nautilus.

Tags: unity (Next Q), indicator (Next Q), notification-area (Next Q)

User: jon


Answer by alaukik

In versions of Ubuntu prior to 13.04 you have to whitelist the applications if you want to allow them to access the system tray.

Firstly install dconf-tools from the software center ( or by clicking here) Then Press Alt+F2 and enter dconf-editor and run it.

dconf-editor alt-f2 dialog

Now navigate to Desktop -> Unity -> Panel.

configuration editor (dconf-editor) desktop.unity.panel

Now change the value of systray-whitelist to

"all"

Note that setting this to "all" will likely lead to other bugs, as the old notification area is unmaintained, instead consider adding applications you need individually instead of just enabling everything. You can reset it to the defaults by checking out this question:

· How do I set the panel whitelist back to the default?

Do note that the system tray is entirely removed in 13.04 and newer and that older applications that still have not been ported need to be updated:

· Why aren't certain indicators showing in Unity?


Answer by scouser73

In Terminal, copy and paste this command

gsettings set com.canonical.Unity.Panel systray-whitelist "['all']"

The tip comes from this website;

http://www.webupd8.org/2011/04/how-to-re-enable-notification-area.html


Tags: unity (Next Q), indicator (Next Q), notification-area (Next Q)


Q: How do I put a web application on the Launcher?

Tags: unity (Next Q), google-chrome (Next Q), chromium (Next Q)

Sometimes I see pictures of screenshots with people with web applications and nice icons on their launcher, how can I set this up?

Tags: unity (Next Q), google-chrome (Next Q), chromium (Next Q)

User: jorge-castro


Answer by jorge-castro

Ubuntu has this feature built in, see:

· How do I use Ubuntu's web application integration?

You can also use the more traditional webapp integration approach:

Since these can be time consuming if you use a bunch of webapps I created a "Web Applications" folder that I keep these in because I need a place to hold the icon as well. I sync this folder with Ubuntu One so that on reinstalls or new computers I have my applications all ready to go with the high resolution icons.

In chromium-browser Install chromium-browseror Google Chrome you can do this by going to the website you want to make into an application. Clicking on the Wrench icon and select, tools -> Create Application Shortcuts:

enter image description here

Then select Desktop to create a shortcut on your desktop:

enter image description here

You can also select "Applications Menu" in the create application shortcut, this will put it in the Dash for you, which is handy so you can use the search feature to launch the shortcut, however most web site's favicons don't scale very well so they look ugly. So instead I do this to pretty up the application:

Then move it to this "Web Applications" folder or wherever you want to keep it:

enter image description here

Download a snazzy version of the icon that is good looking. I recommend the Fluid group on Flickr. Download the icon to the folder, and then right click on the shortcut and select properties:

enter image description here

Drag and drop the nicer icon onto the shortcut's icon box, replacing the low resolution icon with the new one:

enter image description here

Drag and drop the new slick icon right onto the Launcher for the final effect:

Drop it on your launcher

And the final effect:

Gmail and Seesmic in all their glory


Tags: unity (Next Q), google-chrome (Next Q), chromium (Next Q)


Q: How do I install the Ask Ubuntu Unity Lens, and how do I use it?

Tags: unity (Next Q)

I heard about the Ask Ubuntu Unity Lens over in the chat, and I was wondering how to install it. What are the step-by-step instructions to get it installed, activated and once that's done, how do I use it?

Tags: unity (Next Q)

User: jrg


Answer by nik90

The Ask Ubuntu Lens is a way to search askubuntu.com via your desktop in Unity. You can search for anything on the site. Questions, tags, users, and badges all show up in the search results and then it will take you here.

Depending on your Ubuntu version:

For 12.10 and above

Install via the software center

In 12.10 and above, the Ask Ubuntu Lens is now just a scope of the Help lens, to summon it with a keyboard shortcut use Super-H.

For 12.04 or 11.10:

You can install the Ask Ubuntu Unity Lens via the Software Centre by clicking below:

Install via the software center

You will need to log out and log back in for the lens to show up and work correctly.

For 11.04:

You can install the Ask Ubuntu Unity Lens via a PPA

sudo add-apt-repository ppa:askubuntu-tools/ppa

sudo apt-get update

sudo apt-get install unity-place-askubuntu

Just open up a terminal window and enter the above commands. Then, you need to log out and log back (or run unity --replace) in for the lens to show up and work correctly.

You can click on the Ask Ubuntu icon on your launcher (for 11.04), or inside your dash in 12.04 and 11.10. To get a fully expanded lens or you can hit the Super-U keyboard shortcut to summon the lens, then ask your question:

12.04 & 11.10 version:

11:04 version:

You can also right click on the icon and get a quicklist of different sub searches if you only want to search for a specific thing:

You can find more info here.

· Report bugs here


Answer by stefano-palazzo

For 11.04

There are a few special searches you can do. Search for au to quickly get a link to Ask Ubuntu (this also works in the global dash). Others are chat, for the Ask Ubuntu Chat, me (for your recent activity page), meta, and help (which will get you to this question).

You can also use the Lens to search any other stackexchange site via @-modifiers. An example search would be:

@wordpress file permissions

or

@so +pygtk about dialog

Where @so is short for stack overflow. This is (at the time of writing) the complete list of available sites:

Skip code block

@stackoverflow @serverfault @superuser @webapps

@gaming @webmasters @cooking @gamedev

@photo @stats @math @diy

@gis @tex @askubuntu @money

@english @stackapps @ux @unix

@wordpress @cstheory @apple @rpg

@bicycles @programmers @electronics @android

@onstartups @boardgames @physics @homebrew

@security @writers @audio @graphicdesign

@dba @scifi @guitars @codereview

@codegolf @quant @pm @skeptics

@fitness @drupal @mechanics @parenting

@sharepoint

Note that the lens will auto-update this list every time you re-boot, so, after your favourite beta site has been launched, it should appear soon.

For 11.10

Now that we have scopes, you can just click "Filter Results" and select another Stack Exchange network site.

enter image description here


Tags: unity (Next Q)


Q: How do I restart Unity

Tags: unity (Next Q)

I know about unity --reset command. But how can I simply restart Unity without resetting its profile?

Tags: unity (Next Q)

User: yuriy-voziy


Answer by oli

I don't use Unity but given what I know of its mechanics, this should work:

unity

You'll want to stick that in a run box (Alt+F2) rather than a terminal or it'll break when you exit the terminal.

If you want to run it from a terminal use:

setsid unity


Tags: unity (Next Q)


Q: Can I move the Unity launcher?

Tags: unity (Next Q)

I cant get used to the new Unity system. Id like to move the left Unity panel to the bottom of screen (like Windows 7 more similar is better).

But I can't find a way. Is it possible?

Tags: unity (Next Q)

User: benjamin


Answer by fossfreedom

11.10

There is now an unofficial Compiz Plugin that allows you to move the Unity 3D (not Unity 2D) launcher from the left to the bottom.

enter image description here

Credit to WebUpd8.

In summary:

1. You can now peruse the source-code. Contact the maintainer with suggested fixes! Remember this is unofficial and can & probably will have many bugs still to be ironed out.

2. Install the PPA - ppa:paullo612/unityshell-rotated

3. The packages to install are unityshell-rotated libnux-1.0-0

4. A new plugin Ubuntu Unity Plugin Rotated will be made available in CCSM

5. There is a likelihood of freezes on installation. If this occurs use CTRL+ALT+F1 to start a TTY, login and restart lightdm with sudo service lightdm restart. Rerun ccsm to enable the new plugin

6. This plugin replaces the official Unity Plugin. You will obviously not receive further bugfixes from the Ubuntu development team - you will be reliant on the PPA maintainer to supply bug-fixes

warning please see this Q&A as to potential stability issues using CCSM


Linked Questions:

1. What are PPAs and how do I use them?

2. Source code


Answer by mestrelion

12.04 and newer

As of 12.04 you can not move the launcher, and theres no official support for that.

This is by design, and so far, there are no Canonical plans to change that. Heres a quote from Mark on the bug report for Ubuntu 11.04:

I think the report actually meant that the launcher should be movable to other edges of the screen. Im afraid that wont work with our broader design goals, so we wont implement that. We want the launcher always close to the Ubuntu button.

I interpret that as a stand that a consistent design must be experienced as a Unity (pun intended), or it won't work at all.

While I personally disagree with Marks/Canonicals decision not to provide a way to move the launcher (please read my final note on this), I do understand the design choice: it truly makes sense for it to be on the side and not at the bottom. Most users today have a widescreen monitor, and virtually all monitors for sale, specially for end-user consumer market, are widescreen too. That means the vast majority of users have lots of extra horizontal space (mostly underused), while vertical space is premium.

Most apps and websites do not use your whole screen width (check the large vertical background bars in both sides of screen of Ask Ubuntu, for example). But they do use the full vertical length (actually, they scroll 3, 5, 10 times your screen height). Meaning lots and lots of scrolling. And then you subtract title bar, menu bar, favorites bar, tabs bar, etc., all of them sucking up your precious vertical space. So adding the launcher on top/bottom would make things even worse, while theres plenty of extra, idle horizontal space.

There is an ongoing, strong movement in app development, specially browsers, towards reducing the number of bars and merging them together. Think about how Firefox changed in this regard in the last few years. So it makes sense for an OS to do the same.

True, Windows panel is a well-crafted one but the design choice of Unity to put it at side and not the bottom is a wise one, once you get used to it. And its worth doing so. Your mouse wheel will say thanks ;)

That said, some important notes:

· I am just expressing Marks/Canonicals statements and point of view. While I do understand the design choice, and I do agree with a side launcher, I certainly do not agree with the decision of not being able to move it. But Im just a messenger. Dont shoot the messenger.

· There are unofficial, third-party packages that allow you to move the launcher. This other answer covers that in great depth.

· You can, at least, have some control over the launcher in a multi-monitor setup:

Unity launcher multi-monitor settings

(image edited from Ubuntu Vibes)


Answer by radu-rădeanu

You can't move the launcher from where it is. Here is a comment from Mark Shuttleworth:

I think the report actually meant that the launcher should be movable to other edges of the screen. I'm afraid that won't work with our broader design goals, so we won't implement that. We want the launcher always close to the Ubuntu button.

As an alternative, you can use Cairo-Dock Install Cairo-dock:

Cairo-Dock is a pretty, fast and customizable desktop interface. You can see it as a good alternative/addition to Unity, Gnome-Shell, Xfce-panel, KDE-panel, etc After 6 months of hard work, a new version of Cairo-Dock is available (Source: http://www.glx-dock.org/).

Other alternatives that offers you a launcher at the bottom of the screen: Cinnamon, LXDE, and so on.

This is a screenshot of my Cinnamon desktop (as you can see the launcer is at the bottom):

Cinnamon desktop

As you can see, Linux is full about choices!


Tags: unity (Next Q)


Q: How can I reduce or increase the number of workspaces in Unity?

Tags: unity (Next Q)

I was reading about how to get multiple workspaces in the mutter version of Unity, however since Compiz is replacing Mutter how do I go about adding and removing workspaces in Compiz version of Unity?

Tags: unity (Next Q)

User: marco-ceppi


Answer by fossfreedom

13.04 and later

Workspaces are by default disabled on a new install of Ubuntu v13.04.

You can toggle workspaces on/off as well as defining the number of workspaces through unity-tweak-tool Install unity-tweak-tool

enter image description here

enter image description here

12.04 install

The number of workspaces can be safely set without using CCSM through MyUnity

enter image description here

Move the slide-bars to change the number of horizontal & vertical workspaces

for example 4x1

enter image description here


Answer by ajmitch

11.10 and below

Using CCSM

This works on Ubuntu 12.04 LTS as well, but it is easier and safer to use MyUnity instead.

Warning: ccsm can lead to unwanted effects that may be hard to overcome and may leave you without a desktop (see also this question for more background information).

The options for the number of workspaces can be found in compizconfig-settings-manager install ccsmunder General Options. Do not set horizontal workspaces below 2 or the workspace switcher button won't work.

General Options

enter image description here

Using MyUnity

MyUnity can be used also in 11.10 and below, with additional steps.

In a terminal, use sudo add-apt-repository ppa:myunity/ppa && sudo apt-get update && sudo apt-get install myunity to install MyUnity. Then, use the steps described above to 12.04.


Answer by fossfreedom

12.10

MyUnity has been removed from the quantal repositories pending a rewrite. It may make a reappearance at a later date.

Until then, the number of workspaces can be changed using one of four methods:

· via the command-line

· using Ubuntu-Tweak

· using compiz-settings-manager (Not Recommended - use the CCSM answer if you wish to risk this route).

· dconf-editor

method 1

If you love the terminal you can achieve the above via:

gsettings set org.compiz.core:/org/compiz/profiles/unity/plugins/core/ hsize [x]

gsettings set org.compiz.core:/org/compiz/profiles/unity/plugins/core/ vsize [y]

where [x] and [y] are numeric values

method 2

enter image description here

· How do I install Ubuntu-Tweak?

method 3

dconf-tools Install dconf-tools

IMPORTANT NOTE: you must have used method one or two previously for dconf-editor to show the keys to change.

The reason for this is because dconf-editor does not show relocatable schema keys by default unless they have been previously changed.

First install dconf-tools.

Then press ALT+F2 and type dconf-editor

enter image description here

Press Enter or click on the icon shown.

This then opens the application:

enter image description here

Navigate down the tree to org - compiz - profiles - unity - plugins - core and change the values shown.


Tags: unity (Next Q)


Q: Can I use the Unity launcher icon to minimize applications/windows?

Tags: unity (Next Q)

I don't know if this is a feature or a bug, but clicking on an active application's launcher icon doesn't minimize it. It is terribly inconvenient for folks using a persistent Unity bar to click minimize button every time. Is there any way to add minimize functionality to the launchers?

Tags: unity (Next Q)

User: eternal-owl


Answer by tobi

For 14.04:

See this answer.

For 13.10 and below:

Because Mark Shuttlewoth decided it, at least for now?:

no, clicking on the icon will not minimise the app. We have a minimise button for that, it's prominent.

But at least, that bug has now the status opinion which means the develeopers won't fix it for now, but wait for community discussion.

So if you would like minimize on click, too, make a clear statement at launchpad.


Answer by fossfreedom

For 14.04:

minimize-on-click in action

An unsupported capability was added to Unity for Trusty. Unsupported means that Canonical do not guarantee this capability moving forwards towards Unity 8.

However, from a LTS point-of-view this gives those users at least 5 years with just this capability. This is not directly available through the standard GUI.

For a safe way, reach for a terminal and copy & paste the following:

gsettings set org.compiz.unityshell:/org/compiz/profiles/unity/plugins/unityshell/ launcher-minimize-window true

To undo this change:

gsettings set org.compiz.unityshell:/org/compiz/profiles/unity/plugins/unityshell/ launcher-minimize-window false

For an unsafe method, you can use compizconfig-settings-manager Install compizconfig-settings-manager:

1. Launch the application and click on Ubuntu Unity Plugin:

CCSM Main Window

2. Switch to the Launcher tab and put the checkmark beside Minimize Single Window Applications (Unsupported) to enable this feature.

Launcher tab for Ubuntu Unity Plugin


Answer by cas

For 13.10 and below

There is quite a heated debate about this missing feature on launchpad:

https://bugs.launchpad.net/ayatana-design/+bug/733349

In response to the expose mode for multiple windows, this can be easily adapted for with a second click to minimize all windows as there is currently no further function for that extra click in launcher.

If you want to minimize all the application's windows, I do not think there is an easy way currently so this functionality would help in that instance too.


Tags: unity (Next Q)


Q: Is there an easy way to rearrange or move the icons in the Unity launcher?

Tags: unity (Next Q)

It looks like the only time that you can choose where an icon goes on the unity launcher, is when you add it. Is there a way to rearrange the order of an icon after it has been added?

Tags: unity (Next Q)

User: janniet


Answer by novatillasku

Click and hold the application's launcher icon, and then drag it up or down.

enter image description here


Answer by basharat-sialvi

How to rearrange icons in Unity Launcher?

Just drag the icon out of the Launcher.

enter image description here

And then just drop it back in the Launcher anywhere you want.

enter image description here


Answer by don-kirkby

In Ubuntu 11.10, dragging to the right didn't work for me. When I click an icon and hold the mouse button down for one second without moving the mouse, the icon drops down a few pixels. After that, I can drag it up or down the list to change its position.


Tags: unity (Next Q)


Q: How do I make a Theme from scratch for Unity?

Tags: unity (Next Q), themes (Next Q)

I'd like to make a theme from scratch for Unity.

What knowledge and information/skills are needed? Are there any tools or templates out there for something like this already? I don't have any Python experience so tools biased towards beginners are preferable.

Tags: unity (Next Q), themes (Next Q)

User: achu


Answer by rinzwind

10.04 to 11.04

To avoid problems with a theme I create I start with another theme and then copy it over to a new name and use theme Equinox Evolution Midnight to create a new theme that I name Rinzwind. This avoids errors, crashes and notices about things not being present for this theme.

· create a new theme based of another theme

Themes are stored in /usr/share/themes/:

im1

Steps taken in this image:

· Open terminal and cd /usr/share/themes/

· sudo mkdir Rinzwind

· cd Rinzwind

· sudo cp -R /usr/share/themes/Equinox\ Evolution\ Midnight/* .

Inside the new directory is a file named index.theme that needs to be changed to the new theme name. So after entering sudo gedit index.theme change all the old theme names to the new one:

im2

String, search and replace Equinox Evolution Midnight -> Rinzwind
IconTheme and CursorTheme I will keep for now but editing these 2 is almost the same as for this theme.

And now we have a new name for an old theme:

im2

· Creating a new theme

Inside our new directory are 2 sets of images:

im5

im6

With an image editor (Gimp) you can change the colors or do various things on the images. Make sure to keep the same size of the image and of course use sane colors (stick to one color and 1 or 2 shades of this color to make a theme and not something that gives people instant headaches).

Recreate these 2 directories in your Pictures folder by copying the theme to your Pictures. I copied the 2 directories inside the theme and removed all directories that are not images with this as a result:

im7

Open all the images inside gimp and start editing them and when you are satisfied copy them over with to your theme's directory and check if it works. Remark: since the theme is owned by root you need to use sudo to copy it over.

· What GIMP tutorials are available?


Answer by fossfreedom

11.10 and above

Creating a theme for 11.10 and above (GTK+3) is fortunately very similar to 11.04 and previous versions of Ubuntu that used GTK+2. This answer is based on the already excellent answer from Rinzwind.

Its easier to amend an existing theme rather than to tackle a theme from scratch. In addition - its easier to edit a theme in your own local home folder - this avoids permissions issues etc.

Lets create a new theme that called foss based upon the Ambiance theme. Obviously - if you have any other GTK+3 themes installed, use those (see linked Q&A for where to get themes)

Install themes are stored in /usr/share/themes/ - local themes are stored in your home folder under the folder-name .themes

· Open terminal

· Create a local foss theme folder mkdir -P ~/.themes/foss

· cp -R /usr/share/themes/Ambiance/* ~/.themes/foss

Inside the new folder is a file named index.theme that needs to be changed to the new theme name.

gedit ~/.themes/foss/index.theme change all the old theme names to the new one.

enter image description here

And now we have a new name called foss:

Editing the new theme

Inside our new directory are two key folders - Unity and gtk-3.0:

enter image description here

With an image editor such as Pinta or Gimp you can change the colours or do various things on the images within those folders.

enter image description here

Make sure to keep the same size of the image and of course use sane colors (stick to one color and 1 or 2 shades of this color to make a theme).

Open all the images inside Pinta/Gimp and start editing them and when you are satisfied copy them over with to your theme's directory.

However - the main part of theme editing is changing the various .css files in those folders (and the subfolder Apps).

enter image description here

Cascading-Style-Sheets is a well-defined stylesheet language that changes the look and feel of associated objects - in our case a theme - but equally applies to HTML web pages and documents.

It isn't for the uninitiated to edit these - fortunately there are some very good tools to allow you to edit & preview CSS changes - see the linked Q&A below.

Once you are happy with your theme - set your theme via Ubuntu-Tweak

enter image description here

Unfortunately you cannot change themes via the standard Appearance screen - the themes there are hard-coded in 11.10 & 12.04.


Linked Questions:

· CSS editor with real-time preview and selector localization

· How do I install Ubuntu-Tweak?

· What GIMP tutorials are available?

· Is there a program like Microsoft Paint?

· Where to find great themes?


Tags: unity (Next Q), themes (Next Q)


Q: Am I using Unity or Unity 2D?

Tags: unity (Next Q)

Unity and Unity 2D look very much alike, so how can new users easily find out whether they are running Unity or Unity 2D?

Tags: unity (Next Q)

User: htorque


Answer by rolandixor

Note:

As of Ubuntu 12.10, Unity 2D is no longer developed and all systems use Unity 3D (with LLVMpipe for systems without hardware acceleration).


The easiest way I have found is to look at the launcher:

Subtlety in the design of the of the launcher popups - Unity 3D lives up to its name with a darker shadow "3D" effect whereas Unity 2D is lighter and has a "2D" flat effect.

Unity 3D enter image description hereUnity 2D enter image description here

If you don't trust your eyes you can rely on the system to tell you, just look at the desktop session variable, open a terminal and type:

echo $DESKTOP_SESSION

If it echoes back ubuntu-2d that means you are using Unity 2D and ubuntu for Unity3D.

But if you want a bit more details (and that's a big if), here is an extended review:

Unity 3D

Unity 3D has several features that set it apart, that are the result of it's "3D" nature and the capabilities afforded to it that way:

· The launcher items fold when there are too many windows open or excess items pinned to the launcher.

· Also, the trash can icon in Unity 3D is based on your current icon theme, and thus looks transparent in the default setup (when empty).

· The Panel and Dash change colour to match your wallpaper when the Dash is open, and the launcher is mildly translucent by default.

· The Dash icon is black on white, with a transparent border, and rounded edges.

· Unity 3D is a Compiz plugin and requires Compiz, which means your graphics card must have 3D support, and you cannot run it on another window manager; so if you are running anything but Compiz with Unity - you are definitely not running Unity 3D.

· Unity 3D's icons have a nice gloss+glow to them, and transparent/translucent edges.

· Unity 3D takes advantage of compositing fully even for quicklists and Launcher item tooltips.

· Unity 3D's panel has a shadow.

· Unity 3D has a fully 3D workspace switcher with smooth animations and an orange glow.


PLEASE NOTE:
These images present a slightly modified launcher, in that I have the Launcher set to "Edge Illumination Toggles" instead of the default "Backlight Always On".

Unity 3D's Launcher with folded icons

· Unity 3D's Launcher with folded icons.

Unity 3D Trash Icon

· Unity 3D's Trash Icon


Unity 2D:

There are several differences in Unity 2D from Unity 3D. One of them is that the launcher items do not ever fold.
Also note the following:

Notable differences in Unity 2DNotable differences in Unity 2D

1. The Dash button is not translucent.

2. Other buttons are flat icons, and not transparent/translucent with a glossy appearance as in Unity 2D.

Also of note:

· The launcher and Dash are not transparent when not using a composting window manager such as Compiz Install compizor Mutter Install mutter(for example). In the Default install, Metacity has compositing enabled.

· Unity 2D can run in different Window Managers, unlike Unity 3D. If you run top or gnome-system-monitor, you will notice that Unity 2D also consists of separate processes for the Panel, Launcher, and Dash.

· As noted by fossfreedom, Unity 2D does not currently take advantage of compositing for Launcher item tooltips and quicklists.

· The Panel + Dash do not adapt to your wallpaper when the Dash is open.

· The Panel has no shadow.

· Unity 2D's workspace switcher has no glow, and has slow animations with no smoothness to them.

· When there is an overflow of items on the Launcher, there is no folding. The launcher only scrolls.


Answer by komputes

Just found out how to tell which session you are using, via command.

Way to know which session is being used (lightdm only, so 11.10 or above):

tail -n 20 /var/log/lightdm/lightdm.log | grep "Starting session" | cut -d ' ' -f5

Otherwise:

echo $DESKTOP_SESSION

Hope that helps!


Answer by blueyed

Just look at the desktop session variable:

echo $DESKTOP_SESSION

It is "ubuntu-2d" for Unity 2D and "ubuntu" for Unity.


Tags: unity (Next Q)


Q: How do I change the default session for when using auto-logins?

Tags: unity (Next Q), lightdm (Next Q)

When autologon is active, lightdm will start the Unity 3D session, not the 2D (or any other shell that I want to auto-login to).

Is there a way to start the shell I want automatically (autologon)?

Anyway, if autologon is disabled, the last used session is launched, and that's fine. I just want to choose which is default with autologon.

Tags: unity (Next Q), lightdm (Next Q)

User: giowck


Answer by fossfreedom

The list of sessions is described in the directory /usr/share/xsessions.

Some of the more common session names are as follows:

· For unity-2d the session file is called ubuntu-2d.desktop

· For gnome-classic the session file is called gnome-classic.desktop

· For gnome-classic (no effects) aka gnome-fallback the session file is called gnome-fallback.desktop

· For unity-3d the session file is called ubuntu.desktop

· For Lubuntu the session file is called Lubuntu.desktop

· For LXDE the session file is called LXDE.desktop

Thus, if you change the light-dm configuration file to "ubuntu-2d" this will default the session to Unity-2D

i.e.

sudo nano /etc/lightdm/lightdm.conf

change the line

user-session=ubuntu

to

user-session=ubuntu-2d

Note - if you don't have a lightdm.conf file then for a autologin use the following values for this file:

[SeatDefaults]

greeter-session=unity-greeter

user-session=ubuntu-2d

autologin-user=myusername

autologin-user-timeout=0

Another possibility is to run:

sudo /usr/lib/lightdm/lightdm-set-defaults -s <session-name>

E.g.:

sudo /usr/lib/lightdm/lightdm-set-defaults -s ubuntu-2d

This will also create the lightdm.conf file if it wasn't already present.


Answer by eliah-kagan

It is strange that LightDM (Ubuntu 11.10's display manager, which provides the graphical login screen) is not remembering your selection across reboots.

You can manually edit the relevant configuration file, which is called .dmrc and is located in your home folder. In Nautilus (the file browser), you'll have to press Ctrl+H (or View > Show Hidden Files) to see it and other files that start with a '.' character. If you have this file--which you probably do--then its contents will be like:

[Desktop]

Session=ubuntu

For GNOME Classic you can change it to say:

[Desktop]

Session=gnome-classic

Or for GNOME Classic (no effects) you can change it to say:

[Desktop]

Session=gnome-fallback

If you happened to want to use Unity 2D (session type Ubuntu 2D), you could change it to say:

[Desktop]

Session=ubuntu-2d

If you don't have the file at all, then you can create it with the appropriate contents.

If you want to set GNOME Classic or GNOME Classic (no effects) as the default session type for all users--or you'd prefer not to, but the above user-specific method doesn't work--then you can edit /etc/lightdm/lightdm.conf, changing the line that says user-session=ubuntu to instead say user-session=gnome-classic or user-session=gnome-fallback (or user-session=ubuntu-2d). A few things to keep in mind when considering doing this:

(1) It is preferable to edit the per-user configuration files in users' home folders, unless you have a reason to prefer changing the global configuration (like that not working).

(2) Since this is a global configuration file and it contains considerably more than the simple configuration option that you are intending to edit, it is advisable to back it up before editing it, in case you make a mistake. You can do that in the Terminal by running the command sudo cp /etc/lightdm/lightdm.conf /etc/lightdm/lightdm.conf.old.

(3) This file is owned by root, hence the sudo command above. You must also edit it as root. To open it in gedit as root, you can run gksu gedit /etc/lightdm/lightdm.conf (either in a Terminal window, or in the graphical Run Application text box, when you can get by pressing Alt+F2).

It seems likely that the behavior you're experiencing is a bug, so after gathering additional information by seeing if manually editing ~/.dmrc works, you may want to report it as one (read this carefully first, then after searching to see if a similar bug has been reported, initiate the reporting process by invoking ubuntu-bug with the PID of the running lightdm process, or, almost as good, run ubuntu-bug lightdm ...which should all make sense after you've read that guide).

By the way, besides Unity (session type Ubuntu), Unity 2D (session type Ubuntu 2D), and GNOME 3 Fallback (GNOME Classic and GNOME Classic (no effects)), you might also consider, as even lighter-weight options, Xfce4 (install the package xubuntu-desktop and select session type Xubuntu) and LXDE (install the package lubuntu-desktop and select session type Lubuntu).

There's also GNOME 3 with the GNOME Shell instead of Unity (install the package gnome-shell and select GNOME) and KDE 4 Plasma (install the package kubuntu-desktop and select Kubuntu), but those unlikely to be less resource-intensive than the above options.


Answer by anarci

To change the default Session in Lightdm

sudo /usr/lib/lightdm/lightdm-set-defaults --session gnome-shell


Tags: unity (Next Q), lightdm (Next Q)


Q: How do I set focus follows mouse?

Tags: unity (Next Q), window-manager (Next Q)

Is there a way to set up "focus follows mouse" behavior in Unity?

Tags: unity (Next Q), window-manager (Next Q)

User: dharmatech


Answer by fossfreedom

13.04 and later (GUI)

Follow-on-focus settings can be set using the unity-tweak-tool Install unity-tweak-tool

enter image description here

enter image description here

12.10 and later (command line)

The following controls follow-on focus

gsettings set org.gnome.desktop.wm.preferences focus-mode 'sloppy'

or

gsettings set org.gnome.desktop.wm.preferences focus-mode 'mouse'

Use the value 'click' to reset to the standard focus-control.

Note: the difference between 'sloppy' and 'mouse' is described at the bottom of this answer.

In addition you have the following option which when set, automatically raises the window to have focus:

gsettings set org.gnome.desktop.wm.preferences auto-raise true

You can control the delay for this auto-raise capability (in milliseconds):

gsettings set org.gnome.desktop.wm.preferences auto-raise-delay 500

You can change raise-on-click to control what window is on top:

gsettings set org.gnome.desktop.wm.preferences raise-on-click false

12.04

Two methods for 12.04 are presented below:

method 1

enter image description here

Use gconf-editor and change the focus-mode value shown to mouse or sloppy

(see note below)

If do not have gconf-editor already installed then you can install via the terminal command:

sudo apt-get install gconf-editor

In addition you have the following key which when set, automatically raises the window to have focus - auto-raise.

You can control the delay for this auto-raise capability (in milliseconds) by changing the key value auto-raise-delay

method 2

use gnome-tweak-tool

enter image description here

change windows focus mode to mouse or sloppy

(see note below)

"mouse" vs "sloppy"

A focus mode "sloppy" seems to work better at allowing Alt+TAB to override focus.

"mouse" means that if the mouse isn't in the window, the window isn't selected, no matter what you've selected in any other way.

The window focus mode indicates how windows are activated. It has three possible values; "click" means windows must be clicked in order to focus them, "sloppy" means windows are focused when the mouse enters the window, and "mouse" means windows are focused when the mouse enters the window and unfocused when the mouse leaves the window.

Controlling What Window is on Top

The following window options control what window is in the front of others (or "on top"). It's slightly different than what window has the input focus. The following descriptions help explain slightly.

raise-on-click

Some users who use focus-follows-mouse do not like the windows the interact with to come to the top unless they explicity click on the tilebar of the window. This gives a finer grain of control when working with multiple windows, but can be frustrating for most users.

auto-raise

Some users who use focus-follows-mouse, like to have the window their cursor is over automatically raise to the top. This makes the window in full view, with no other windows eclipsing it.

auto-raise-delay

The length of time to wait before triggering the auto-raise behavior.


Answer by jon-v

While you can use the gconf-editor or gnome-tweak-tool to do this, they are not installed by default. I also found (on the intarwebs from http://blog.bodhizazen.net/linux/gnome-3-focus-follows-mouse):

gconftool-2 --type string --set /apps/metacity/general/focus_mode mouse

gconftool-2 --type boolean --set /apps/metacity/general/auto_raise true

gconftool-2 --type integer --set /apps/metacity/general/auto_raise_delay 600

Personally, I don't like the auto_raise feature, so I set the second option to "false" and didn't set the auto_raise_delay option.

Note, however, that this ultimately "breaks" the Unified Menu Bar (UMB) (when you mouse off the item you're using and onto another one, the Unified Menu Bar is now reflective of whatever you're now hovering over).

Two Workarounds:

· Move the window to the top of the screen before accessing UMB

· Press F10, which will keep UMB open on focused window for you to interact with

Tested as recently as Precise

more edits: I've put "breaks" in quotes - yes, it's not really broken, but it breaks IMO the intent of the UMB, or at least makes it challenging to use as Reese correctly points out in the comment. IMO, that's a "breaks simple usability, but with an annoying workaround." Though given Linux's focus on providing very strong multitasking (which tends to lead to a "cluttered" desktop), it seems that either the UMB diminishes multitasking, or multitasking diminishes the UMB's capabilities. I'll leave that as an exercise to the reader to decide...


Answer by belacq

This can be done through CompizConfig Settings Manager. I've tested it on 11.10, 12.04, and 12.10.

CompizConfig

Select the "Focus & Raise Behavior Tab", then uncheck "Click To Focus." Make sure "Auto-Raise" is checked.

More CompizConfig

If you don't have CompizConfig Settings Manager (also known as 'CCSM') installed, you can do so from the Software Center, or from the command line:

sudo apt-get install compizconfig-settings-manager

You can then launch it with as ccsm from the command line, or from the launcher with "compiz" or "ccsm",

Here are some general caveats for running ccsm: what are some of the issues with ccsm?


Tags: unity (Next Q), window-manager (Next Q)


Q: What is the "show desktop" keyboard shortcut?

Tags: unity (Next Q), shortcut-keys (Next Q)

I just upgraded to 11.10 from 11.04. Previously the shortcut to show the desktop was Super key + D (same as in Windows), But now it is not working. What is the new shortcut?

Tags: unity (Next Q), shortcut-keys (Next Q)

User: aneeshep


Answer by shymik

For 11.10 and 12.10

Control-Alt-D shows the desktop for me

For 12.04 ,13.04 and 14.04

Control-Super-D works for me

· What are Unity's keyboard and mouse shortcuts?


Tags: unity (Next Q), shortcut-keys (Next Q)


Q: How do I revert Alt-tab behavior to switch between windows on the current workspace?

Tags: unity (Next Q)

Enabling Bias alt-tab sorting to prefer windows on the current viewport as described here made no difference. How can I get back the exact same behavior as 11.04, so that alt-tab only switches between windows on the current workspace?

Simply disabling the alt-tab and shift-alt-tab keybindings on the unity switcher seems to have helped, but it still switches workspaces on me sometimes. For example, if I give a terminal window focus then press alt-tab, it switches to another terminal window on any workspace before trying to switch on the same workspace. Also, the Unity switcher still shows up when I alt-tab then hold alt even though I removed its alt-tab keybinding.

Tags: unity (Next Q)

User: chris.ritsen


Answer by ændrük

You can revert back to the older style of window switcher by enabling the Static Application Switcher plugin in CompizConfig Settings Manager:

· Warning: What are some of the issues with ccsm and why would I want to avoid it?

Steps:

1. CompizConfig Manager is gotten through sudo apt-get install compizconfig-settings-manager (thanks to @donbright)

2. sudo apt-get install compiz-plugins to get the static application switcher to show up. (thanks to @Milimetric)

3. CompizConfig Manager is started by typing ccsm in terminal (thanks to @donbright)

4. Disable the keyboard shortcuts for Unity's switcher by unchecking CompizConfig Settings Manager Desktop Ubuntu Unity Plugin Switcher Key to start the switcher Enabled and Key to start the switcher in reverse Enabled

5. Enable the Static Application Switcher by checking CompizConfig Settings Manager Window Management Static Application Switcher Enable Static Application Switcher


Answer by lassevalentini

You should install CompizConfig Settings Manager. From there you can find the Unity plugin

enter image description here

and disable the switcher, by clicking on each of the key bindings and unchecking 'Enabled'

enter image description here

Then you can enable one of the other window-switcher plugins under Window Management.

ccsm

· Warning: What are some of the issues with ccsm and why should I not use it?


Tags: unity (Next Q)


Q: How to change tooltip background color in Unity?

Tags: unity (Next Q), themes (Next Q)

In a lot of applications the tooltips are just plain ugly (White text on black background, way too much contrast) or even unreadable (black or dark blue text (Hyperlinks) on black background). I want to change the background color of the tooltips to some medium gray or even some yellow or something like that, maybe even something semi-transparent.

Here is a screenshot of Eclipse which displays some source code in a tool tip with black text on black background:

Eclipse with an unusable tooltip

Switching to a different theme (Something other than Ambiance or Radiance) helps but I like Ambiance and I want to keep it. It's just this darn tooltip color which is absolutely unacceptable.

I found several solutions for older Ubuntu versions but they no longer work with Unity in Ubuntu 11.10 because I can't find any function to customize the Ambiance or Radiance theme. So how do I do that in the current Ubuntu version?

Tags: unity (Next Q), themes (Next Q)

User: kayahr


Answer by kayahr

Found it!

I had to edit these files:

/usr/share/themes/Ambiance/gtk-3.0/settings.ini

/usr/share/themes/Ambiance/gtk-3.0/gtk.css

/usr/share/themes/Ambiance/gtk-2.0/gtkrc

(Addition: for Ubuntu 12.04, it seems youjust have to modify the file: /usr/share/themes/Ambiance/gtk-2.0/gtkrc , replacing the tooltip backround and foreground color, with the #000000 and the #f5f5b5 color, respectively)

You require root privileges to edit the files. Use gksudo gedit to edit them.

Search for tooltip in these files and you'll find the color definitions for the foreground and the background. I use #000000 as foreground and #f5f5b5 as background and now the tooltips in all applications are again readable. After changing the color values simply switch to some other theme and then back to Ambiance and the tooltip color is now fixed.

Here is the result:

Eclipse with customized theme


Answer by nick-andrik

Install and open gnome-color-chooser Install gnome-color-chooser.

Go to Specific Tooltips and put black foreground over pale yellow background.


Answer by victor-p.

I created a small script that does that for you

Skip code block

#/bin/sh

# Tooltip fix

# A script to fix themes files in Ubuntu 11.10

# to have readable tooltips in applications such

# as eclipse.

# The script edits the gtk.css, settings.ini and gtkrc files

# Author: Victor Pillac

# http://victorpillac.wordpress.com

if [[ $EUID -ne 0 ]]; then

echo "This script must be run as root" 1>&2

exit 1

fi

path=/usr/share/themes

theme=Ambiance

if [ $# = 1 ]; then

theme=$1

fi

echo "Fixing tooltips for theme $theme"

echo " (you can select a different theme by passing its name as argument)"

sed -i 's/tooltip_bg_color #000000/tooltip_bg_color #f5f5b5/g' $path/$theme/gtk-3.0/gtk.css

sed -i 's/tooltip_fg_color #ffffff/tooltip_fg_color #000000/g' $path/$theme/gtk-3.0/gtk.css

sed -i 's/tooltip_bg_color:#000000/tooltip_bg_color:#f5f5b5/g' $path/$theme/gtk-3.0/settings.ini

sed -i 's/tooltip_fg_color:#ffffff/tooltip_fg_color:#000000/g' $path/$theme/gtk-3.0/settings.ini

sed -i 's/tooltip_bg_color:#000000/tooltip_bg_color:#f5f5b5/g' $path/$theme/gtk-2.0/gtkrc

sed -i 's/tooltip_fg_color:#ffffff/tooltip_fg_color:#000000/g' $path/$theme/gtk-2.0/gtkrc

echo "Done"


Tags: unity (Next Q), themes (Next Q)


Q: How to pin Eclipse to the Unity launcher?

Tags: unity (Next Q), eclipse (Next Q)

How can I pin eclipse indigo 3.7 I have 'installed' at /opt/ to the taskbar?

I have tried launching eclipse and right-clicking to choose the 'keep in launcher' option. But when I click that icon, after closing eclipse, it doesn't start eclipse.

I have already looked at How do I add Eclipse Indigo to the launcher? but no answer worked for me. (Mod note: The answers from this thread are now merged into this one)

Tags: unity (Next Q), eclipse (Next Q)

User: nunos


Answer by salem

For 11.10 and newer

First, create a .desktop file to eclipse:

gedit ~/.local/share/applications/opt_eclipse.desktop

Then, paste this inside (dont forget to edit Exec and Icon values):

[Desktop Entry]

Type=Application

Name=Eclipse

Comment=Eclipse Integrated Development Environment

Icon=** something like /opt/eclipse/icon.xpm **

Exec= ** something like /opt/eclipse/eclipse **

Terminal=false

Categories=Development;IDE;Java;

StartupWMClass=Eclipse

After that, open that folder with nautilus:

nautilus ~/.local/share/applications

If you want to use this launcher outside dash/launcher (ex: as a desktop launcher) you need to add execution permission by right clicking the file and choosing Properties -> Permissions -> Allow execution, or, via the command-line:

chmod +x ~/.local/share/applications/opt_eclipse.desktop

Finally drop opt_eclipse.desktop to launcher.


Answer by bruno-pereira

For Ubuntu 11.10, 12.04, 12.10

If the applications folder does not exist inside ~/.local/share/ create it

mkdir ~/.local/share/applications

Check if your installation left you with a workable .desktop file for Eclipse and copy it if exists

cp /usr/share/applications/eclipse.desktop ~/.local/share/applications/


If the file does not exist create a .desktop file for Eclipse in your ~/.local/share/applications/ folder using gnome-desktop-item-edit, ie:

gnome-desktop-item-edit --create-new ~/.local/share/applications/

On the name set it to Eclipse, on the command enter the path to the binary file of Eclipse, insert a comment if you want and click the icon to select the icon that you desire for Eclipse.

Press ok when you are finished.


After copying the file or creating your own open that folder location

nautilus ~/.local/share/applications/

Locate the file you just created and drag it to the launcher

enter image description here


Answer by christoph

11.04

If user21580's answer doesn't work (great suggestion, but I think it didn't work for me when I installed Indigo), you can try adding an eclipse.desktop file to ~/.local/share/applications/, with these contents:

Skip code block

#!/usr/bin/env xdg-open

[Desktop Entry]

Version=1.0

Type=Application

Terminal=false

StartupNotify=true

Icon=<path-to-eclipse-install>/icon.xpm

Name=Eclipse Indigo 3.7

#Exec=env UBUNTU_MENUPROXY=0 <path-to-eclipse-install>/eclipse

Exec=env <path-to-eclipse-install>/eclipse

If you experience bugs, you can try the Exec line which is commented out instead of the current one.

References:

· How can I edit/create new launcher items in Unity by hand?


Tags: unity (Next Q), eclipse (Next Q)


Q: What are some of the issues with CCSM and why would I want to avoid it?

Tags: unity (Next Q)

I've seen some people complaining about how unstable CompizConfig Settings Manager ("CCSM") is and how it can break people's desktops if they're not careful.

What are some of the known problems with CCSM? I'd like to decide whether or not it's worth the risk for me.

Tags: unity (Next Q)

User: jorge-castro


Answer by achiang

I am an experienced Linux user, I've contributed to kernel and work on the Canonical OEM team; I only mention these facts to show my context, which is -- the other day, I did a fresh install of 11.10 on my laptop, and wanted to customize something (turning on focus-follows-mouse). I poked around in gnome-control-center for about 30 minutes before giving up and discovering the only way to do this was using ccsm.

After installing ccsm, I configured ffm, and then -- accidentally! -- my mouse cursor passed over the preferences button and the touchpad on my laptop registered a click.

Boom!

Unity session dead.

Luckily I still had an irc window open and I could beg for help from my colleagues who told me how to recover (rm ~/.compiz-1). This is the same problem some people keep having:

· Unity 3D doesn't work anymore, just shows a menu on the top

· Unity doesn't load, no Launcher, no Dash appears

· Desktop Disappeared

I know that people are going to google for how to configure things and land up here and they're going to see lots of mentions of ccsm; or worse yet from another unreliable source. The horse is out of the barn already, and we can't go back. The determined users are going to find it anyway, and anyone that tenacious deserves to know how to get what they want (and if you break it you get to keep both pieces!)

But my point is that from now on, we can try and do better for our users.

1. ccsm is dangerous; even if you know not to touch the bad thing, you might accidentally touch it anyway like I did.

2. ccsm has no future; the future plans for Unity are to migrate all the useful configurability bits out of ccsm into safer, supported tools. These tools should start to appear in 12.04.

3. the attitude of "recovering from your mistakes is a positive learning experience" is niche. Most normal people just want to use their computers without having them randomly break in mysterious, non-recoverable ways; most normal people do not share our culture of taking things apart to see how they work.

Again -- I know that people are going to find the dangerous stuff no matter what. But what we can do here is change our culture and give opinionated help, steering people away from the bad stuff and towards the good stuff.

It's easy to convey facts; it's much harder to convey wisdom.

Here, we should be aiming higher than merely giving the facts of what is possible; we should be sharing the wisdom of what is recommended.


Answer by didrocks

You can also have other plugins conflicting with the unity one, like commands and such. We need to activate them still for the fallback session (like Alt + F2). So unity by default conflicts with other plugins that are enabled.

However, touching such a plugin in ccsm enables special artefacts like "do you want to remove the unity plugin?" and people don't read and say yes.

Even worse:

1. Unity is depending on LargeDestkop:

2. Wall and Cube are providing LargeDesktop, each one conflicting with each other.

What happens is that, if you enable Cube, ccsm will disable Wall. Then compiz thinks it's smart right know to check for dependency and will tell "oh, I can't have unity" and disable it. Then, it will enable Cube without reenabling unity which has now its "LargeDesktop" requirement matched.

In addition to this, compizconfig has a fragile configuration management, which can, in some unknown cases right now, remove a plugin from the current profile (probably due to a conflict check at start or on upgrade) without any warning


Tags: unity (Next Q)

Q: How can I remove duplicate second Unity Launcher on a Dual Screen setup?

Tags: unity (Next Q), multiple-monitors (Next Q)

See attached image. On my dual screen display I have a Unity Launcher on the left hand screen and also on the right hand screen. Both work perfectly fine.

I don't want two Unity Launchers. Every time I move my mouse to the right hand side it gets slowed down over the right launcher hampering my productivity.

I have an Nvidia card with the Nvidia driver and I am using TwinView.

Could somebody please tell me how to remove this extra duplicated launcher?

enter image description here

Tags: unity (Next Q), multiple-monitors (Next Q)

User: eugene-van-der-merwe


Answer by jrg

You can now.

Open up Display preferences, and then you can choose between having the launcher on one display or all of them.

enter image description here

This dialog also allows switching on or off the sticky edges (i.e. the mouse slowdown) between the displays.


Answer by jo-erlend-schinstad

The slowdown is a feature to make it possible to use the launcher when it's set to auto-hide. I think it's a bug that it's used when the launcher is set to always visible. I've reported it on Launchpad.net, where bugs are filed, and you might want to set it to affect you. You can find it here: https://bugs.launchpad.net/ubuntu/+source/unity/+bug/945847

In the meantime, you can configure it yourself by using /apps/compiz-1/plugins/unityshell/screen0/options/overcome_pressure and /apps/compiz-1/plugins/unityshell/screen0/options/stop_velocity in gconf-editor

You can also configure these parameters in CCSM (Compiz Config Settings Manager), in the Unity Plugin, Experimental tab


Tags: unity (Next Q), multiple-monitors (Next Q)


Q: How do I disable mouse magnet on middle edge with multi monitors?

Tags: unity (Next Q), multiple-monitors (Next Q)

I use Ubuntu 12.04 on a two screen setup. Multiscreen on 12.04 has generally become much better, but there is one thing that really gets on my nerves: there's a mouse magnet of sorts on the middle edge (between the two screens). It's undoubtedly there to make it easier to interact with the launcher on the right screen. But I have enough trust in my mousing skills, the magnet is more annoying than helpful in my case. Can I disable it somehow?

Tags: unity (Next Q), multiple-monitors (Next Q)

User: benjamin-wohlwend


Answer by javier-rivera

There is a setting for it in Displays:

enter image description here

You may still get the behaviour if you have a launcher on the right monitor, so use the "Launcher Placement" option to select having your launcher on only the left screen. The stickyness between the screens is required for it to be easy to retrieve the launcher there.

You might need to log out and back in (or restart) for the changes to take effect.


Answer by jo-erlend-schinstad

The "hang" is a feature to make it possible to use the launcher in multi-monitor setups when it's set to auto-hide. It can be configured using gconf-editor. The relevant keys are

/apps/compiz-1/plugins/unityshell/screen0/options/stop_velocity, and

/apps/compiz-1/plugins/unityshell/screen0/options/overcome_pressure

Recommended settings to minimize the effect are:

· overcome_pressure=1

· stop_velocity=20

These settings do not completely stop the mouse from sticking, but makes it less likely it will do so. You can reduce stop_velocity further if you want.

Possibly also /apps/compiz-1/plugins/unityshell/screen0/options/reveal_pressure. The latter can be configured more easily in System Settings -> Appearance -> Behavior.

· How do I use the gconf editor?


Answer by alessio

I personally thought it could be a wrong design in an extended desktop where in the middle of the desktop, a launcher is present. Yet, notice that the launcher has new settings :

enter image description here

The reveal sensitivity allows you to adjust how much the launcher is sensitive to your mouse crossing. The higher, the more you have to push the mouse against the launcher to reveal it. While auto-hide is activated, and about 27 % of reveal sensitivity, you can surf your mouse from the left external monitor to the right one or the opposite, easily without accidently revealing the launcher. Check the poll, if you want to vote for this option.

Thanks to Hanynowsky's answer http://askubuntu.com/a/111316/29209


Tags: unity (Next Q), multiple-monitors (Next Q)


Q: How do I modify or disable the HUD's use of the Alt key?

Tags: unity (Next Q), shortcut-keys (Next Q)

A number of games, Emacs, and the terminal make extensive use of the Alt key. Can Unity be configured to respect this key, rather than launching the HUD with it?

Tags: unity (Next Q), shortcut-keys (Next Q)

User: eoghanm


Answer by nastys

Open the System Settings application either by going to Session Indicator in Unity panel, or by searching for System Settings using the HUD.

enter image description here

Then go to Keyboard > Shortcuts > Launchers. You can redefine the HUD key with the Key to show the HUD option. Pressing Backspace will disable the HUD shortcut altogether.

Screenshot of Keyboard settings window, in the Launchers section

If you set it to Alt manually, the setting distinguishes between the left and right Alt key. So if you want to maintain general behaviour and still use Alt combinations, this may be an alternate solution for you.


Answer by jokerdino

You can use compizconfig-settings-manager Install compizconfig-settings-managerto change the key used to show the HUD.

To install it, run the following command in a terminal:

sudo apt-get install compizconfig-settings-manager

· What are some of the issues with ccsm and why should I not use it?

After installing it, open it and go to Ubuntu Unity Plugin.

enter image description here

Click on the button for the option Key to show the HUD and a dialog similar to the one shown below will appear.

enter image description here

Click on Grab key combination and press your desired new key combination and press enter. After that, click on OK button and the new key combination will trigger the HUD from now on.


Tags: unity (Next Q), shortcut-keys (Next Q)


Q: What happens under the covers to log me in and start up Unity or another Graphical User Interface?

Tags: unity (Next Q), lightdm (Next Q)

When there's trouble, it might be good to understand what happens under the covers to sign a user into a GUI session and get a Unity (or other window manager) to bring up a desktop.

Tags: unity (Next Q), lightdm (Next Q)

User: john-s-gruber


Answer by john-s-gruber

How a desktop user GUI session gets started with Ubuntu 12.04-14.04

Here's the chain of events:

The Ubuntu Linux kernel and upstart

The kernel starts the init process as process number 1. This is upstart for Ubuntu 12.04.

Upstart jobs are in /etc/init/


Man page: http://manpages.ubuntu.com/manpages/precise/man5/init.5.html

Logs: kernel log (dmesg; copied to /var/log/syslog), /var/log/upstart/jobname.log, other logs determined by started jobs.

Source: /etc/init/lightdm.conf


The upstart job executes /usr/sbin/lightdm . We probably can expect this to be converted to a systemd service unit over time.

Lightdm


Man page: http://manpages.ubuntu.com/manpages/precise/en/man1/lightdm.1.html
Also: https://wiki.ubuntu.com/LightDM

Logs: /var/log/syslog, /var/log/lightdm/lightdm.log and /var/log/lightdm/*, /var/log/auth.log for PAM, /var/log/Xorg.0.log for the Xorg X server.

Source: man page and /var/log/lightdm/lightdm.log


lightdm get's started fairly late in the init process, for example, the system dbus must to be already started, the filesystem has to be ready, and the graphics display system must be ready.

lightdm creates an xauthority file and then starts X, starting it on VT 7, the virtual terminal you get if you press Alt+Ctrl+F7. When X is started lightdm signals for the Plymouth splash screen program to quit. It's essential that this happens after all of the tty's (1-6) have started.

Since July 2013 Mir support items have been added to lightdm, but those aren't used by default for desktop systems as of 14.04.

X attempts to use the most advanced drivers possible. It's own drivers are loaded from /usr/lib/xorg/modules/ . Note that there exist both kernel drivers and xorg drivers for many devices, with the xorg drivers almost certainly using the kernel ones. dri and glx are important features, in particular, for advanced high performance graphics. Logs are stored for X in /var/log/Xorg.0.log .

There is communications over the system dbus about this "seat" and possible user names are acquired. lightdm uses X to draw the screen. unity-greeter is used to assist in the process.

As you select the various possible userid's that userid's backgound image is used.

lightdm get's the names of potential window-managers/systems from /usr/share/xsessions/*.desktop.

Account information is acquired via the accountsservice accounts-daemon over dbus.

lightdm and the greeter use PAM to authenticate the user. Once authenticated, PAM will start a gnome-keyring-daemon daemon with the --login option and feed it the user's password so that it can unlock the user's login keyring, if present. See https://live.gnome.org/GnomeKeyring/Pam and man 8 pam_unix for more information. PAM stores log information in /var/log/auth.log and is controlled by /etc/pam.conf (almost empty) and /etc/pam.d/*. In particular, see /etc/pam.d/lightdm and /etc/pam.d/lightdm-autologin.

Once the user is authenticated privileges are dropped and a file is written to ~user/.dmrc describing the session. For example:

[Desktop]

Session=ubuntu

or

[Desktop]

Session=awesome

The .desktop files from /usr/share/xsessions/*.desktop now determine the rest of the startup sequence.

For example here's the one for Unity:

[Desktop Entry]

Name=Ubuntu

Comment=This session logs you into Ubuntu

Exec=gnome-session --session=ubuntu

TryExec=unity

Icon=

Type=Application

X-Ubuntu-Gettext-Domain=gnome-session-3.0

The /usr/sbin/lightdm-session shell script is run with the arguments gnome-session --session=ubuntu (sic.--'ubuntu', not 'unity')

lightdm-session


Logs: ?
Error Logs: ~/.xsession-errors
Started Process Logs: ~/.cache/upstart/*
Source: /usr/sbin/lightdm-session


/usr/sbin/lightdm-session then takes these steps:

Runs:

· /etc/profile, $HOME/.profile

· /etc/xprofile $HOME/.xprofile;

· loads resources from /etc/X11/Xresources and $HOME/.Xresources, if they exist, loads the keyboard map with setxbmap using the contents of /etc/X11/Xkbmap and $HOME/.Xkbmap;

· if not using XKB uses xmodmap against any existing /etc/X11/Xmodmap and $HOME/.Xmodmap

· runs scripts in /etc/X11/xinit/xinitrc.d;

· runs the Xsession scripts in /etc/X11/Xsession.d/*, using the options in /etc/X11/Xsession.options.

One of these starts ssh-agent (redundant), another executes $HOME/.xsessionrc. Another starts session-dbus (both ssh-agent and session-dbus as allowed in the above Xsession.options file). This session dbus is useful for communications between processes regarding this single user session.

ssh-agent can hold onto ssh keys for the session if they are ssh-add 'ed some time during the session, but gnome-keyring-daemon does the same thing.

/etc/X11/Xsession.d/50_check_unity_support runs /usr/lib/nux/unity_support_test and if it fails exports LIBGL_ALWAYS_SOFTWARE=1 to the environment so that llvmpipe will be used to software render the desktop.

Starting with Ubunu 13.10: /etc/X11/Xsession.d/00upstart sets variable UPSTART to 1 /etc/X11/Xsession.d/99upstart checks that variable and if set substitutes init --user to the other items set to $STARTUP. Thus user-mode upstart starts those upstart jobs in /usr/share/upstart/sessions. One of those is gnome-session.conf which starts gnome-session.

Unless already done, finally lightdm-session starts a window manager, or for unity, the above starts the gnome-session session manager.

It appears that lightdm-session takes on the traditional role of xsession. Its man page is at http://manpages.ubuntu.com/manpages/precise/man5/Xsession.5.html . lightdm considers it to be a session-wrapper.

gnome-session session manager (Unity and Gnome Shells)


Manpage: http://manpages.ubuntu.com/manpages/precise/en/man1/gnome-session.1.html
Logs: ?

Source: man page


gnome-session is used for Unity, but not for awesome by default, for example. See the above .desktop files.

gnome-session starts the specified program from /usr/share/gnome-session/sessions/ and starts applications from ~/.config/autostart/ and /etc/xdg/autostart.

Here's one example from /etc/xdg/autostart:

Skip code block

$cat /etc/xdg/autostart/nm-applet.desktop

[Desktop Entry]

Name=Network

Comment=Manage your network connections

Icon=nm-device-wireless

Exec=nm-applet

Terminal=false

Type=Application

NoDisplay=true

NotShowIn=KDE;

X-GNOME-Bugzilla-Bugzilla=GNOME

X-GNOME-Bugzilla-Component=general

X-GNOME-Autostart-enabled=true

X-Ubuntu-Gettext-Domain=nm-applet

Another, /etc/xdg/autostart/gnome-keyring-ssh.desktop, starts gnome-keyring-daemon with the --start option, completing the start of that daemon process and storing important information about it in the environment for potential use by ssh.

From a ps aux list it appears that gnome-session starts window managers with dbus-launch.

Window Managers

Awesome Window Manager


Man page: http://manpages.ubuntu.com/manpages/precise/en/man1/awesome.1.html
Logs: ?

Source: man page, config file examination


Here's the awesome.desktop file in /usr/share/xsessions/ used by lightdm-session:

[Desktop Entry]

Encoding=UTF-8

Name=awesome

Comment=Highly configurable framework window manager

TryExec=awesome

Exec=awesome

As you can see, the entry simply causes the awesome window manager to be executed. It reads its own configuration files, including /etc/xdg/awesome/rc.lua from the awesome package. It can be configured with $HOME/.config/awesome/rc.lua.

Unity


Source: config file examination


Here's the ubuntu.desktop file in /usr/share/xsessions/ :

[Desktop Entry]

Name=Ubuntu

Comment=This session logs you into Ubuntu

Exec=gnome-session --session=ubuntu

TryExec=unity

Icon=

Type=Application

X-Ubuntu-Gettext-Domain=gnome-session-3.0

This starts the gnome session described in /usr/share/gnome-session/sessions/ubuntu.session

Here is that file:

[GNOME Session]

Name=Ubuntu

RequiredComponents=gnome-settings-daemon;

RequiredProviders=windowmanager;panel;

DefaultProvider-windowmanager=compiz

DefaultProvider-panel=compiz

IsRunnableHelper=/usr/lib/nux/unity_support_test

FallbackSession=ubuntu-2d

DesktopName=Unity

The IsRunnableHelper program run by gnome-session in 12.04 determines whether unity can be run or whether ubuntu-2d will run. If it makes a mistake and says unity can run and it cannot, there's trouble. Choose ubuntu-2d manually in lightdm if that happens to you. While it returns a return code, we can see what it is doing by running it with the -p option.

Skip code block

$ /usr/lib/nux/unity_support_test -p

OpenGL vendor string: X.Org R300 Project

OpenGL renderer string: Gallium 0.4 on ATI RS690

OpenGL version string: 2.1 Mesa 8.0.2

Not software rendered: yes

Not blacklisted: yes

GLX fbconfig: yes

GLX texture from pixmap: yes

GL npot or rect textures: yes

GL vertex program: yes

GL fragment program: yes

GL vertex buffer object: yes

GL framebuffer object: yes

GL version is 1.4+: yes

Unity 3D supported: yes

For 12.10 and later unsupported hardware uses llvmpipe software to render what the hardware can't. Its configuration file is simpler than the above. See above for how it is enabled.

We can see from the above files that gnome-session must start the settings daemon, and start compiz for purposes of running a window manager and any panels.

compiz


Man page: http://manpages.ubuntu.com/manpages/precise/en/man1/compiz.1.html
Logs: ?
Source: http://en.wikipedia.org/wiki/Compiz, file system examination


Once compiz is started, it runs various plugins. Before 12.10 gnome-settings are used to define these. They can be changed with ccsm (compiz config settings manager) or with gconf-editor. The plugin settings are stored in apps/compiz-1/general/screen0/options under active_plugins. Duplicates have caused me to have segfaults with compiz. These are stored in the user's home directory in the ~/.gconf/ directory organized as above. The actual values are stored in %gconf.xml files there.

Since 12.10 these plugins are stored in binary in your ~/.config/dconf/user file. The dconf, or gsettings method of storing settings is newer. You can see all of these settings with dconf dump /org/gnome/.

Unityshell is one of these plugins. It uses the nux project as an embeded toolkit. Images are drawn on textures in 3 dimensional space with specified transparency values. These are processed by compiz and sent to either llvm or to advanced graphics drivers to have the graphics engines on the system's computer graphic hardware composite and render them. Generally, this is as opposed to rendering images directly to a framebuffer as was done more traditionally. This complicated chain of events is what requires more advanced drivers, and sometimes prompts the use of proprietary graphics drivers in Ubuntu.


Tags: unity (Next Q), lightdm (Next Q)


Q: How do I get the Skype status icon back? (on panel/tray)

Tags: unity indicator (Next Q), skype (Next Q)

I installed Skype 4.0 following this guide. However my little Skype icon in the unity status bar (in the top right corner with clock, volume, etc.) is gone. How do I get it back?

Tags: unity indicator (Next Q), skype (Next Q)

User: miceterminator


Answer by izx

You may need to do two things:

1. Install the sni-qt libraries.

Install sni-qt Install banshee(click on the link), or with sudo apt-get install sni-qt sni-qt:i386 from the terminal, and then restart Skype. The tray/panel icon should now be back!

The reason this step is required is because sni-qt is installed automatically by the Ubuntu repository Skype package, but NOT by the Skype deb you directly download. Once Skype 4.0 is in the Ubuntu repos, you can install from there and this will no longer be necessary.

2. You may also need to whitelist the indicator

We don't know why, but for some systems this additional step is required before the indicator will show (thanks to Bruno Pereira!)

Steps:

1. Install the package dconf-toolsInstall dconf-tools(click on the link), or from the terminal with sudo apt-get install dconf-tools

2. Open dconf editor from the Dash (or dconf-editor from terminal):

enter image description here

3. On the left sidebar, use the triangles to navigate to desktop > unity > panel. On Ubuntu 12.10 you instead need to navigate to com > canonical > unity > panel. Double-click on the orange [JavaEmbedded...] part on the right, and add ,'skype' to allow the Skype indicator to show, as below:

enter image description here

4. Press Enter, close dconf editor, logout and login -- your indicator should now be back!


Answer by one-zero

Enable Skype Icon on Unity Notification Panel on Ubuntu 12.04 LTS

When you do a fresh install of Ubuntu 12.04 (Or any version with Unity for that matter), you install Skype and expect it to work as it used to. But if you close the main window - you soon notice that Skype icon is not being displayed in top panel.

To fix this you will need to run a few commands. So open up your terminal and run this:

gsettings get com.canonical.Unity.Panel systray-whitelist

You should get something like this:

['JavaEmbeddedFrame', 'Wine', 'Update-notifier']

Basically this means, that Skype is not whitelisted, thus is not allowed by default to display its tray icon. We need to fix this. Append 'Skype' to the list so that you have something like this:

['JavaEmbeddedFrame', 'Wine', 'Update-notifier', 'Skype']

Then wrap it with double quotes () and add gsettings set com.canonical.Unity.Panel systray-whitelist in front of it. At this point you should have something like this:

gsettings set com.canonical.Unity.Panel systray-whitelist "['JavaEmbeddedFrame', 'Wine', 'Update-notifier', 'Skype']"

Now just copy this to your Terminal and execute the command. Reboot afterwards. Now you should see the icon.

Source enter link description here


Tags: unity indicator (Next Q), skype (Next Q)


Q: Is it possible to make indicator-appmenu ignore a specific application?


Q: Why is Ubuntu switching to Unity?


Q: How can I configure Unity's launcher auto-hide behavior?


Q: What's the right terminology for Unity's UI elements?


Q: How do I enable or disable the global application menu?


Q: How can I edit/create new launcher items in Unity by hand?


Q: Unity doesn't load, no Launcher, no Dash appears


Q: How do I reset my Unity configuration?


Q: What are Unity's keyboard and mouse shortcuts?


Q: How do I build Unity from source?


Q: How can I keep recent files from appearing in Unity?


Q: What can replace system monitoring in the top Gnome Panel in Unity?


Q: How do I access and enable more icons to be in the system tray?


Q: How do I put a web application on the Launcher?


Q: How do I install the Ask Ubuntu Unity Lens, and how do I use it?


Q: How do I restart Unity


Q: Can I move the Unity launcher?


Q: How can I reduce or increase the number of workspaces in Unity?


Q: Can I use the Unity launcher icon to minimize applications/windows?


Q: Is there an easy way to rearrange or move the icons in the Unity launcher?


Q: How do I make a Theme from scratch for Unity?


Q: Am I using Unity or Unity 2D?


Q: How do I change the default session for when using auto-logins?


Q: How do I set focus follows mouse?


Q: What is the "show desktop" keyboard shortcut?


Q: How do I revert Alt-tab behavior to switch between windows on the current workspace?


Q: How can I set default terminal used in Unity?


Q: How to change tooltip background color in Unity?


Q: How to pin Eclipse to the Unity launcher?


Q: What are some of the issues with CCSM and why would I want to avoid it?


Q: How can I remove duplicate second Unity Launcher on a Dual Screen setup?


Q: How do I disable mouse magnet on middle edge with multi monitors?


Q: How do I modify or disable the HUD's use of the Alt key?


Q: What happens under the covers to log me in and start up Unity or another Graphical User Interface?


Q: How do I get the Skype status icon back? (on panel/tray)