tis-signal-desktop icon

Signal

Silent install package for Signal

7.82.0-3
Messaging
Messaging

Preprod packages are packages built on LUTI. They remain in PREPROD usually for 5 days, after which a new VirusTotal scan is performed.
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.82.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: 264.08 Mo
  • homepage : https://signal.org/

package           : tis-signal-desktop
version           : 7.82.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      : b5b54c5b-8775-48dc-a9d3-d3c8b8c86579
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    : 2025-12-10T23:57:42.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         : V8XZRyBw8r4ql9NcbQ3Yxd3otLxq+5ij35xFYdEHtB6nIoPu55PuW4mws6l8ySteKp4XRWjpNddoX0mcz7i2G9B0Q9MrAF2lE3R8oK3Q+TZQii6MmkhsZpXCOZbw0bFknxMDkmjzrRbDSaAd+OA7q7H6itBvYii//KGClMzgrQ9SqImAkDxBMtHLeqjFI08b3uyfbWEyuxll3zRe1W3Lddid7ODklFVs+gZqfH+/R5JpbVOe8c5GPmR9vUT+ctJqNvkGNLb2lcpG1QIynwRRIQAisUasKlREUOPRSnQVYzSLSc4me7jpY28tDNw8UMHP/ofMuB0TqmTHjIkId4nXtw==

# -*- 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
c6bc243aea06afd0032fabc8a7627819d5104f1fc5f368b583159ef3c27b4a25 : WAPT/control
3adb886fd11d1ac878e24c20600a8c65721098a0607e1723638e5719c9805539 : WAPT/icon.png
b392350c693fdb7d1608af63cbc3869f48a435ee5fd6b1cdb5c681867afb6ea9 : luti.json
8aa51d783b2e99b96efbe5966fa9a8ebf782c460e3cf844e42336ec7d45d95fe : setup.py
306ce66a8757fbd728d8010deea9d30ead0008a9d446b30396ec2dc93b134b06 : signal-desktop-mac-universal-7.82.0.dmg
bee47587bcf3cab8bb3f5b5dcf8c0c8a277f60764ec0a4047d58492ab1abd784 : update_package.py