Pantheon
| Summary |
|---|
| This article covers basic installation procedures and configuration methods for Pantheon, the default desktop environment of elementary OS. |
| Related |
| GNOME: A DE which is also based on GTK3. |
Pantheon is the default desktop environment originally created for the elementary OS distribution. It is written from scratch using Vala and the GTK3 toolkit. With regards to usability and appearance, the desktop has some similarities with GNOME Shell and Mac OS X.
Contents |
Installation
Pantheon is split into several packages which are available in the AUR. To get a minimal desktop interface, you may start by installing pantheon-session-bzr. This will pull the following core components:
- cerbere-bzr: Watchdog service to keep core Pantheon apps running
- gala-bzr: Window Manager
- wingpanel-bzr: Top panel
- slingshot-launcher-bzr: Application launcher
- plank-bzr: Pantheon bottom dock
Additionally, you may install the following packages:
- audience-bzr: Video player
- contractor-bzr: Service for sharing data between apps
- dexter-contacts-bzr: Contacts manager (does not build)
- eidete-bzr: Simple screencaster
- elementary-icon-theme: elementary icons
- elementary-scan-bzr: Simple scan utility
- gtk-theme-elementary: elementary GTK theme
- feedler-bzr: RSS feeds reader (does not build)
- footnote-bzr: Note taking app
- geary: Email client
- indicator-pantheon-session-bzr: Session indicator
- lightdm-pantheon-greeter-bzr: LightDM greeter
- maya-calendar-bzr: Calendar
- midori-granite: Web browser
- noise: Audio player
- pantheon-calculator-bzr: Calculator
- pantheon-files-bzr: File explorer
- pantheon-notify-bzr: Notification daemon
- pantheon-print-bzr: Print settings
- pantheon-terminal-bzr: Terminal emulator
- plank-theme-pantheon-bzr: Pantheon theme for plank
- scratch-text-editor-bzr: Text editor
- snap-photobooth-bzr: Webcam app
- switchboard-bzr: Settings manager
- webcontracts-bzr: Web services contracts for use with contractor-bzr
Additional Infos
Unofficial repository
I have set up an unofficial repository for pantheon packages: http://pkgbuild.com/~alucryd/pantheon/. Add the following lines at the top of your sources in /etc/pacman.conf:
[pantheon] SigLevel = Optional Server = http://pkgbuild.com/~alucryd/$repo/$arch
Github repository
All Pantheon related PKGBUILDs can be found on my GitHub repository: https://github.com/alucryd/aur-alucryd/tree/master/pantheon
Packages based on older evolution-data-server
dexter-contacts-bzr and feedler-bzr do not build because they are based on evolution-data-server 3.2. Arch Linux provides version 3.8 which uses a different Vala API.
Wallpaper drawer
The pantheon wallpaper drawer, pantheon-wallpaper-bzr, has been deprecated in favor of the GNOME drawer. This used to be handled by nautilus, but since GNOME 3.8 it is handled directly by gnome-shell, which means we can't have GNOME drawing the wallpaper anymore.
Somehow, we can't use nitrogen either because gala seems to paint a black background all over it (kill gala and the wallpaper appears). Please keep using the deprecated drawer until a solution is found.
Launching Pantheon
Via a Display Manager
pantheon-session-bzr provides a session entry for display managers such as gdm or lightdm.
Via .xinitrc
You can also use ~/.xinitrc with slim to launch the Pantheon shell. The following code will successfully launch a Pantheon session:
#!/bin/sh
if [ -d /etc/X11/xinit/xinitrc.d ]; then
for f in /etc/X11/xinit/xinitrc.d/*; do
[ -x "$f" ] && . "$f"
done
unset f
fi
gsettings-data-convert &
xdg-user-dirs-gtk-update &
/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &
/usr/lib/gnome-settings-daemon/gnome-settings-daemon &
/usr/lib/gnome-user-share/gnome-user-share &
eval $(gnome-keyring-daemon --start --components=pkcs11,secrets,ssh,gpg)
export GNOME_KEYRING_CONTROL GNOME_KEYRING_PID GPG_AGENT_INFO SSH_AUTH_SOCK
exec cerbere
Autostart applications
Pantheon, when launched via ~/.xinitrc, does not support XDG autostart. However, there are 2 other ways to achieve this for applications which do not provide a systemd unit:
- You may add any program to your
~/.xinitrc, preferably right between the cerbere and gala lines. This is the better choice for one-shot programs. - Or you may edit the
org.pantheon.cerbere.monitored-processeskey using dconf-editor and add the programs of your choice. This method is best for applications which keep running in the background.
Configuration
Configuring Pantheon is done via switchboard-bzr and its plugs, some of which are available in the AUR, but close to none work as intended for the moment. Instead, most pantheon settings can be altered via dconf, they are located in the org.pantheon key. Use dconf-editor for easy editing.
Also, part of the configuration is handled by gnome-control-center via a dedicated plug, which unfortunately does not support GNOME 3.8. Use gnome-control-center itself and gnome-tweak-tool instead.