For an easy way to stay on top of your tasks and to-do lists in GNOME Shell take note of Task Widget.

Task Widget is an open-source GNOME extension that displays your to-do list embedded in the GNOME message tray (also known as the calendar applet or notification shade). This widget area shows your to-do items and lets you check off tasks to mark them as completed.

Screenshot of the Task Widget GNOME Shell extension in Ubuntu 20.04 LTS
The extension, its support, and its settings

Task Widget can integrate “…with GNOME Online Accounts and a number of GNOME applications, such as Evolution and To-Do” but it is is not intended to replace any of those apps or services.

Or to put it another way: Task Widget is not a standalone task manager or to-do app. It gets its list of tasks from another, supported app. You can’t add a new task or edit an existing one using it only check off/unmark a task as completed.

In addition to working with To Do and Evolution this extension is compatible with Nextcloud Tasks, the Thunderbird email client’s to do list, and many more.

What’s great about Task Widget is that it gives you an easy, glanceable overview of the things you need to do at any time. You don’t need to open an app or switch window just open the message tray at any time to see what’s next on the list!

It can currently:-

  • Displays tasks/todos
  • Switch between different lists of tasks/todos
  • Group tasks by due date
  • Mark tasks as completed
  • Unmark completed task

A small settings panel provides options to:-

  • Hide empty task lists
  • Hide completed tasks
  • Change order/visibility of task lists
  • Hide task list headers

One option not present, which I’d like, is an option to move the task widget beneath the calendar, like the weather and world clock widgets. Having it say beside it is fine but on smaller devices (like my tiny GPD MicroPC) the layout is almost too wide to be useful.

Install Task Widget GNOME Extension

In short, Task Widget is a logical extension (pun intended) for the no-frills GNOME To Do app (the only app I tested it with, though any service that GNOME Online Accounts or Evolution Data Server support will work too).

Task Widget is free, open source extension. Source code is available on Gitlab, and you can install the latest version from the GNOME Extensions website (pro tip: use the Extension Manager desktop app).

A few dependencies are required for this extension to work. To install these on a standard Ubuntu install run the following command in a new Terminal window:

sudo apt install evolution-data-server gir1.2-edataserver-1.2 gir1.2-ecal-2.0 gir1.2-ical-3.0

If you install these are still see a “loading…” label in the message tray you will need to restart your GNOME session by logging out and back in (if you use an Xorg/X11 session you can press alt + f2, type r in the pop up box, and hit enter instead).

A well documented wiki page has more more details on how to use this extension, how to build it from source, troubleshoot errors, and more.