Nwg-shell
The nwg-shell project aims to create a consistent, GTK based user interface for the Sway Wayland Compositor.
It also supports Hyprland since version 0.5.0 [1].
Installation
The nwg-shell
components can be installed with the nwg-shell (meta) package.
- Support for Hyprland requires a few additional packages. Check the list of optional dependencies for the nwg-shell package.
- Most components of the
nwg-shell
can also be installed and used standalone. See #Shell components for a full list of components.
The nwg-shell-installer
script (see #Configuration) also expects a web browser, a file manager and a text editor to be installed before being run in order to setup keybindings properly. The suggested ones are firefox, thunar and mousepad but other ones can be installed instead.
Configuration
The nwg-shell package provides the nwg-shell-installer
script which can be run to interactively generate a default configuration for every nwg-shell
components as well as a custom configuration for Sway/Hyprland
.
nwg-shell-installer
script is made to be run on fresh installations as it will restore/overwrite configurations and style sheets of each nwg-shell
components as well as overwrite the Sway
(or Hyprland
) main configuration (a backup of the main Sway/Hyprland
configuration file is created by the script beforehand).For Sway, run:
$ nwg-shell-installer -w
For Hyprland:
$ nwg-shell-installer -w -hypr
nwg-shell-installer
script expects a web browser, a file manager and a text editor to be installed before being run in order to setup keybindings properly. The suggested ones are firefox, thunar and mousepad but other ones can be installed instead.Alternatively, one can modify each nwg-shell
components' configurations and style sheets graphically or by modifying the related files under ~/.config/component_name
.
Finally, one can enable the greetd.service
(so greetd will be started at boot) and set up the nwg-hello
greeter.
Shell components
The nwg-shell package provides the following nwg-shell
components:
- azote — Wallpaper manager for wlroots-based compositors and some other WMs.
- gopsuinfo — A gopsutil-based command to display system usage info as text in panels like Waybar or icon/text in tint2 and nwg-panel executors.
- nwg-bar — GTK3-based button bar for wlroots-based compositors.
- nwg-clipman — a GTK3-based GUI for cliphist.
- nwg-displays — Output management utility for sway and Hyprland.
- nwg-dock — GTK3-based dock for Sway.
- nwg-dock-hyprland — GTK3-based dock for Hyprland.
- nwg-drawer — Application drawer for wlroots-based Wayland compositors.
- nwg-hello — GTK3-based greeter for greetd written in python.
- nwg-icon-picker — GTK icon chooser with a text search option.
- nwg-look — GTK3 settings editor adapted to work in the wlroots environment.
- nwg-menu — MenuStart plugin to nwg-panel, also capable of working standalone.
- nwg-panel — GTK3-based panel for sway and Hyprland Wayland compositors.
- nwg-readme-browser — WebKitGTK-based README file browser.
- nwg-shell — Installer & meta-package for the nwg-shell project: a GTK3-based shell for Sway and Hyprland Wayland compositors.
- nwg-shell-config — nwg-shell configuration utility.
- nwg-shell-wallpapers — Selection of wallpapers contributed to the nwg-shell project.