Qubes-Community-Content/docs/privacy/signal.md
taivlam e4068c8e00
Use apt instead of apt-get
Use the newer apt throughout, instead of the older apt-get
2022-03-01 15:58:50 +00:00

3.6 KiB

Signal

What is Signal?

According to Wikipedia:

Signal is an encrypted instant messaging and voice calling application for Android and iOS. It uses end-to-end encryption to secure all communications to other Signal users. Signal can be used to send and receive encrypted instant messages, group messages, attachments and media messages. Users can independently verify the identity of their messaging correspondents by comparing key fingerprints out-of-band.

Signal is developed by Signal Technology Foundation and Signal Messenger LLC. The mobile clients for are published as free and open-source software under the GPLv3 license, while the desktop client and server are published under the AGPL-3.0-only license.

How to install Signal Desktop in Qubes

CAUTION: Before proceeding, please carefully read On Digital Signatures and Key Verification. This website cannot guarantee that any PGP key you download from the Internet is authentic. Always obtain a trusted key fingerprint via other channels, and always check any key you download against your trusted copy of the fingerprint.

The following adapts the official Linux (Debian-based) Install Instructions from Signal's website for Qubes.

  1. (Optional) Create a TemplateVM (Debian 11 is used as an example):

    [user@dom0 ~]$ sudo qubesctl --skip-dom0 --targets=debian-11 --show-output state.sls update.qubes-vm
    
  2. Open a terminal in Debian 11 (or your previously chosen template):

    [user@dom0 ~]$ qvm-run -a debian-11 gnome-terminal
    
  3. Use these commands in your terminal (if you chose a different distribution, such as buster, substitute that for xenial in the fourth command):

    [user@debian-11 ~]$ sudo apt install curl  # (Optional)
    [user@debian-11 ~]$ sudo apt install dunst  # (for better Signal notifications)
    [user@debian-11 ~]$ curl --proxy 127.0.0.1:8082 -s https://updates.signal.org/desktop/apt/keys.asc | gpg --dearmor | sudo tee -a /usr/share/keyrings/signal-desktop-keyring.gpg > /dev/null
    [user@debian-11 ~]$ echo 'deb [arch=amd64 signed-by=/usr/share/keyrings/signal-desktop-keyring.gpg] https://updates.signal.org/desktop/apt xenial main' | sudo tee -a /etc/apt/sources.list.d/signal-xenial.list
    [user@debian-11 ~]$ sudo apt update && sudo apt full-upgrade && sudo apt install --no-install-recommends signal-desktop
    
  4. Shutdown the TemplateVM (substitute your template name if needed):

     [user@dom0 ~]$ qvm-shutdown debian-11
    
  5. Create an AppVM based on this TemplateVM.

  6. With your mouse, select the Q menu -> Domain: "AppVM Name" -> "AppVM Name": Qube Settings -> Applications (or in Qubes Manager "AppVM Name" -> Settings -> Applications). Select Signal from the left Available column, move it to the right Selected column by clicking the > button and then OK to apply the changes and close the window.