/tophat

An elegant system resource monitor for the GNOME shell

Primary LanguageJavaScriptGNU General Public License v3.0GPL-3.0

TopHat

TopHat is an elegant system resource monitor for the GNOME shell. It displays CPU, memory, and network activity in the GNOME top bar.

Screenshot of processor usage indicator

Screenshot of memory usage indicator

Screenshot of network usage indicator

Installation

Install TopHat from the GNOME Shell extensions page.

Requirements

  • GNOME 3.38 or newer
  • The gtop system monitoring library (e.g., 'libgtop' on Debian-based systems, likely already installed as part of GNOME)
  • GIRepository (gir) bindings for the gtop system monitoring library (e.g., 'gir1.2-gtop-2.0' on Debian-based systems)

Tested against

  • CenOS Stream 9
  • Debian 11.4
  • Fedora 36
  • Pop!_OS 22.04 LTS
  • Ubuntu 22.04 LTS

Contributing and dev notes

To view logged output, use the command journalctl -f -o cat /usr/bin/gnome-shell.

To simulate heavy system load, use the stress-ng tool, e.g. stress-ng --timeout 10s --cpu 8.

To install manually:

mkdir -p ~/.local/share/gnome-shell/extensions/
ln -s [path to tophat repository] ~/.local/share/gnome-shell/extensions/tophat@fflewddur.github.io

License

TopHat is distributed under the terms of the GNU General Public License, version 3 or later. See the license file for details.

Credits

TopHat was designed and written by Todd Kulesza, with much inspiration from the GNOME system-monitor extension and iStat Menus.

Icons

The images in the 'icons' directory are derived works from thenounproject.com and used under the Creative Commons Attribution license. The authors of each original work are:

icons/cpu.svg: jai
icons/mem.svg: Loudoun Design Co.
icons/net.svg: Pixel Bazaar

All icons were edited to make them more legible at small sizes.