What is Signal?
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. During calls, users can check the integrity of the data channel by checking if two words match on both ends of the call.
Signal is developed by Open Whisper Systems. The clients are published as free and open-source software under the GPLv3 license.
How to install Signal in Qubes
If you’re a Signal user on Android, you can now have Signal inside Qubes.
- Install the Chromium browser in a TemplateVM.
- Shut down the TemplateVM.
- Create a new AppVM based on this TemplateVM.
- Launch Chromium browser in the new AppVM, type
chrome://extensions/in the address bar, and follow the link to the Chrome app store.
- In the app store, search for “Signal Private Messenger” and install the app.
- The app launches automatically on first install. Follow the prompts to “link” this app with your phone.
- Signal should now work in your AppVM.
Creating a Shortcut in the applications menu
Let’s make Signal a bit more usable by creating a shortcut in our desktop
panel that launches Signal directly. This assumes that you’re using KDE or Xfce in Dom0,
you use Signal in an AppVM named
Signal, and this AppVM uses
fedora-23 as its TemplateVM.
- Follow these instructions to create a desktop shortcut on the Desktop of your Signal AppVM.
Let’s assume the shortcut file you get is
Copy this shortcut file to the AppVM’s TemplateVM - in this case, to
[user@Signal ~]$ qvm-copy-to-vm fedora-23 /home/user/Desktop/chrome-bikioccmkafdpakkkcpdbhpfkkhcmohk-Default.desktop
- You’ll also want to copy across an icon for your new shortcut - you can find this at
/home/user/.local/share/icons/hicolor/48x48/apps/chrome-bikioccmkafdpakkkcpdbhpfkkhcmohk-Default.pngCopy this icon to the
fedora-23TemplateVM in the same way as step 2.
Open a terminal in your
/home/user/QubesIncoming/Signal/. You should find your shortcut and icon files just transferred across from the Signal AppVM. Move these files to the following locations:
[user@fedora-23 Signal]$ sudo mv chrome-bikioccmkafdpakkkcpdbhpfkkhcmohk-Default.desktop /usr/share/applications/ [user@fedora-23 Signal]$ sudo mv chrome-bikioccmkafdpakkkcpdbhpfkkhcmohk-Default.png /usr/share/icons/hicolor/48x48/apps/
From a Dom0 terminal, instruct Qubes to synchronize the application menus of this TemplateVM:
[user@dom0 ~]$ qvm-sync-appmenus fedora-23
Stop both the AppVM (
Signal) and its TemplateVM (
SignalVM will now see the desktop file in
/usr/share/applicationswhen it is next started.
- With your mouse select the
Signal: Add more shortcutsSelect
Signal Private Messengerfrom the left
Availablecolumn, move it to the right
Selectedcolumn by clicking the
>button and then
OKto apply the changes and close the window.
- (optional, only on KDE:) Follow the
Qmenu once more, right-click on the new
Signal: Signal Private Messengermenu item and select
Add to Panel.
You can now launch the Signal messenger inside its own dedicated AppVM directly from the desktop.
The same steps should work for any Chrome app.