- 6 Best To-Do List Managers for Linux Command Line
- 1. t Command-Line To-Do List Manager
- 2. Yokadi To-Do List Manager
- 3. Taskwarrior To-Do List Manager
- 4. DevTodo To-Do List Manager
- 5. Ultralist Task Management System
- 6. topydo To-Do List Manager
- 5 Best To-Do List Apps for Linux Desktop in 2023
- 1. Todoist
- 2. Ao
- 3. Getting Things GNOME
- 4. Planner
- 5. Zenkit ToDo
6 Best To-Do List Managers for Linux Command Line
As you grow your Linux operating system experience and become imprinted on its command-line environment, you start having more and more exciting tasks to do. With time, it might become impossible to keep track of what computing task or project milestone you have successfully accomplished.
Such a scenario might reduce your Linux OS productivity. However, with every problem associated with a Linux operating system, there is always a Linux-oriented solution. The best way of keeping track of your Linux OS activities/objectives is via a to-do list manager.
In this article guide, we will walk you through the analysis and installation of some recommended to-do list managers for your Linux command-line environment.
1. t Command-Line To-Do List Manager
t is a command-line to-do list manager that prioritizes the need to create a solution for users to finish tasks rather than organize them. Other list managers are attributed as feature-packed because their associated tasks can be prioritized, split, and tagged.
They also give users the opportunity to color-code tasks and order them if needed. As for t to-do list manager, it is simple and almost featureless. Its almost featureless attribute makes it faster to use than its mentioned nemesis such that you won’t spend too much time tagging tasks instead of finishing them. It is flexible and version-control-friendly.
To install t to-do list manager, you must have the latest Python3 (which comes preinstalled on most Linux distributions) and Git installed on your Linux system.
First, clone the repository and then create a directory for storing your to-do list:
$ git clone https://github.com/sjl/t.git $ cd t $ ls $ mkdir ~/tasks
Next, add an alias to t in the ~/.bashrc file.
alias t='python3 /path/to/t.py --task-dir ~/tasks --list tasks'
Reload the ~/.bashrc file.
To add, list, finish or edit a task, implement:
$ t [task description] #add a task $ t #list tasks $ t -f [task_ID] #finish a task $ t -e ID [edit description] #edit a task
More usage of t is on its manual page:
2. Yokadi To-Do List Manager
Yokadi is a command-line TO-DO list solution that is SQLITE-powered with the primary objective of aiding Linux users in organizing their workflow and ensuring they work on unfinished tasks.
Its functionality is characterized as efficient, intuitive, and simple. The tasks associated with this TO-DO list solution can have keywords, urgency, due date, and description.
To install Yokadi on Debian-based distributions using the apt package manager:
On other Linux distributions, we can make use of the pip – Python package manager.
$ sudo nano $HOME/.local/lib/python3.10/site-packages/sqlalchemy/sql/base.py
Replace all instances of collections.MutableMapping with collections.abc.MutableMapping to avoid running into the error message:
AttributeError: module 'collections' has no attribute 'MutableMapping'
To launch and know the usage of yokadi, use:
$ yokadi > t_add virtualbox download and install virtualbox #create a task
As you can see, the first portion of the command has been taken as the project name (virtualbox) and the remaining portion as a task (download and install virtualbox).
We can add more tasks in the following manner:
> t_add _ install Ubuntu 20.04 on virtualbox
The underscore links the task to the last used project:
> t_add _ install RHEL8 on virtualbox > t_add _ install Arch Linux on virtualbox
To list the tasks associated with our project (virtualbox), we’ll run:
To mark a task as done, we will use its task ID e.g mark “install arch Linux on virtualbox” as done.
> t_mark_done 4 > t_list virtualbox
To list tasks accomplished today (present date):
> t_list virtualbox --done today
To associate a task with a due date, we will use the task ID:
> t_due 1 +2d > t_due 3 21/08 11:00
Refer to the Yokadi manual page for more command usage and references.
3. Taskwarrior To-Do List Manager
Taskwarrior is a command line task list management tool that comes with a multitude of features. To install Taskwarrior, use:
$ git clone --recursive -b stable https://github.com/GothenburgBitFactory/taskwarrior.git $ cd taskwarrior $ cmake -DCMAKE_BUILD_TYPE=release . $ make $ sudo make install
To create a task or to-do list associated with a due date:
$ task add Pay Internet due:eom
To create a task without a due date and add a due date later:
$ task add Pay Water Bill $ task 2 modify due:eom
To remove the due date from the specific task:
If your task has multiple line description, you can create it in the following manner:
$ task add "Ten things to learn from LinuxShellTips before 2022 ends!"
To display a list of your created tasks, run:
A complete user manual of this utility can be found by running the command:
4. DevTodo To-Do List Manager
DevTodo utility is hierarchically organized such that it can track the creation and completion time of tasks. To install it, you need Homebrew installed on your machine.
$ todo -a Pay Monthly Internet
We can also add a sub-task to the above task by specifying its index:
$ todo -ag 1 Vilcom Subscription
To add another sub-task, we will reference the sub-task index 1.1 above:
A complete user manual of this utility can be found by running the command:
5. Ultralist Task Management System
Ultralist is easy to use, powerful, and open-source task management system for the Linux command line. We can install it via Homebrew in the following manner:
The first step is to initialize an ultralist repo:
The following screenshot reveals a summary of commands associated with using Ultralist as a to-do list manager.
For instance, to add, mark, or list tasks:
$ ultralist add task_name $ ultralist complete task_name $ ultralist list
6. topydo To-Do List Manager
Users can benefit from topydo utility’s due and start date features, and recurring to-do items. Its installation requires pip3 (Python3 package manager).
To see all available commands associated with topydo, run:
For example, to add or list items:
$ topydo add item_1 $ topydo ls
These solutions ensure that your TO-DO lists are purely command-line driven. Know of another TO-DO list manager for the Linux command line? Feel free to leave a comment or feedback.
5 Best To-Do List Apps for Linux Desktop in 2023
Although some big-name software companies tend to stay away from Linux Desktop, Linux still has no lack of apps that can completely replace those. Whether it’s MS Office alternatives, Photoshop alternatives, or something else, Linux has plenty of good alternatives and for free. When it comes to task managing apps there’s plenty to choose from. In fact, there are so many To-Do list apps on Linux desktop you might even get confused. That’s why we have compiled a list of the 5 best To-Do list apps for Linux desktop.
To-Do list apps are one of the most abundantly available apps. This is because like a calculator or calendar app, the feature set is rather limited and there isn’t a lot to do. These are simple apps meant for simple things. But that doesn’t mean there aren’t bad and good To-Do list apps. Some can be too basic and stick with letting users organize themselves. Others could be packed with features such as calendar integrations or integration with your emails. You’ll find all kinds of apps on this small list. If you own an Android device, here are some of the best to-do list apps that you should try.
1. Todoist
To start off the list is this freemium app that strikes a good balance between simplicity and functionality. The app looks clean and minimal with a lot of white space and enough padding around elements. It boasts of a feature set that includes task delegation, productivity visualizations, Todoist boards, progress reports, and cloud backup. So, not only can users organize their tasks but also collaborate with others, such as their work colleagues.
Todist is available as a Snap package that can be installed on any distro with the following command.
sudo snap install todoist
If your system does not ship with snap built-in, check the Snap website to install it manually.
2. Ao
As mentioned in the beginning, some big-name companies tend to stay away from developing apps for Linux desktop. Some, like Microsoft, only develop apps for Linux when they really need to. That’s why apps like Skype and Microsoft Teams are available on Linux but not MS Office or even something as simple as Microsoft’s To-Do app. It’s basically Microsoft’s version of Wunderlist which was one of the best To-Do list apps, later acquired and then killed by Microsoft.
Ao is a wrapper for Microsoft’s online version of To-Do. It requires you to be online otherwise it won’t load. Naturally, to use it you’d also need a Microsoft account. The only reason it is on this list is that it makes the Microsoft To-Do app sort of available on Linux. Some of its features include black, dark, & sepia themes, automatic night mode, scalable interface, and desktop integration.
Ao can be installed from Snap using the following command.
You can also find distro-specific packages of Ao at GitHub for Arch, Red Hat, and Debian and distros based on them.
3. Getting Things GNOME
Getting Things GNOME might sound like a weird name so it is also simply called the GNOME To-Do app. In fact, it used to be called GNOME To Do. Getting Things GNOME is a simple To-Do list app designed for the GNOME desktop. If you’re using a Linux distro that shipped with the GNOME desktop, you probably already have it installed.
The app has seen an overhaul in design from when it used to be called GNOME To Do. Not only that it has also received new functionality such as the ability to open or create a task’s parent task. Other features include the ability to select and perform actions on multiple closed tasks, rename or delete tags by right-clicking on them, etc. With the tabbed interface, you can easily switch between Open, Actionable, and Closed tasks.
If you don’t already have the app, it is available as a Flatpak on Flathub. If this is the first you’re hearing of Flaptaks, here is how to install and use Flatpak on Ubuntu.
4. Planner
Planner is one of the most beautiful and robust projects or tasks list apps on Linux or any platform. It’s designed for elementary OS, so it’s not surprising that it prioritizes appearances. It allows you to add emojis to task lists in order to make a bit more fun and lively. The functionality is rather basic, like most elementary apps. It does allow you to add repeating tasks, and create separate folders or projects. The most advanced feature it has is the ability to sync with Todoist.
If you’re using elementary OS, you can find the app in the app center. For other Linux distros, there’s a Flatpak package available on Flathub. If this is the first you’re hearing of Flatpak, here is how to install and use Flatpak on Ubuntu.
5. Zenkit ToDo
Zenkit ToDo is another tasks list app for Linux that follows a freemium revenue model. While it wasn’t designed specifically with Linux in mind, it still looks rather elegant. It is one of the most feature-packed To-Do list apps available on Linux. Not only you can organize tasks but also meetings, ideas, notes, events, shopping lists, and trips. It’s a complete package and might even replace your notes app. The smart lists feature automatically organizes tasks by date and time. Other features include team collaboration, comments, reminders, recurring tasks, etc.
Zenkit ToDo has native packages available for all major Linux distros as well as a snap package. The app is also available on Windows, macOS, Android, and iOS.
While these are the best To-Do list apps for Linux that we came up with, not everyone will agree, of course. Is there another tasks app for Linux that you think should be on this list? Is there an app that you think should not be on this list? Let us know in the comments.