Todoist For Ubuntu



Todoist is a task-management/planner service for mobile devices, as well as the web and personal computers. With it, users can plan out tasks to complete and track their productivity. However, until now, the official app was not available to Linux users.

In this guide, we’ll go over how to install the official Todoist application on Linux. We’ll also go over some of the basic usages of the app, such as creating tasks, logging in, etc.

Todoist

The Linux wrapper for Todoist web version. KryDos/todoist-linux. Todoist’s new icons offer a cleaner, color-coordinated look and help with navigation. 🚀 Faster and more reliable on every device. You won’t be able to see some of the biggest changes in Todoist Foundations, but you’ll be able to feel them. People that have been using the beta for weeks noted that Todoist is noticeably snappier and more.

It is available in the Ubuntu Software Center or you can download it from here. It's good for local tasks. Tasque can store the list locally or with Remember the Milk's API and has an average rating. Improve this answer. Follow edited Mar 29 '17 at 21:40. TickTick is recommendable by Softpedia, LifeHacker, The App Times, and more.

Install official Todoist app on Linux

For a long time, there have been third-party apps available for users on Linux to install so that they can make use of the excellent task management services that Todoist provides. However, none of these third-party applications on Linux are official, and often community made. This means that although they’re great apps, they’ll never have the polish of an official one.

That’s why it’s so exciting that there’s an official Todoist app finally on Linux, created by the company behind Todoist themselves. As of now, the app is only available as a Snap package in the official Ubuntu Snap Store. It is unknown if Doist will release the app on Flathub as a Flatpak or as a traditional Linux package.

Enable Snap runtime

To get going with the official Todoist application on your Linux PC, you must install the Snapd runtime. To set up the runtime, open up a terminal window on the Linux desktop. After that, install the “snapd” package and enable the snapd.socket service with systemctl. Can’t figure out how to set up Snapd on your own? We can help! Follow along with our in-depth guide on how to install and set up Snap package support on your Linux PC.

Install Todist Snap package

After your Linux PC has Snap package support, the installation can begin. Using the snap install command, set up the official Todoist application on your computer.

Not a fan of the Linux terminal? If you are already using Ubuntu or another Linux operating system with the Snap store already configured and installed. Simply head over to the Todoist link on Snapcraft.io, and click on the “View in Desktop store” button. From there, you will be able to install it using a graphical user interface.

Using Todoist on Linux

To use Todoist on Linux, start by launching the official app you’ve just installed. To launch the official Todoist app, search the app menu for “Todoist.” If you can’t find it, try running the todoist command in a terminal, and the app should launch. Once the official Todoist app is open, follow the step-by-step instructions below.

Step 1: You must create an account with Todoist to use the app. To create a new account, look for the “Don’t have an account” button at the bottom of the page and click on it to create a new account.

After creating a new account, sign in to the app using your credentials.

Step 2: Look to the sidebar for “Add Project,” and click on it to create a new project. Projects are how you can keep your tasks organized.

Step 3: In the “Project name” box, type in the name of your new project. Then, select a project color by clicking on the menu underneath the “Project” color area.

Step 4: Click on the “Add” button to add the project.

Step 5: Select your new project in the sidebar. Then, locate the “Add task” button, and click on it to add a new task to your Todoist project. When you do, it will show up in “Inbox.” You can also add tasks directly to “Inbox” by clicking on “Add Task” in the Inbox area.

Todoist For Ubuntu

Step 6: To schedule a task, select it by holding down the Ctrl button while clicking with the mouse. After that, select the “Schedule” button. You can also schedule tasks while writing out the task in the task box.

You can see your scheduled tasks far into the future by selecting on the “Upcoming” icon. It will show you a timeline of your planned tasks for Todoist. To complete a task and remove it from your list, click on the box next to it and, it will remove the task from the list!

Other ways to use Todoist on Linux

While the official Todoist application is a welcome addition to the Linux community, it’s not the only way you can use Todoist on Linux. If you aren’t running a Linux operating system with Snap package support, or just want to try out other apps, we can help! Check out the list below for other ways to use Todoist on Linux.

  • Todoist-linux, an unofficial Linux compatible wrapper for the web version of Todoist.
  • Planner, a Linux Planner application that can integrate
  • Todoist-Desktop, a Linux desktop implementation of the Todoist task management service.
  • Gnome To Do, a task management program for Gnome Shell and other GTK-based Linux desktops with support for Todoist built-in.

In the absence of native desktop apps for Linux from WhatsApp, Allo, Todoist, OneNote and many others, the next best alternative is to simply run the web app via web browser. To make the experience of launching it closer to a native app, read on.

Motivation

Having switched to Ubuntu, I often feel that software companies do not seem to give enough love to Linux users; needing to use web browser to run their web apps whereas Windows and Mac get native options.

Previously, I setup Chrome to run upon login and set its startup pages to the said apps. This works but I dislike this approach for a few reasons:

  1. Upon starting Chrome, I get a set of tabs already loaded whereas I prefer them to show up as a standalone window.
  2. One or more Chrome extensions that I use have interfered with the web apps causing the layout to appear incorrectly. I had to exclude these web app URLs explicitly. Another use case was when I needed to switch proxy settings via an extension but I did not want the proxy settings to affect these web apps. I had to explicitly exclude these URLs too. Ideally, I do not want extensions affecting any of these web apps.
  3. I usually do not need all of them to be opened at the same time so closing the unneeded tabs can help to reduce memory usage but when I needed to have them visible again, I had to relaunch Chrome. I prefer to launch them independently.

Solution overview

The solution is to wrap these web apps with Electron and create a desktop launcher with the correct icon for the app.

Pre-requisites

Firstly, NodeJS and NPM are required. I tested with NodeJS 8.10.0.

Then install nativefier via NPM, a tool for creating a native wrapper for any web page:

Download

Do not run npm install -g with sudo. If you encounter permission issues, follow NPM’s getting started guide on “How to prevent permissions errors'. The guide will also explain how to add these globally installed packages into $PATH environment variable.

Downloading app icons

Desktop launcher needs to have an icon. Icons must be in PNG format. It also needs to have enough pixels, 48x48. Otherwise, the icon will look pixelated. Although any arbitrary icon can be used, using the proper icon would make the app identifiable.

Icons for popular web apps can be found on nativefier-icons. Alternatively, view the source the web app, then look for favicon and download it. If it is not in PNG format, it will have to be converted to PNG using an image editor.

Nativefy the web app

Below are examples of how to use nativefier. Run them within your home directory where you have permissions to write without sudo.

For Allo:

For OneNote:

For Todoist:

WhatsApp:

I found no use for allowing multi-instances of each app so I specified the --single-instance parameter. There is no need for Chrome developer tools, hence --disable-dev-tools. Do not forget to specify the correct file name for the --icon. More details can be found on nativefier API documentation.

Upon running the above, if successful, a new folder will appear named as <name>-linux-x64. Note that “WhatsApp” will appear as whats-app-linux-x64 as it will convert Pascal case into lowercase with a dash in between.

This folder should then be moved to /opt to allow other users to use these apps:

First run of the app

Run the app, taking WhatsApp for example:

Todoist for ubuntu windows 7

On first run, it will create a folder to store configuration files on '$HOME/.config/applications/whats-app-nativefier-xxxxxx' where xxxxxx is a 6-character hexadecimal.

This keeps your login session state so that you do not need to relogin on subsequent runs.

Adding a desktop launcher icon

Launchers for all users is located at /usr/share/applications.
Launchers for current user is located at '$HOME/.local/share/applications'.
Launcher file names are named with .desktop npmjsextension.

Example of how to add a WhatsApp launcher for all users using nano editor:

Then, paste the following and save:

Remember to substitute xxxxxx in StartupWMClass setting with the correct 6-character hexadecimal. This is so that the app will not show up as a separate icon on the launcher bar when running it.

The app can now be added into favourites and ready to be used.

FAQ

Why is the old icon still being shown despite having changed it

Upon changing an icon, to have this reflected, the icon cache needs to be updated:

Todoist For Ubuntu Free

Do I need to update the app

Short answer, it depends.

Todoist Ubuntu 18.04

Given that the app is a Chromium web browser pointing to a URL, there is no need to update the app unless the URL has changed. Nevertheless, it is a good practice to keep your software up-to-date as new releases may include security related fixes.