Difference between revisions of "Unity"

From ArchWiki
Jump to: navigation, search
(From source)
(20 intermediate revisions by 6 users not shown)
Line 1: Line 1:
 
[[it:Notify OSD]]
 
[[it:Notify OSD]]
[[zh-CN:Notify OSD]]
+
[[ja:Unity]]
 +
[[zh-CN:Unity]]
 
[[Category:Desktop environments]]
 
[[Category:Desktop environments]]
 
{{Article summary start|Summary}}
 
{{Article summary start|Summary}}
Line 8: Line 9:
 
{{Article summary end}}
 
{{Article summary end}}
  
[http://unity.ubuntu.com/ Unity] is an alternative shell for the GNOME desktop environment, developed by Canonical in its Ayatana project. It consists of several components including the Launcher, Dash, lenses, Panel, indicators, Notify OSD and Overlay Scrollbar. Unity used to available in two implementations: 'Unity' is the 3D accelerated version, which uses Compiz window manager and Nux toolkit; and 'Unity 2D' is a lighter alternative, which uses Metacity window manager and Qt toolkit. Unity 2D is already dropped by Canonical from Ubuntu 12.10. Instead a version powered by Gallium3D llvmpipe alternative is used.
+
[http://unity.ubuntu.com/ Unity] is an alternative shell for the GNOME desktop environment, developed by Canonical in its Ayatana project. It consists of several components including the Launcher, Dash, Lenses, Panel, Indicators, Notify OSD and Overlay Scrollbar. Unity used to be available in two implementations: 'Unity' is the 3D accelerated version, which uses Compiz window manager and Nux toolkit; 'Unity 2D' is a lighter alternative, which uses Metacity window manager and the Qt toolkit. Unity 2D was dropped by Canonical from Ubuntu 12.10 on. Instead an alternative version powered by Gallium3D llvmpipe is used.
  
 
== Installation ==
 
== Installation ==
There are two ways to install Unity on Archlinux:
+
There are two ways to install Unity on Archlinux: from the source and from a repository.
*'''from source code'''
+
 
*'''from repository'''
+
 
=== From source ===
 
=== From source ===
All of the pkgbuilds can be browsed in [https://github.com/chenxiaolong/Unity-for-Arch Github repository], where [https://github.com/chenxiaolong/Unity-for-Arch Unity-For-Arch] provides a minimal working Unity shell, [https://github.com/chenxiaolong/Unity-for-Arch-Extra Unity-For-Arch-Extra] provides some additoinal applications including '''lightdm-ubuntu'''(lightdm with ubuntu patch), '''light-themes''', '''ubuntu-tweak'''(a popular ubuntu tweak tool) and so on.
+
All of the PKGBUILDs can be browsed on the [https://github.com/chenxiaolong/Unity-for-Arch Github repository], where [https://github.com/chenxiaolong/Unity-for-Arch Unity-For-Arch] provides a minimal working Unity shell, and [https://github.com/chenxiaolong/Unity-for-Arch-Extra Unity-For-Arch-Extra] provides some additional applications, including '''lightdm-ubuntu''' (lightdm with ubuntu patches), '''light-themes''', '''ubuntu-tweak''' (a popular unity tweak tool) and some more.
  
To install minimal Unity shell:
+
To install a minimal Unity shell:
  
1. 'cd' to a directory that you want to keep the sources in and then run:
+
1. 'cd' into a directory, where you want to keep the sources, and run:
 
{{bc|$ git clone https://github.com/chenxiaolong/Unity-for-Arch.git}}
 
{{bc|$ git clone https://github.com/chenxiaolong/Unity-for-Arch.git}}
Where {{Pkg|git}} is required.
+
For this to work, {{Pkg|git}} is required.
  
2 Open the README file and build packages according to the order listed. Basically run:
+
2 Open the README file and build packages according to the ordered list. Basically run:
 
{{bc|$ cd packagename
 
{{bc|$ cd packagename
 
$ rm -rvf # Clears out any files from a previous build
 
$ rm -rvf # Clears out any files from a previous build
Line 30: Line 30:
 
3. Log out and log into the Unity session.
 
3. Log out and log into the Unity session.
  
To use lightdm to start Unity, almost the same steps need to be followed to instal '''lightdm-ubuntu''' and '''lightdm-unity-greeter''' from [https://github.com/chenxiaolong/Unity-for-Arch-Extra Unity-For-Arch-Extra]. And lightdm needs to be added to autostart daemons.
+
To use '''lightdm''' to start Unity, follow the same steps mentionned above to install '''lightdm-ubuntu''' and '''lightdm-unity-greeter''' from the [https://github.com/chenxiaolong/Unity-for-Arch-Extra Unity-For-Arch-Extra] repository. '''lightdm''' needs to be added to autostart daemons. For Systemd users, check the [https://wiki.archlinux.org/index.php/Systemd Systemd wiki page].
  
{{Tip|To make this procedure automatic, [https://gist.github.com/3906721 a script] can be used.}}
+
{{Tip|To complete this procedure automatically, [https://gist.github.com/3906721 this script] can be used.}}
  
 
=== From repository ===
 
=== From repository ===
Line 53: Line 53:
  
 
{{Tip| There are many ubuntu-patched packages that replace original Arch packages.
 
{{Tip| There are many ubuntu-patched packages that replace original Arch packages.
       Also it is recommended to use freetype2-ubuntu and libxft-ubuntu from AUR.}}
+
       It is also recommended to use freetype2-ubuntu from '''AUR'''.}}
  
{{Warning|Remember you're installing '''unofficial''' packages that are unsupported by the Arch Linux developers.}}
+
{{Warning|Remember that you are installing '''unofficial''' packages which are not supported by the Arch Linux developers.}}
{{Warning|Almost all of the packages related to Unity in AUR are outdated. Don't mix those packages with those from the repository.}}
+
{{Warning|Almost all packages related to Unity in '''AUR''' are outdated. Do not mix those packages with the ones provided from the repository.}}
  
 
==Update==
 
==Update==
Line 74: Line 74:
  
 
==Trouble Shooting==
 
==Trouble Shooting==
 +
 +
=== Unity notifications doesn't work ===
 +
Ensure following is installed: {{Pkg|notify-osd}}
 +
 +
=== Screensaver locking doesn't work ===
 +
Ensure following is installed: {{Pkg|gnome-screensaver}} . For now you need to also create this file
 +
{{hc|/usr/share/dbus-1/services/org.gnome.ScreenSaver.service|[D-BUS Service]
 +
Name=org.gnome.ScreenSaver
 +
Exec=/usr/bin/gnome-screensaver --no-daemon}}
 +
 +
=== online accounts doesn't work ===
 +
Ensure following is installed: {{Pkg|signon-keyring-extension}} and {{Pkg|gnome-keyring}}. You may also require {{Pkg|telepathy}} to get certain accounts to work.
 +
 +
=== ssh keys aren't remembered by keyring ===
 +
Ensure following is installed: {{Pkg|gnome-keyring}}
 +
 +
=== KDE apps aren't integrated into the HUD and menubar ===
 +
Ensure following is installed: {{Pkg|appmenu-qt}}
 +
 +
=== Files and Folder lens doesn't seem to work or display anything ===
 +
Ensure following is installed: {{Pkg|zeitgeist}} and {{Pkg|zeitgeist-datahub}}
 +
 +
=== Can't right click on desktop ===
 +
Few things this addresses/fixes:
 +
* Can't right click on the desktop
 +
* Title bar at top doesn't display 'Arch Linux Desktop'
 +
* Shortcut keys like Super and Alt doesn't work when there are no active windows
 +
 +
Simply install {{Pkg|gnome-tweak-tool}} then open '''Tweak Tool''' and check '''Have file manager handle the desktop'''. You might to uncheck '''Home icon visible on desktop''' and '''Trash icon visible on desktop'''.
 +
 
===Unity stops working after update===
 
===Unity stops working after update===
 
Try to run:
 
Try to run:
Line 95: Line 125:
 
}}
 
}}
 
in {{ic|.config/gtk3.0/gtk.css}}
 
in {{ic|.config/gtk3.0/gtk.css}}
 +
 +
===Workspace switcher widget dissappeared===
 +
Check this setting: Go to settings, Appearance, Behaviour, Enable workspaces
  
 
===Newly opened window is always placed at (0,0) on the screen===
 
===Newly opened window is always placed at (0,0) on the screen===
Line 101: Line 134:
 
===Window's titlebar still exists when maximized===
 
===Window's titlebar still exists when maximized===
 
'''Metacity-ubuntu''' needs to be used instead of {{Pkg|metacity}}.
 
'''Metacity-ubuntu''' needs to be used instead of {{Pkg|metacity}}.
 +
 +
===''Indicator-messages'' doesn't work properly===
 +
Pidgin and a bunch of other applications can not be integrated into indicator-messages due to its API changes. Wait for the upstream software updates or you can help file a bug report.
  
 
==Known Issues==
 
==Known Issues==
===Ubuntu 12.10 new feature ''Webapps'' doesn't work properly===
 
===''Indicator messages'' doesn't work properly===
 
It doesn't show any menus currently.
 

Revision as of 08:06, 13 February 2013

Summary help replacing me
This article discusses how to install and use Unity. Unity is a shell interface for the GNOME desktop environment. This article covers how to get Unity on your system and how to configure it to fit your needs.
Related
GNOME

Unity is an alternative shell for the GNOME desktop environment, developed by Canonical in its Ayatana project. It consists of several components including the Launcher, Dash, Lenses, Panel, Indicators, Notify OSD and Overlay Scrollbar. Unity used to be available in two implementations: 'Unity' is the 3D accelerated version, which uses Compiz window manager and Nux toolkit; 'Unity 2D' is a lighter alternative, which uses Metacity window manager and the Qt toolkit. Unity 2D was dropped by Canonical from Ubuntu 12.10 on. Instead an alternative version powered by Gallium3D llvmpipe is used.

Installation

There are two ways to install Unity on Archlinux: from the source and from a repository.

From source

All of the PKGBUILDs can be browsed on the Github repository, where Unity-For-Arch provides a minimal working Unity shell, and Unity-For-Arch-Extra provides some additional applications, including lightdm-ubuntu (lightdm with ubuntu patches), light-themes, ubuntu-tweak (a popular unity tweak tool) and some more.

To install a minimal Unity shell:

1. 'cd' into a directory, where you want to keep the sources, and run:

$ git clone https://github.com/chenxiaolong/Unity-for-Arch.git

For this to work, git is required.

2 Open the README file and build packages according to the ordered list. Basically run:

$ cd packagename
$ rm -rvf # Clears out any files from a previous build
$ makepkg -sci # '-s' means install needed dependencies, '-c' means clear left files after build and '-i' means install the package after it is built.

3. Log out and log into the Unity session.

To use lightdm to start Unity, follow the same steps mentionned above to install lightdm-ubuntu and lightdm-unity-greeter from the Unity-For-Arch-Extra repository. lightdm needs to be added to autostart daemons. For Systemd users, check the Systemd wiki page.

Tip: To complete this procedure automatically, this script can be used.

From repository

Compiled packages are also available at unity.humbug.in and unity.xe-xe.org. Take unity.xe-xe.org as an example, to install the packages, add

[unity]
Server = http://unity.xe-xe.org/$arch

[unity-extra]
Server = http://unity.xe-xe.org/extra/$arch

to /etc/pacman.conf

Run:

$ pacman -Suy
$ pacman -S $(pacman -Slq unity)
Tip: There are many ubuntu-patched packages that replace original Arch packages. It is also recommended to use freetype2-ubuntu from AUR.
Warning: Remember that you are installing unofficial packages which are not supported by the Arch Linux developers.
Warning: Almost all packages related to Unity in AUR are outdated. Do not mix those packages with the ones provided from the repository.

Update

For Unity repository, the update is the same as packages from official repositories.

Otherwise:

1. 'cd' into the 'Unity-for-Arch' directory where it was originally cloned

2. pull all of changes from github repository:

$ git pull

3. Check if packages need to be updated:

$ ./What_can_I_update\?.py

4. If any packages need to be updated, just build them like mentioned above in from source section.

Note: Sometimes if certain crucial package is updated, those package which depend on it will also need to be recompiled though they won't be reported. For example, Unity is often required to be recompiled if nux gets updated

Trouble Shooting

Unity notifications doesn't work

Ensure following is installed: notify-osd

Screensaver locking doesn't work

Ensure following is installed: gnome-screensaver . For now you need to also create this file

/usr/share/dbus-1/services/org.gnome.ScreenSaver.service
[D-BUS Service]
Name=org.gnome.ScreenSaver
Exec=/usr/bin/gnome-screensaver --no-daemon

online accounts doesn't work

Ensure following is installed: signon-keyring-extension and gnome-keyring. You may also require telepathy to get certain accounts to work.

ssh keys aren't remembered by keyring

Ensure following is installed: gnome-keyring

KDE apps aren't integrated into the HUD and menubar

Ensure following is installed: appmenu-qt

Files and Folder lens doesn't seem to work or display anything

Ensure following is installed: zeitgeist and zeitgeist-datahub

Can't right click on desktop

Few things this addresses/fixes:

  • Can't right click on the desktop
  • Title bar at top doesn't display 'Arch Linux Desktop'
  • Shortcut keys like Super and Alt doesn't work when there are no active windows

Simply install gnome-tweak-tool then open Tweak Tool and check Have file manager handle the desktop. You might to uncheck Home icon visible on desktop and Trash icon visible on desktop.

Unity stops working after update

Try to run:

$ compiz.reset

and Log out and log into the Unity session.

If it still doesn't work, report an issue on github or discuss it on Arch forum.

Window decoration doesn't work properly

Try to install gnome-tweak-tool to adjust the theme.

Window decoration can't use certain theme

Install metacity-ubuntu instead of metacity.

Some gtk themes look ugly after update to Gnome 3.6

It also happens for unity default theme light-themes. Put

GtkLabel {
background-color: @transparent;
}

in .config/gtk3.0/gtk.css

Workspace switcher widget dissappeared

Check this setting: Go to settings, Appearance, Behaviour, Enable workspaces

Newly opened window is always placed at (0,0) on the screen

Metacity-ubuntu needs to be used instead of metacity. Metacity-ubuntu is now included in Unity-for-Arch again.

Window's titlebar still exists when maximized

Metacity-ubuntu needs to be used instead of metacity.

Indicator-messages doesn't work properly

Pidgin and a bunch of other applications can not be integrated into indicator-messages due to its API changes. Wait for the upstream software updates or you can help file a bug report.

Known Issues