Home » Guides » Taskwarrior On Linux: Installation on Ubuntu, Debian, CentOS, RHEL, Fedora, Arch Linux, Gentoo, etc.

Taskwarrior On Linux: Installation on Ubuntu, Debian, CentOS, RHEL, Fedora, Arch Linux, Gentoo, etc.

Taskwarrior is one of the most powerful command-line, task management tools available on Linux. It is an open-source project that is designed to be flexible for almost all task management work and is very much scalable. You can use it to manage your To-Do list, from the command line interface, and will find it to be ultra-fast and efficient. Furthermore, you can easily make it fit your workflow and even use it as an app for task management. 

If you are a more advanced user, then you can use it to handle sophisticated and complex undertakings, such as a data query tool to help make your work more organized. The app is written in C++ and uses a simple text file format for storing your lists and organizing metadata. The great thing about this tool is that it is available across platforms, and supports most Linux distributions, even the niche ones. If you want to learn how to install Taskwarrior on Linux, no matter the distro, you can use the following guide.

What Is Taskwarrior?

Known as a simple yet versatile tool, Taskwarrior is a match made in heaven for budding developers, experienced administrators, and anyone in between. If you love mouse-free operation, then you will love Taskwarriror for what it brings to the table. You can use it within the Terminal to quickly modify and add tasks to a list, that you can then complete and delete too, without once leaving the command line interface. 

You can make the most out of Taskwarrior by using its Tags and Attributes system, which can be pretty helpful in managing various lists and can help you prioritize your work. There are different tags available, such as Due Dates, Priority, Project, and any number of custom tags that you can define yourself, making Taskwarrior a user-friendly tool. It shines when you are working in larger groups, as the level of customization afforded is a much-welcome addition. 

Taskwarrior
Taskwarrior

Why Choose Taskwarrior?

So, why use Taskwarrior? Here are a few features that could help you decide:

Command Line Interface

A simple, yet sleek, command line interface will ensure that you have a fast, unobtrusive, flexible yet efficient tool at your hand to easily manage your daily tasks. You can handle almost everything that Taskwarrior can do from within the command line, ensuring that you don’t have to switch windows.

User-friendly Syntax

The command line syntax is very user-friendly and easy to use. The tool is methodology-neutral, meaning, you can use a number of techniques, and the tool will still work, without getting in your way. 

Community-Driven

You will also find a large and active community for Taskwarrior online that can help you with queries and other instructions. It has a lot of documentation online and a bunch of active forums where you can seek suitable advice. The developers even maintain an active Discord server so that you can get support anytime you need it.

Open-Source

The tool doesn’t have to hide how it works. You can even develop it as you want since the source code is available to all. There is even an SQLite database you can use. 

Other features include the following:

  • Files are stored as JSON, so they are easy to share.
  • DOM access and available as an API.
  • Several free scripts are also available, that too for free.
  • You can even get a curses-based UI, i.e. Vit.
  • Bug reporting is also very easy. 

Installing Taskwarrior On Linux

There are a lot of methods you can install Taskwarrior on Linux. The most prominent being downloading the Tar file and unpacking it. However, you are free to choose the method you like the most. We have listed some of them below, for almost every Linux distribution:

Method 1. Compile Taskwarrior From Source

Step 1. First, install the relevant dependencies for the different distros:

On Debian/Ubuntu

sudo apt install cmake g++ libgnutls28-dev uuid-dev

For Fedora/RHEL

sudo dnf install cmake gcc-c++ gnutls-devel uuid-devel

And, For Arch Linux

sudo pacman -S cmake gcc gnutls uuid

Step 2. Now, clone the repository from Git:

git clone --recursive https://github.com/GothenburgBitFactory/taskwarrior.git

Step 3. Navigate to the Taskwarrior directory:

cd taskwarrior

Step 4. Then, create a build directory:

cmake -DCMAKE_BUILD_TYPE=release .

Step 5. Use the MAKE command to compile the code:

make

Step 6. Finally, install Taskwarrior

sudo make install

Method 2. Download .TAR package and Install Taskwarrior

Step 1. First, download the tar file containing Taskwarrior:

Step 1.1- For this, you need to go to the official website and get the file:

Step 2. Then, unpack the source tarball file. This will create a directory with the code.

tar xzf task-X.Y.Z.tar.gz

Step 3. Now, change the directory:

cd task-X.Y.Z

Step 4. Use CMAKE to scan for dependencies and generate the makefiles:

cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build

Step 5. Finally, build Taskwarrior:

sudo cmake --install build 
cd .. ; rm -r task-X.Y.Z

Method 3. Install Taskwarrior Using Native Package Managers:

Taskwarrior is also available via your native package managers on almost every Linux distribution, you can use the following steps to install it:

Debian/Ubuntu

Step 1. Update the package manager:

sudo apt update

Step 2. Install Taskwarrior:

sudo apt install taskwarrior

Step 3. Verify the installation:

task --version

Fedora

sudo dnf install task

CentOS (version 7 or below)

sudo yum install task

RHEL

If you want to use Taskwarrior on RHEL (version 9 or CentOS Stream 9) then, you will need to use the EPEL repository, for this, you will need to get the EPEL repo first and then use it to install Taskwarrior

Step 1. First, enable the EPEL repo:

For RHEL 9

subscription-manager repos --enable codeready-builder-for-rhel-9-$(arch)-rpms && dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm

On CentOS Stream 9

dnf config-manager --set-enabled crb && dnf install https://dl.fedoraproject.org/pub/epel/epel{,-next}-release-latest-9.noarch.rpm

Step 2. Now, install Taskwarrior

sudo dnf install task

OpenSUSE

zypper install taskwarrior

Arch Linux

pacman -S task

Slackware

sbopkg -i task

Gentoo

emerge task

Sabayon

sudo equo install task

FreeBSD

Step 1. First, install the port:

cd /usr/ports/deskutils/taskwarrior/make install clean

Step 2. Then, add the package

pkg_add -r taskwarrior

Step 3. Finally, install Taskwarrior

pkg install taskwarrior

OpenBSD

For versions older than 5.8

sudo pkg_add -i taskwarrior

For version 5.8 and up

doas pkg_add -i taskwarrior

NixOS

pacman -S task

Method 4. Using Flatpak To Install Taskwarrior On Linux

Step 1. First, install Flatpak on your Linux device:

For Debian/Ubuntu

sudo apt install flatpak

For CentOS/Fedora/RHEL

sudo dnf install flatpak 

Step 2. Then, add the Flathub repository:

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Step 3. Finally, install Taskwarrior using Flatpak

flatpak install flathub org.taskwarrior.Taskwarrior

Method 5. Installing Taskwarrior Via Snap Packages

Step 1. First, install Snap:

sudo apt install snapd

Step 2. Then install Taskwarrior via Snap:

sudo snap install task --classic
Gilbert John Avatar