How install Toggl Desktop in Ubuntu?

Instructions for Ubuntu 64-bits

According to this note in the PPA's project, the ppa was deprecated:

Toggl Desktop in launchpad is now deprecated. We have a new version out which can be downloaded here: http://support.toggl.com/toggl-on-my-desktop/

Luckily, they are providing a deb package ready to install in their GitHub repository. You need to install certain dependencies and use Ubuntu 64 bits. This won't work in Ubuntu 32-bits.

sudo apt-get install libc6 libdrm2 libexpat1 libffi6 libgcc1 libgl1-mesa-glx libglapi-mesa libglib2.0-0 libgstreamer0.10-0 libgstreamer-plugins-base0.10-0 liblzma5 liborc-0.4-0 libpcre3 libstdc++6 libx11-6 libx11-xcb1 libxau6 libxcb1 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-sync1 libxcomposite1 libxdamage1 libxdmcp6 libxext6 libxfixes3 libxml2 libxrender1 libxshmfence1 libxslt1.1 libxss1 libxxf86vm1 zlib1g
cd ~/Downloads
sudo dpkg -i toggldesktop*.deb

"Why installing all those packages if the only dependency is libxssl?" you may ask. Simply, because the binary needs all of them. If you run ldd ToggleDesktop on the binary you may find:

linux-vdso.so.1 (0x00007fff8cdfc000)
libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007fd4e1779000)
libXss.so.1 => /usr/lib/x86_64-linux-gnu/libXss.so.1 (0x00007fd4e1576000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fd4df716000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fd4df40b000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fd4df1f4000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fd4dee4b000)
libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007fd4dd7f0000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fd4dd5eb000)
libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007fd4dd3d9000)
libgobject-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007fd4da4b9000)
libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007fd4da1aa000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fd4d9ea9000)
libGL.so.1 => /usr/lib/x86_64-linux-gnu/libGL.so.1 (0x00007fd4d9c0e000)
libgthread-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0 (0x00007fd4d9263000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fd4d905b000)
/lib64/ld-linux-x86-64.so.2 (0x00007fd4e1fa7000)
libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007fd4d858d000)
libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007fd4d8387000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fd4d816c000)
libXrender.so.1 => /usr/lib/x86_64-linux-gnu/libXrender.so.1 (0x00007fd4d7f62000)
libXcomposite.so.1 => /usr/lib/x86_64-linux-gnu/libXcomposite.so.1 (0x00007fd4d7d5f000)
libxslt.so.1 => /usr/lib/x86_64-linux-gnu/libxslt.so.1 (0x00007fd4d7b1f000)
libxml2.so.2 => /usr/lib/x86_64-linux-gnu/libxml2.so.2 (0x00007fd4d77ba000)
libgstreamer-0.10.so.0 => /usr/lib/x86_64-linux-gnu/libgstreamer-0.10.so.0 (0x00007fd4d74c9000)
libgstapp-0.10.so.0 => /usr/lib/x86_64-linux-gnu/libgstapp-0.10.so.0 (0x00007fd4d72bb000)
libgstbase-0.10.so.0 => /usr/lib/x86_64-linux-gnu/libgstbase-0.10.so.0 (0x00007fd4d7061000)
libgstinterfaces-0.10.so.0 => /usr/lib/x86_64-linux-gnu/libgstinterfaces-0.10.so.0 (0x00007fd4d6e4e000)
libgstpbutils-0.10.so.0 => /usr/lib/x86_64-linux-gnu/libgstpbutils-0.10.so.0 (0x00007fd4d6c28000)
libgstvideo-0.10.so.0 => /usr/lib/x86_64-linux-gnu/libgstvideo-0.10.so.0 (0x00007fd4d6a0b000)
libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007fd4d57b8000)
libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007fd4d554a000)
libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007fd4d5320000)
libglapi.so.0 => /usr/lib/x86_64-linux-gnu/libglapi.so.0 (0x00007fd4d50f6000)
libXdamage.so.1 => /usr/lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007fd4d4ef3000)
libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007fd4d4cec000)
libX11-xcb.so.1 => /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007fd4d4aea000)
libxcb-glx.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0 (0x00007fd4d48d1000)
libxcb-dri2.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0 (0x00007fd4d46cb000)
libxcb-dri3.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0 (0x00007fd4d44c8000)
libxcb-present.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-present.so.0 (0x00007fd4d42c5000)
libxcb-sync.so.1 => /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1 (0x00007fd4d40bd000)
libxshmfence.so.1 => /usr/lib/x86_64-linux-gnu/libxshmfence.so.1 (0x00007fd4d3ebb000)
libXxf86vm.so.1 => /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1 (0x00007fd4d3cb5000)
libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007fd4d3aa7000)
liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007fd4d2018000)
libgmodule-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x00007fd4d1e14000)
liborc-0.4.so.0 => /usr/lib/x86_64-linux-gnu/liborc-0.4.so.0 (0x00007fd4d1b8f000)

All those libraries weren't included in the package "Depends" field, but the binary needs all of them.


There's another option if you want to use the application without installing it in your system, in which case you need to download the binaries packages from this page, download the Linux version using a browser (wget and curl seems to fail to do this). The file will normally be downloaded into your ~/Downloads directory. Uncompress the files:

$ ~/Downloads
$ tar xzf toggldesktop_*.tgz
$ ls
cacert.pem  iconengines  imageformats  lib  platforms

Now make sure that the following packages are already installed:

sudo apt-get install libc6 libdrm2 libexpat1 libffi6 libgcc1 libgl1-mesa-glx libglapi-mesa libglib2.0-0 libgstreamer0.10-0 libgstreamer-plugins-base0.10-0 liblzma5 liborc-0.4-0 libpcre3 libstdc++6 libx11-6 libx11-xcb1 libxau6 libxcb1 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-sync1 libxcomposite1 libxdamage1 libxdmcp6 libxext6 libxfixes3 libxml2 libxrender1 libxshmfence1 libxslt1.1 libxss1 libxxf86vm1 zlib1g

Once this is done, just run ./TogglDesktop and ready.

Important notes from the installation page:

  • Toggl Desktop has been tested with Unity, Gnome and KDE in general should be working. There are known issues with LXDE.
  • At the moment there is only 64bit binary package available. 32bit version is planned. There are no distribution-specific packages available.

    We don’t have a version for 32bit Linux, but you’re able to create it by following the instructions here: https://github.com/toggl/toggldesktop

  • They are working on adding a generic .deb package which should be usable on all (recent) Debian based distributions.
  • Currently, Toggl Desktop is only tested on Ubuntu. Most probably all recent Debian-based distributions will work, but they are untested.
  • Starting from Ubuntu 13.04 there is no tray (notification area icon) support.


Ubuntu 16.04

Download from https://support.toggl.com/toggl-on-my-desktop/

tar -vzxf ~/Downloads/toggldesktop_linux_x86_64-{VERSION}.tar.gz

sudo apt-get update && apt-get install libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev

~/Downloads/toggldesktop/TogglDesktop.sh

Note: Use Linux tarball to download .tar.gz and Linux deb for .deb