Pantheon
Pantheon is the desktop environment originally created for the elementary OS distribution. It is written from scratch in Vala, using GTK 3 and Granite. With regards to usability and appearance, the desktop has some similarities with GNOME Shell and macOS.
Project Status
Although the elementary OS release schedule and toolchain are bound to Ubuntu's LTS release cycle, development moves quickly and has recently moved to github.
Installation
Packages
Unofficial repository
Alucryd's unofficial repository contains more and more up-to-date packages than the few available in the community repository. To use it add the following lines at the top of your sources in /etc/pacman.conf
:
[extra-alucryd] Server = https://pkgbuild.com/~alucryd/$repo/$arch
Do note that some packages are missing from the repository due to issues with upstream. You will have to supplement the repo with locally compiled packages.
AUR
Alternatively, the PKGBUILDs for the pantheon packages are also available in the AUR.
Desktop Environment
For the minimal Pantheon shell, install pantheon-session-gitAUR, which pulls —among other dependencies— the core components:
- cerbere-gitAUR: Watchdog service; restarts core components if they crash.
- gala-gitAUR: Window and composting manager
- wingpanel-gitAUR: Top panel (holds the launcher, clock, and indicators)
- pantheon-applications-menu-gitAUR: Application launcher formerly known as "Slingshot"
- plank: macOS-style Dock
Services and Configuration
These optional packages provide background services and default settings for Pantheon and elementary OS applications:
- pantheon-default-settings-gitAUR: Default appearance, behavior, and configuration; pulls in theme packages elementary-icon-theme, gtk-theme-elementary-gitAUR, and elementary-wallpapers-gitAUR
- gnome-settings-daemon-elementaryAUR: A patched gnome-settings-daemon-ubuntuAUR required by pantheon-dpms-helper-gitAUR and wingpanel-indicator-power-gitAUR
- pantheon-print-gitAUR: Print settings dialog
- pantheon-polkit-agent-gitAUR: Polkit authentication agent
Theme
These optional 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-greeter or lightdm-pantheon-greeter-gitAUR: LightDM greeter
It is also recommended to install the following fonts:
- ttf-opensans: 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
- gnu-free-fonts: 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 optional elementary OS software suite:
- pantheon-files or pantheon-files-gitAUR: File explorer developed from Marlin
- pantheon-terminal or pantheon-terminal-gitAUR: Terminal emulator
- pantheon-code or pantheon-code-gitAUR: Text editor formerly known as "Scratch"
- pantheon-calculator or pantheon-calculator-gitAUR: Calculator
- pantheon-music or pantheon-music-gitAUR: Audio player formerly known as "Noise"
- pantheon-videos or pantheon-videos-gitAUR: Video player formerly known as "Audience"
- pantheon-calendar-gitAUR: Calendar application formerly known as "Maya", integrates with wingpanel-indicator-datetime-gitAUR
- epiphany-pantheonAUR[broken link: package not found]: Web browser replacing midori-graniteAUR
- pantheon-mail-gitAUR: Email client developed from geary
- pantheon-screenshot or pantheon-screenshot-gitAUR: Screenshot tool
- eidete-bzrAUR: Simple screencaster
- pantheon-photos or pantheon-photos-gitAUR: Photo manager developed from shotwell
- pantheon-camera-gitAUR: Webcam app formerly known as "Snap"
- simple-scan: Simple scan utility
- switchboard or switchboard-gitAUR: Pluggable settings manager similar to gnome-control-center
Launching Pantheon
Via Display manager
pantheon-session-gitAUR provides a gnome-session entry for display managers such as gdm or lightdm.
Autostart applications with a display manager
As a gnome-session, Pantheon implements XDG Autostart.
Via xinit
Alternatively, you can use ~/.xinitrc
to launch the Pantheon shell, by adding exec cerbere
to the end of the file.
Autostart applications with xinit
For applications which do not provide a systemd unit, consider these options:
- Run once when X starts:
- Add it to your
~/.xinitrc
Shell script, before theexec cerbere
line.
- Keep running in the background:
- Add it to the dconf key
io.elementary.desktop.cerbere.monitored-processes
. - Should the process stop, cerbere will respawn it.
- Launch from a .desktop file:
- Use a program like dapperAUR, dex-gitAUR, or fbautostartAUR to implement XDG Autostart.
Configuration
Configure Pantheon via switchboard or switchboard-gitAUR and its plugs (switchboard-plug-*), which must be installed separately. Not all of gnome-control-center's settings panels have been ported. In addition, except plank, all the Pantheon components store their configuration in the org.pantheon
or io.elementary
gsettings keys, which can be edited with dconf-editor.
Wingpanel
Wingpanel does not come with any indicators; they must be installed separately.
At the minimum, you'll probably want to install:
- pantheon-applications-menu or pantheon-applications-menu-gitAUR: Applications menu and "Run" dialog
- wingpanel-indicator-datetime or wingpanel-indicator-datetime-gitAUR: Clock and calendar widget
- wingpanel-indicator-session or wingpanel-indicator-session-gitAUR: User and session menu (Switch user, Logout, Shutdown, etc.)
Third-party indicators
- If launched by a display manager, append
Pantheon;
toOnlyShowIn=
in third-party indicators' *.desktop files
- If launched by ~/.xinitrc, add third-party indicators to one of the start-up methods described above.
- Ayatana Indicators require wingpanel-indicator-ayatanaAUR or wingpanel-indicator-namarupa-gitAUR to appear in wingpanel.
-
wingpanel-indicator-session needs light-locker or xscreensaver-dbus-screenlockAUR installed for the
Lock
menu item.
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.
~/.config/plank/
and configuration in the gsettings key net.launchpad.plank
Pantheon Files
If you want to enable context menu entries such as for file-roller to extract/compress archives, then you have to additionally install contractor or contractor-gitAUR.
Terminal
Opacity
To make pantheon-terminal (semi-)transparent, set the dconf key io.elementary.terminal.settings.background
to your desired background color and opacity.
Known Issues
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-elementary, gtk-theme-elementary-gitAUR or add the following code to your theme's css or the override file in ~/.config/gtk-3.0/gtk.css
:
/************ * Terminal * ***********/ PantheonTerminalPantheonTerminalWindow.background { background-color: transparent; }
Wingpanel transparency
Wingpanel is transparent by design when using gtk-theme-elementary 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 another theme, add the following code to 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; }
Desktop crashes at login
"Oh no! Something has gone wrong."
One of the RequiredComponents
in Pantheon's session file may be failing, causing gnome-session to crash as well.
You may work around this by editing /usr/share/gnome-session/sessions/pantheon.session
, removing org.gnome.SettingsDaemon
and everything after it on that line.
Subsequent login attempts return to display manager
See gnome-session crashes on session startup.
Most of the time, waiting a little longer to log in is sufficent to clear whatever blockage the previous session has left behind.