Keeping an eye on CPU, memory, and network activity in GNOME Shell is easy thanks to an array of community-built extensions tailored-made for the task.

Now a new option is available for GNOME Shell users, one designed, developed, and supported by GNOME itself.

Why create its own resource monitor add-on?

GNOME developer Florian Müllner explains:

“A long time ago, we used to include a system monitor extension, that added CPU/memory graphs to the (long gone) message tray. However demand for this type of extensions hasn’t died down, to the point where RHEL includes a revived version of the old extension.”

In light of the continue need, they’ve built a brand-new system monitor extension. The new iteration is unlikely to suffer from the CPU and memory flaws found in the old version.

This extension (like all GNOME-made ones) is entirely optional, and is not part of GNOME Shell itself (so if you have no use for this, you needn’t fret).

Official GNOME System Monitor Extension

GNOME Shell system monitor extension
You can hide reports you don’t need

As mentioned, there are scores of similar system monitor style GNOME Shell extensions already in existence. Some basic, some customisable, and some more resource-friendly than others!

GNOME’s new System Monitor extension leans more towards the basic side — but that’s not a negative: complexity can incur cost, or cloud the main use-case.

Once installed, it inserts a row of icons in the Top Bar, with relevant loads/speeds reported beside them for the following things:

  • CPU load (global; not per-core)
  • Memory usage
  • Swap usage
  • Network upload speed
  • Network download speed

Some icons, such as the CPU one, will even change colour under high load. This is a nice touch. In most situations the Top Bar is as assortment of monochromatic elements, which makes a sudden pop of blood red far more eye-catching.

Red for danger

Clicking on the row of icons opens a small menu. From here, you’re able to choose which resources appear in the panel, meaning you only need to see the stats you’re actually interested in, the rest being hidden from view.

No preferences are provided beyond this, so you can’t adjust polling interval, re-order items, hide all icons, or anything else. But since plenty of 3rd-party extensions exist covering those bases, those who need such options are already catered for.

Don’t understand the need?

Whenever I write about an extension of this type there are usually some inquisitive comments from readers asking “why do people use these?“.

I can’t give a simple “a-ha – so that’s why!” answer to that given that we’re rich, complex people with differing needs.

I know that many folks install extensions like this and run them 24/7, specifically so they can monitor their system resource usages at all times. That’s not a new phenomena given that Conky scripts popular when I stated using Linux would almost always have live, updating system resource stats.

Others folks, such as myself, only tend to install/enable system monitor add-ons as and when required, usually for debugging purposes, problem hunting, or mild curiosity.

In both cases there’s a big convenience factor involved compared to running top in a terminal, or opening a system monitor app.

Stats in your panel are glanceable at any time, aren’t occluded by other windows, and you don’t need to remember to bring them into focus or check on them. As such, there’s a greater chance of actually noticing unexpected CPU/memory spikes as they happen.

Sounds great! When can I use it?

The new GNOME System Monitor extension will (I presume) ship in an update to the “gnome-shell-extensions” package, which will likely arrive with the GNOME 46 release in March. Ubuntu carries that package in its archives, so any update should make it in, in time for 24.04 LTS.

Don’t want to wait until then?

Source code is available on the GNOME Gitlab.

Otherwise, this extension will almost certainly be uploaded to the GNOME Extensions website in the near future, allowing anyone on a compatible GNOME release to use it — no need to wait for their distro packagers to catch up.

Shout out to prolific GNOME Shell extension developer fthx who let me know about this (and offered an easy way to try it) — appreciate it, buddy!