tis-signal-desktop icon

Signal

Silent install package for Signal

7.86.0-3
Messaging
Messaging

Preprod packages are packages built on LUTI. They remain in PREPROD usually for 5 days, after which a second VirusTotal scan is performed to verify that the status has not changed.
If the package passes this last check, it is promoted to PROD and published on the store.

  • package: tis-signal-desktop
  • name: Signal
  • version: 7.86.0-3
  • categories: Messaging
  • maintainer: WAPT Team,Tranquil IT,Jimmy PELÉ,Flavien SCHELFAUT
  • editor: Signal Foundation,Signal Messenger LLC
  • licence: GPLv3
  • locale: all
  • target_os: darwin
  • impacted_process: signal
  • architecture: x64
  • signature_date:
  • size: 261.03 Mo
  • homepage : https://signal.org/

package           : tis-signal-desktop
version           : 7.86.0-3
architecture      : x64
section           : base
priority          : optional
name              : Signal
categories        : Messaging
maintainer        : WAPT Team,Tranquil IT,Jimmy PELÉ,Flavien SCHELFAUT
description       : Signal is a cross-platform encrypted messaging service. It uses the Internet to send one-to-one and group messages, which can include files, voice notes, images and videos.
depends           : 
conflicts         : 
maturity          : PREPROD
locale            : all
target_os         : darwin
min_wapt_version  : 2.1
sources           : https://signal.org/download/
installed_size    : 
impacted_process  : signal
description_fr    : Signal permet de communiquer (appels vocaux et vidéo, messages texte ou médias) de façon chiffrée et sécurisée.
description_pl    : Signal to wieloplatformowa usługa szyfrowania wiadomości. Wykorzystuje Internet do wysyłania wiadomości od jednego do drugiego i grupowych, które mogą zawierać pliki, notatki głosowe, obrazy i filmy
description_de    : Signal ist ein plattformübergreifender verschlüsselter Nachrichtendienst. Er nutzt das Internet, um Einzel- und Gruppennachrichten zu versenden, die Dateien, Sprachnotizen, Bilder und Videos enthalten können
description_es    : Signal es un servicio de mensajería encriptada multiplataforma. Utiliza Internet para enviar mensajes uno a uno y en grupo, que pueden incluir archivos, notas de voz, imágenes y vídeos
description_pt    : O sinal é um serviço de mensagens encriptadas multiplataforma. Utiliza a Internet para enviar mensagens individuais e de grupo, que podem incluir ficheiros, notas de voz, imagens e vídeos
description_it    : Signal è un servizio di messaggistica criptata multipiattaforma. Utilizza Internet per inviare messaggi individuali e di gruppo, che possono includere file, note vocali, immagini e video
description_nl    : Signal is een platformonafhankelijke versleutelde berichtendienst. Het gebruikt het internet om één-op-één-berichten en groepsberichten te versturen, die bestanden, spraaknotities, afbeeldingen en video's kunnen bevatten
description_ru    : Signal - это кросс-платформенная служба обмена зашифрованными сообщениями. Он использует Интернет для отправки индивидуальных и групповых сообщений, которые могут включать файлы, голосовые заметки, изображения и видео
audit_schedule    : 
editor            : Signal Foundation,Signal Messenger LLC
keywords          : 
licence           : GPLv3
homepage          : https://signal.org/
package_uuid      : e0d62cd9-e6eb-4eb4-83fb-a2134a6b5da6
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 11
max_os_version    : 
icon_sha256sum    : 3adb886fd11d1ac878e24c20600a8c65721098a0607e1723638e5719c9805539
signer            : test
signer_fingerprint: b82fc8ef4a4475c0f69ac168176c2bfc58f572eb716c4eadd65e4785c155dd8e
signature_date    : 2026-01-21T23:12:37.000000
signed_attributes : package,version,architecture,section,priority,name,categories,maintainer,description,depends,conflicts,maturity,locale,target_os,min_wapt_version,sources,installed_size,impacted_process,description_fr,description_pl,description_de,description_es,description_pt,description_it,description_nl,description_ru,audit_schedule,editor,keywords,licence,homepage,package_uuid,valid_from,valid_until,forced_install_on,changelog,min_os_version,max_os_version,icon_sha256sum,signer,signer_fingerprint,signature_date,signed_attributes
signature         : sPCHC9AJMERVwpLGjm1F2rPWws5FJvLtTdsbM4Q5jBdGGXJF3/j0mlzHTn+uLfTAX3e/coKWk+QDT56Jwbnq335fZxI0mcC1aipwWbIH5QHXJlwmJVREL8s+RCvKRfAHC2wn72JWa7VboNBin/TW7nCvhlckGuYRvArzW72KWrZ0nEdIJAZg/nuVI/NT/tMmVrG0tooTZe4Z0ZXc/sHuDMXVYI+UbHb6snniiKj6BQv/QVHEC0dcMjNgqnJp7+5EYEYpc0Jl/AlC4b5Uab+Iqofkedw/3O5NYdLM652kPT2RbHwLtNEHa9vG8XYdQcgYh6LSUq6yrc0PGyp0UeEZ6g==

# -*- coding: utf-8 -*-
from setuphelpers import *


def install():
    install_dmg(glob.glob("signal-desktop-mac-*.dmg")[0])


def uninstall():
    remove_tree("/Applications/Signal.app")

# -*- coding: utf-8 -*-
from setuphelpers import *
import re


def read_file(filepath):
    with open(filepath, 'r', encoding='utf-8') as file:
        content = file.read()
    return content

def find_version(filename):
    version = re.search('version: .*', read_file(filename)).group(0)
    return version.split(':')[-1].strip()


def update_package():
    print("Download/Update package content from upstream binary sources")

    # Declaring local variables
    package_updated = False
    proxies = get_proxies_from_wapt_console()
    if not proxies:
        proxies = get_proxies()
    app_name = control.name

    os_dict_yaml = { 'windows' : 'latest', 'darwin' : 'latest-mac' }
    yaml_download = f"https://updates.signal.org/desktop/{os_dict_yaml[control.target_os]}.yml"
    yaml_file = 'latest.yml'

    print(f"Downloading the yaml file: {yaml_download}")
    wget(yaml_download, yaml_file, proxies=proxies)

    # WAPT for the moment as no yaml parser
    # This part can be improved in the future
    version = find_version(yaml_file)

    latest_bin = f"signal-desktop-mac-universal-{version}.dmg"
    url_dl = f"https://updates.signal.org/desktop/{latest_bin}"

    print(f"Latest {app_name} version is: {version}")
    print(f"Download URL is: {url_dl}")

    # Downloading latest binaries
    if not isfile(latest_bin):
        print("Downloading: " + latest_bin)
        wget(url_dl, latest_bin, proxies=proxies)
    else:
        print(f"Binary is present: {latest_bin}")

    # Deleting outdated binaries
    for f in glob.glob('*.dmg'):
        if f != latest_bin:
            remove_file(f)
    
    remove_file(yaml_file)

    control.set_software_version(version)
    control.save_control_to_wapt()

    # Validating update-package-sources
    return package_updated

01ca7fe94636e5a08fcb73849d3b5df25d51e2c82f4dd1a08f01798b25899819 : WAPT/certificate.crt
5b8afff81a4e18231beb1f8ea16c1080a2d1b5c89749b3438bf559c4e4a1a2fd : WAPT/control
3adb886fd11d1ac878e24c20600a8c65721098a0607e1723638e5719c9805539 : WAPT/icon.png
8e32df996aabec6160184030b05ae683dd37f19d880ca1ab3b62536f0f2e9fc5 : luti.json
8aa51d783b2e99b96efbe5966fa9a8ebf782c460e3cf844e42336ec7d45d95fe : setup.py
5a4e5f90988a5acae89c2e608c0ce9c0f42de1b19445bf1b537fd751b23e9015 : signal-desktop-mac-universal-7.86.0.dmg
bee47587bcf3cab8bb3f5b5dcf8c0c8a277f60764ec0a4047d58492ab1abd784 : update_package.py