User:Quequotion/Pantheon

From ArchWiki
Jump to navigation Jump to search

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

Community respository

Most of the official Pantheon components and curated apps are available in the community repository.

Unofficial repository

Alucryd's unofficial repository contains a few packages not yet available in the community repository. To use it, add the following lines at the top of your sources in /etc/pacman.conf:

Comment: Messaging seems to be problematic: we need to better communicate the distinction of installation sources, and the degree (or total lack) of support behind each ([community], [aur-alucryd], [aur], [some other recipe for trouble]). quequotion (talk) 15:11, 30 November 2019 (UTC)
[extra-alucryd]
Server = https://pkgbuild.com/~alucryd/$repo/$arch

AUR

Alternatively, PKGBUILDs for [extra-alucryd], as well as many other Pantheon-related packages--such as third-party applications developed for Pantheon and unstable development packages from upstream--are available in the AUR.

Comment: In addition to above re: messaging, which pantheon packages? There are many more packages, and packagers, involved than when this was written. quequotion (talk) 15:11, 30 November 2019 (UTC)

Desktop Environment

For the minimal Pantheon shell, install pantheon-sessionAUR, which depends on the core components:

Tip: Dependencies available only from the Arch User Repository can be prebuilt with makechrootpkg, and pre-installed when clean-chroot building.
Comment: This should list only packages that are "stable release" versions if/when possible. quequotion (talk) 15:11, 30 November 2019 (UTC)

Additional Services and Configuration

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

Comment: This should list only packages that are "stable release" versions if/when possible. quequotion (talk) 15:11, 30 November 2019 (UTC)

Theme

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

It is also recommended to install the following fonts:

Comment: This should list only packages that are "stable release" versions if/when possible. quequotion (talk) 15:11, 30 November 2019 (UTC)

Applications

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

Comment: This should list only packages that are "stable release" versions if/when possible. quequotion (talk) 15:11, 30 November 2019 (UTC)

Launching Pantheon

Comment: These subsections should only list "stable release" packages if/when possible. quequotion (talk) 02:33, 1 December 2019 (UTC)

Via Display manager

pantheon-sessionAUR 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 the exec cerbere line.
  • Keep running in the background:
Add it to the dconf key org.pantheon.desktop.cerbere.monitored-processes.
Should the process stop, cerbere will respawn it.
Use a program like dapperAUR, dex, or fbautostartAUR to implement XDG Autostart.

Configuration

Comment: These subsections should only list "stable release" packages if/when possible. quequotion (talk) 02:33, 1 December 2019 (UTC)

Configure Pantheon via switchboard and its separately-installed plugs. Not all of gnome-control-center's settings panels have been ported. Except for plank, all the Pantheon components store their configuration in the org.pantheon or io.elementary gsettings keys, which can also 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:

Third-party indicators

Native Wingpanel Indicators

Wingpanel indicators will appear when wingpanel restarts. Several are available from the AUR.

Ayatana indicators

These indicators, developed for Ubuntu's discontinued Unity 7 Desktop Environment, are no longer supported, although many third party applications still depend on them.

  • If Pantheon is launched by ~/.xinitrc, add these indicators to one of the start-up methods described above.

Enable session indicator "Lock"

wingpanel-indicator-session needs a locker using the freedesktop sceensaver dbus, such as light-locker or xscreensaver-dbus-screenlockAUR.

Plank

To add a new application icon, either drag and drop a desktop file on to the dock, or right click on a running application's icon and select "Keep in dock".

Note: Plank stores .dockitem launchers in ~/.config/plank/ and its own configuration in the gsettings key net.launchpad.plank

Pantheon Files

Enable context menu entries

To enable context menu entries, such as for file-roller-pantheonAUR to extract/compress archives, then you need to install contractor.

Terminal

Opacity

To make pantheon-terminal (semi-)transparent, set the dconf key io.elementary.terminal.settings.background to the desired background color and transparency.

Known Issues

Comment: These subsections should only list "stable release" packages if/when possible. quequotion (talk) 02:33, 1 December 2019 (UTC)

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 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-elementaryAUR, and becomes opaque when a maximized window occupies your screen (when using the galaAUR window manager and compositor). 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;
}