Skip to main content

Companion Tools

Mango is a window compositor and needs additional tools to create a complete desktop environment. This guide covers recommended tools for various components.

Hybrid Component

dms-shell

Complete desktop shell solution providing integrated components for Mango

Essential Components

Application Launcher

rofi

Popular application launcher and dmenu replacement with extensive customization

bemenu

Dynamic menu library for Wayland, simple and lightweight

wmenu

Efficient menu for Wayland, suckless-style implementation

fuzzel

Application launcher for Wayland with fuzzy matching

Terminal Emulator

foot

Fast, lightweight, and minimalistic Wayland terminal emulator (default in Mango)

wezterm

GPU-accelerated cross-platform terminal emulator with extensive features

alacritty

OpenGL-accelerated terminal emulator focused on simplicity and performance

kitty

Feature-rich, GPU-based terminal emulator with image support

ghostty

Modern terminal emulator with native performance

Status Bar

waybar

Highly customizable Wayland bar (preferred choice for Mango)

eww

ElKowars wacky widgets - build custom widgets with declarative syntax

quickshell

Simple and fast status bar for Wayland

ags

Aylur’s Gtk Shell - build custom desktop shells with JavaScript
Waybar is the preferred status bar for Mango and provides the best integration.

Wallpaper Setup

swww

Efficient animated wallpaper daemon for Wayland with smooth transitions

swaybg

Wallpaper tool for Wayland compositors, simple and reliable

Notification Daemon

swaync

Notification daemon with a GTK-based notification center

dunst

Lightweight notification daemon with extensive customization

mako

Lightweight Wayland notification daemon

Desktop Portal

xdg-desktop-portal

Base portal implementation for desktop integration

xdg-desktop-portal-wlr

Backend for wlroots-based Wayland compositors like Mango

xdg-desktop-portal-gtk

GTK implementation for file chooser and other portals

Clipboard Manager

wl-clipboard

Command-line copy/paste utilities for Wayland

wl-clip-persist

Keep clipboard contents after application closes

cliphist

Clipboard history manager for Wayland

Gamma Control / Night Light

wlsunset

Day/night gamma adjustments for Wayland compositors

gammastep

Adjust screen color temperature based on time of day

Miscellaneous

xfce-polkit

PolicyKit authentication agent for privilege escalation

wlogout

Logout menu for Wayland

Complete Setup Examples

Daily Setup

Complete dependency list for a full-featured daily driver setup:
yay -S rofi foot xdg-desktop-portal-wlr swaybg waybar \
  wl-clip-persist cliphist wl-clipboard wlsunset xfce-polkit \
  swaync pamixer wlr-dpms sway-audio-idle-inhibit-git \
  swayidle dimland-git brightnessctl swayosd wlr-randr \
  grim slurp satty swaylock-effects-git wlogout sox
View daily config

DMS Setup

Minimal setup using dms-shell hybrid component:
yay -S foot xdg-desktop-portal-wlr swaybg \
  wl-clip-persist cliphist wl-clipboard \
  sway-audio-idle-inhibit-git brightnessctl \
  grim slurp satty matugen-bin dms-shell-git
View DMS config (branch: dms)

Additional Utilities

Screen Capture

  • grim - Screenshot utility for Wayland
  • slurp - Select a region in Wayland
  • satty - Screenshot annotation tool

Screen Lock

  • swaylock-effects-git - Screen locker with effects
  • swayidle - Idle management daemon

Audio Control

  • pamixer - PulseAudio mixer command-line tool
  • sway-audio-idle-inhibit-git - Prevent idle when audio is playing
  • swayosd - OSD window for volume/brightness

Display Management

  • wlr-randr - xrandr clone for wlroots compositors
  • wlr-dpms - Control display power management

Brightness Control

  • brightnessctl - Read and control device brightness

Power Management

  • dimland-git - Dim screen gradually before sleep

Default Keybindings

Out of the box, Mango includes these keybindings for common tools:
  • Alt + Return - Open foot terminal
  • Alt + Space - Open rofi launcher
  • Alt + Q - Kill client
  • Alt + Arrow Keys - Focus direction
  • Super + M - Quit Mango
These can be customized in your Mango configuration file.

Build docs developers (and LLMs) love