thern·cdn
← TabDesk
Installation v0.2.1 apt Debian · Ubuntu · Kali · source under MIT
1Quickest — all in one fetches the key, checks the fingerprint, installs
curl -fsSL https://cdn.thern.io/tabdesk/install.sh | sudo bash

To read the script before you run it:

curl -fsSL https://cdn.thern.io/tabdesk/install.sh -o td.sh
less td.sh
sudo bash td.sh
2Or step by step five commands

The commands are deliberately written without variables. The lines get long, but copy the whole line — a half-pasted variable line leaves an empty [signed-by=] and the error Malformed entry 1 in list file.

1 · Fetch the signing key to a temporary file.

curl -fsSL https://cdn.thern.io/tabdesk/tabdesk-archive-keyring.gpg -o /tmp/td.gpg

2 · Check that it really is the key — before it is written.

gpg --show-keys /tmp/td.gpg

Should show the fingerprint
B40E D009 54B3 B564 21F5  8C99 B9D4 4CBC 6F2B D93E
and TabDesk APT repository <info@thern.io>. Anything else: stop here, nothing has been written yet.

3 · Put the key in place.

sudo install -m644 /tmp/td.gpg /usr/share/keyrings/tabdesk.gpg

4 · Add the apt source — a single line.

echo "deb [signed-by=/usr/share/keyrings/tabdesk.gpg] https://cdn.thern.io/tabdesk stable main" | sudo tee /etc/apt/sources.list.d/tabdesk.list

5 · Install.

sudo apt update && sudo apt install tabdesk
noteDid you get these instructions by email?

Do not pipe the key straight into the keyring. Mail clients rewrite links — Gmail turns the URL into www.google.com/url?q=…. Such a link answers 200 with an HTML page, curl -f accepts it, and the HTML ends up in the keyring. The only symptom is a parse error from apt that does not point at the cause.

Check the key first, then write it. If a link looks like it goes to www.google.com instead of cdn.thern.io — type the address by hand.

fixIf something went wrong

Malformed entry 1 in list file … ([option] no value)

The source file contains [signed-by=] with no value — step 4 was pasted incompletely. Check with cat /etc/apt/sources.list.d/tabdesk.list; the line must contain the full path to the key. The easiest fix is to let the script rewrite the file:

curl -fsSL https://cdn.thern.io/tabdesk/install.sh | sudo bash

Parse error about the keyring from apt: then /usr/share/keyrings/tabdesk.gpg is not a key but most likely an HTML page — delete the file and run the same line as above.

opsMaintenance
sudo apt update && sudo apt upgrade tabdesk   # update

Uninstall:

sudo apt remove tabdesk
Get the file directly without an apt source

The tarball only unpacks and runs:

tar xzf tabdesk-0.2.1.tar.gz
./tabdesk-0.2.1/tabdesk

No apt source means no updates and no dependencies installed for you. The following must already be on the machine:

xterm · xdotool · python3-gi · libgtk-3-0 · libnss3 · libxss1 · libxtst6 · libsecret-1-0 · libnotify4

If the app does not start, run it from a terminal — a missing library shows up in the error line.