From Gentoo Wiki
(Redirected from Taskd)
Jump to:navigation Jump to:search
This article is a stub. Please help out by expanding it - how to get started.

Taskserver (taskd) is a back-end service for providing to-do list synchronization between Taskwarrior and clients or remote devices. There are several possible configurations but some of the most common are:

  • Running taskd on a server which synchronizes multiple user's tasks to a centralized location for ease of backup purposes.
  • Providing synchronization with mobile devices via applications such as Foreground (Android) or Taskwarrior Reminders (iOS), among others.
  • As part of a hosted private cloud infrastructure for an individual or groups.

There have been occasional attempts at providing "Taskwarrior as a service" using a public facing taskd instance. At present this usage is discouraged as the tasd daemon is not yet seen as robust enough to handle the rigors imposed by commercial use by large numbers of simultaneous users. It is expected that taskd will eventually support such a setup.


USE flags

USE flags for app-misc/taskd Server part of Taskwarrior, a command-line todo list manager


root #emerge --ask app-misc/taskd

Additional software

A large ecosystem of Taskwarrior and Taskserver related tools, clients, and smartphone applications exist. The list is far too large to be listed here, see Taskwarrior Tools for a large number of options.


Environment variables

  • $TASKDATA — sets the location of the Taskserver's data root directory if it differs from the default. The command line option --data overrides this value.


Directly editing this file is officially discouraged in favor of the task config command. Further, the fine details of the configuration file itself are in the package's documentation. Please consult man taskrc before making a configuration change.

  • /var/lib/taskd/ — the default data directory for Taskserver.
  • /var/lib/taskd/config — the Taskserver daemon configuration file. Again, use task config if at all possible.



To add taskd to system startup under the default OpenRC profile:

root #rc-update add taskd default

To start the service manually without requiring a reboot:

root #rc-update add taskd start


To add taskd to system startup under the default systemd profile:

root #systemctl enable taskd.service
root #systemctl start taskd.service



user $taskd --help
Usage: taskd -v|--version
       taskd -h|--help
       taskd diagnostics
       taskd validate <JSON | file>
       taskd help [<command>]

Commands run only on server:
       taskd add     [options] org   <org>
       taskd add     [options] group <org> <group>
       taskd add     [options] user  <org> <user>
       taskd config  [options] [--force] [<name> [<value>]]
       taskd init    [options]
       taskd remove  [options] org   <org>
       taskd remove  [options] group <org> <group>
       taskd remove  [options] user  <org> <user>
       taskd resume  [options] org   <org>
       taskd resume  [options] group <org> <group>
       taskd resume  [options] user  <org> <user>
       taskd server  [options] [--daemon]
       taskd status  [options]
       taskd suspend [options] org   <org>
       taskd suspend [options] group <org> <group>
       taskd suspend [options] user  <org> <user>



root #emerge --ask --depclean --verbose app-misc/taskd

See also