# Pantheon

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

## Installation

This article or section is out of date.

Reason: Pantheon development is moving to github. Most corresponding -git packages for deprecated -bzr packages are already available in the AUR; some packages need updates for new dependencies. (Discuss in Talk:Pantheon#)
Note: Although their release schedule and toolchain are bound to Ubuntu's LTS release cycle, elementary OS development moves quickly. The *-bzr and *-git packages contain the most recent updates and are less likely to have obsolete dependencies in Archlinux, but occasionally have stability or build issues and may not be compatible with the standard releases.

Alucryd's unofficial repo contains more and more up-to-date packages than the few available in community. To use it add the following lines at the top of your sources in `/etc/pacman.conf`:

    [pantheon]
    SigLevel = Optional
    Server = https://pkgbuild.com/~alucryd/$repo/$arch

Note: The PKGBUILDs for these packages are also available in the AUR.

### Desktop Environment

To get the minimal Pantheon desktop interface, start by installing pantheon-session-bzrAUR, which pulls--among other dependencies--the core components:

- cerbere-bzrAUR[broken link: package not found]: Watchdog service to keep core Pantheon apps running
- gala-bzrAUR: Window Manager
- wingpanelAUR: Top panel (release version)
- slingshot-launcherAUR: Application launcher (release version)

You may additionally install these packages as well:

- plank or plank-bzrAUR: MacOS-like Dock
- wingpanel-gitAUR: Top panel (development version)
- slingshot-launcher-bzrAUR: Application launcher (development version)

### Services and Configuration

These packages provide background services and default settings for Pantheon and elementary OS applications:

- pantheon-default-settings-bzrAUR: Default desktop appearance, behavior, and application configuration; pulls in theme packages elementary-icon-theme, gtk-theme-elementary-bzrAUR[broken link: package not found], pantheon-backgrounds-bzrAUR, and plank-theme-pantheon-bzrAUR[broken link: package not found].
- contractor or contractor-gitAUR: Service for sharing data between apps
- gnome-settings-daemon-elementaryAUR: A patch against gnome-settings-daemon-ubuntuAUR to support elementary-dpms-helper-bzrAUR and wingpanel-indicator-power-gitAUR
- pantheon-print-gitAUR: Print settings dialog
- pantheon-agent-polkit-bzrAUR: Polkit authentication agent

### Theme

These packages contribute to the look and feel of the desktop:

- elementary-icon-theme or elementary-icon-theme-gitAUR: Icon theme designed to be smooth, sexy, clear, and efficient
- lightdm-pantheon-greeterAUR or lightdm-pantheon-greeter-gitAUR: LightDM greeter

It is also recommended to install the following fonts:

- ttf-opensansAUR: Open Sans Fonts
- ttf-ralewayAUR: Raleway Font
- ttf-dejavu: Font family based on the Bitstream Vera Fonts
- ttf-droid: General-purpose fonts released by Google as part of Android
- ttf-freefont: Set of free outline fonts covering the Unicode character set
- ttf-liberation: Red Hats Liberation fonts

### Applications

These are some of the original, patched, and selected packages that comprise the elementary OS software suite:

- pantheon-files or pantheon-files-bzrAUR: File explorer based on Marlin
- pantheon-terminal or pantheon-terminal-gitAUR: Terminal emulator
- scratch-text-editor or scratch-text-editor-gitAUR: Text editor
- pantheon-calculatorAUR or pantheon-calculator-gitAUR: Calculator
- pantheon-music-gitAUR: Audio player developed from noise-player
- pantheon-videos-gitAUR: Video player developed from audience
- pantheon-calendar-gitAUR: Calendar developed from maya-calendarAUR
- midori-graniteAUR or midori-granite-bzrAUR: Web browser, replaced upstream by epiphany-pantheon-bzrAUR
- pantheon-mail-gitAUR: Email client based on geary
- screenshot-tool-bzrAUR: Screenshot tool
- eidete-bzrAUR: Simple screencaster
- pantheon-photos or pantheon-photos-gitAUR: Photo manager based on shotwell
- pantheon-camera-gitAUR: Webcam app developed from snap-photoboothAUR
- elementary-scan-bzrAUR: Simple scan utility (does not build)
- pantheon-notes-bzrAUR: Note taking app, replacing footnote-bzrAUR
- switchboardAUR or switchboard-gitAUR: Pluggable settings manager similar to gnome-control-center

## Launching Pantheon

### Via Display manager

pantheon-session-bzrAUR provides a gnome-session entry for display managers such as gdm or lightdm.

### Via xinit

Alternatively, you can use `~/.xinitrc` to launch the Pantheon shell, such as:

    #!/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 with `~/.xinitrc`

This method does not support XDG autostart. However, there are 3 other ways to achieve this for applications which do not provide a systemd unit:

- You may add any program to your `~/.xinitrc`, preferably right before the `exec cerbere` line. This is the better choice for one-shot programs.
- Or you may edit the `org.pantheon.desktop.cerbere.monitored-processes` key using dconf-editor and add the programs of your choice. This method is best for applications which keep running in the background.
- Or you may use a program like dapperAUR, dex-gitAUR, or fbautostartAUR to add support for XDG autostart in your `~/.xinitrc`.

Note: Keep in mind that applications started via cerbere cannot be terminated, they will keep respawning up to `org.pantheon.desktop.cerbere.max-crashes`

## Configuration

Configure Pantheon via switchboardAUR and its plugs (switchboard-plug-*), which must be installed separately. The intent is to replace gnome-control-center, but not all settings--particularly not third-party applications' settings--have been ported. In some cases, you may prefer to use gnome-control-center or gnome-tweak-tool instead. All Pantheon settings, except plank's, can also be altered via dconf and are located in the `org.pantheon` key. Use dconf-editor for easy editing.

Note: Although abandoned, switchboard-plug-elementary-tweaks-bzrAUR remains a useful tool for configuring many aspects of Pantheon, including plank.

### Plank

#### Adding new application icons

Either drag and drop a desktop file on to the dock, or right click on a running application and select "Keep in dock". You can then reorder icons by drag and drop.

Note: Plank stores its configuration files in `~/.config/plank/`

### Pantheon Files

#### Enable context menu entries

If you want to enable context menu entries such as for file-roller to extract/compress archives, then you have to additionally install contractor.

### Terminal

#### Opacity (transparency)

To make pantheon-terminal (semi-)transparent, open dconf-editor and go to `org.pantheon.terminal.settings.opacity` to set your desired opacity. For pantheon-terminal-gitAUR, the background color and transparency are set by `org.pantheon.terminal.settings.background`.

## Known Issues

This article or section is out of date.

Reason: This information is quite old; some of these issues may have been resolved. (Discuss in Talk:Pantheon#)

### Usability

#### Cannot interact with the LightDM Pantheon greeter

You need to delete `/var/lib/lightdm/.pam_environment`. Do note however that this file is a workaround for the following LightDM bug: https://bugs.launchpad.net/ubuntu/+source/unity-greeter/+bug/1024482

#### Gala crashes on start

Unconfigured gala tries to use default gnome wallpaper, which is absent unless you have the package gnome-themes-standard installed. Install it workaround the crash; it is safe to remove after you configure another wallpaper.

#### No mouse cursor after login

The Gala window manager is most likely not running. Either install cerbere-gitAUR or add `gala` to the list of cerbere's monitored processes.

### Indicators

#### Indicators not appearing in wingpanel

Wingpanel does not come with any indicators; they must be installed separately.

Note: wingpanelAUR supports Ayatana indicators, while wingpanel-gitAUR has native indicators (wingpanel-indicator-*-git).

#### Third-party indicators

- If launched by a display manager, append `Pantheon` to `OnlyShowIn=` in third-party indicators' *.desktop files

- If launched by ~/.xinitrc, add third-party indicators to one of the start-up methods described above.

- For wingpanel-gitAUR, indicators designed for Unity require wingpanel-indicator-ayatana-bzrAUR.

#### Indicator-session menus not responsive

- indicator-sessionAUR relies on dbus methods provided by Unity for most of its functions and fails to fallback to gnome or systemd methods in its absence.

- wingpanel-indicator-session-gitAUR needs light-locker or xscreensaver-dbus-screenlockAUR installed for the `Lock` menu item.

### Appearance

#### Pantheon-terminal transparency

Transparency in pantheon-terminal is not yet fully functional with GTK themes other than the elmentary OS theme. Either use gtk-theme-elementaryAUR, gtk-theme-elementary-gitAUR or add this code to your theme or the override file in `~/.config/gtk-3.0/gtk.css`.

#### Wingpanel transparency

Wingpanel is transparent by design when using gtk-theme-elementaryAUR or gtk-theme-elementary-gitAUR, and becomes opaque when a maximized window occupies your screen. However, using other GTK themes will produce a solid panel most of the time.

To achieve the former behavior within other themes, add the following lines to the end of its css or the override file in `~/.config/gtk-3.0/gtk.css`:

    /*********************
     * wingpanel support *
     ********************/
    .panel {
        background-color: transparent;
        transition: all 1s ease-in-out;
    }

    .panel.maximized {
        background-color: #000;
    }

#### GTK+ applications surrounded by awful black shadow box

The Elementary GTK theme seems to be using its own files and ignoring the `~/.config/gtk-3.0/gtk.css` user-override config file. This has been reported on https://bugs.launchpad.net/elementaryos/+bug/1592441. To work around the issue, go to the file `/usr/share/themes/elementary/gtk-3.0/gtk-widgets.css` and look for the following (around line 3669):

    decoration,
    .window-frame {
        border-radius: 4px 4px 0 0;
        box-shadow: 0 0 0 1px alpha (#000, 0.3),
                    0 14px 28px rgba(0,0,0,0.35),
                    0 10px 10px rgba(0,0,0,0.22);
        margin: 12px;
    }

Replace the above by the the code below

    decoration,
    .window-frame {
        box-shadow: none;
        border: none;
        padding: 0;
        margin: 0;
    }

#### White icons in pantheon-files

Currently there seems to be a bug which displays the view icons in the top location in a white colour instead of black. This can be fixed by installing gtk-theme-elementary-gitAUR or, for gtk-theme-elementaryAUR, add the following line to `gtk-widgets.css`:

    GtkToolItem { color: @text_color; }

Category:

- Desktop environments

Hidden categories:

- Pages or sections flagged with Template:Out of date
- Pages with broken package links