tis-zulip icon

Zulip

Silent install package for Zulip

5.12.1-10

  • package: tis-zulip
  • name: Zulip
  • version: 5.12.1-10
  • categories: Messaging
  • maintainer: WAPT Team,Tranquil IT,Ingrid TALBOT
  • licence: opensource_free,cpe:/a:apache:license_2.0,wapt_public
  • locale: all
  • target_os: windows
  • impacted_process: Zulip
  • architecture: x86
  • signature_date:
  • size: 94.59 Mo
  • installed_size: 296.16 Mo
  • homepage : https://zulip.com/

package           : tis-zulip
version           : 5.12.1-10
architecture      : x86
section           : base
priority          : optional
name              : Zulip
categories        : Messaging
maintainer        : WAPT Team,Tranquil IT,Ingrid TALBOT
description       : Zulip is an organized team chat app, designed for efficient communication
depends           : 
conflicts         : 
maturity          : PROD
locale            : all
target_os         : windows
min_wapt_version  : 2.3
sources           : https://github.com/zulip/zulip-desktop/releases
installed_size    : 296155069
impacted_process  : Zulip
description_fr    : Zulip est une application de chat en équipe organisée, conçue pour une communication efficace
description_pl    : 
description_de    : 
description_es    : 
description_pt    : 
description_it    : 
description_nl    : 
description_ru    : 
audit_schedule    : 
editor            : 
keywords          : team,chat,communication
licence           : opensource_free,cpe:/a:apache:license_2.0,wapt_public
homepage          : https://zulip.com/
package_uuid      : fbafe553-b07c-48d4-95e2-cb600749a606
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://github.com/zulip/zulip-desktop/blob/main/changelog.md
min_os_version    : 
max_os_version    : 
icon_sha256sum    : e4cca38fb679e0b1503f21edb1e3a0e6632eb6d1c271ce1be0bf001a98b54493
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2025-09-04T01:58:51.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         : CxRPVsLpGehxVKVNwbfPEzdSOINeALMIn7ohCKZdw1wNdvWHMIlbC8+vE2pAn7LunO6auE2nIzL1A4cltW10RpmDQMm78I+vTavAGKpVBNYTJYVH39gZQyBKbw1bch5Z7BDSQB9qdg5m6Lh3ESii0vOe2L+Ve31OSzx7j7yiKracVksJ5AiVU2SxQL43AUxhZPiv1L5sqyBcPjutI05m10zaCHrx1PBxhjByr8Vgc1LryVpHPIRE1Dv7DCA9w2nypTdt8EfX24iltN7Po6VyMhOXAKrug04sQXZO3XLaDaZslal0/rEQKDlPEVwZUXhU++CFu1UhZONRwiZFrQrdcg==

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


def install():
    # # Installing the software
    bin_name = glob.glob("Zulip-*-ia32.msi")[0]

    for u in installed_softwares('zulip'):
        if Version(u['version']) < control.get_software_version():
            run(uninstall_cmd(u['key']))

    old_key= get_msi_properties(bin_name)['ProductCode']
    if uninstall_key_exists(old_key):
        if not isfile(makepath(programfiles64,'zulip',"Zulip.exe")):
            run(uninstall_cmd(old_key))
            
    install_msi_if_needed(bin_name,properties={"ALLUSERS":1})

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


def update_package():
    # Declaring local variables
    package_updated = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    api_url = "https://api.github.com/repos/zulip/zulip-desktop/releases/latest"
    update_dict = {
        "windows-x64": "x64.msi",
        "windows-x86": "-ia32.msi",
    }

    # Getting latest version information from official sources
    print("API used is: %s" % api_url)
    json_load = wgets(api_url, proxies=proxies, as_json=True)
    version = json_load["name"].replace("v", "")
    for to_download in json_load["assets"]:
        if update_dict[control.target_os + "-" + ensure_list(control.architecture)[0]] in to_download["name"]:
            download_url = to_download["browser_download_url"]
            latest_bin = to_download["name"]
            break

    # Downloading latest binaries
    print("Latest %s version is: %s" % (control.name, version))
    print("Download URL is: %s" % download_url)
    if not isfile(latest_bin):
        print("Downloading: %s" % latest_bin)
        wget(download_url, latest_bin, proxies=proxies)
    else:
        print("Binary is present: %s" % latest_bin)

    # Deleting outdated binaries
    remove_outdated_binaries(latest_bin)
    # arch_list = ensure_list(control.architecture)
    # remove_outdated_binaries(version, filename_contains=("x64" if "x64" in arch_list else "x86" if "x86" in arch_list else []))

    # Checking version from file
    if get_os_name() == "Windows" and "windows" in control.target_os.lower():
        version_from_file = get_version_from_binary(latest_bin)
        if Version(version_from_file, 3) == Version(version, 3):
            print(f"INFO: Binary file version ({version_from_file}) corresponds to online version ({version})")
        else:
            error(f"ERROR: Binary file version ({version_from_file}) do NOT corresponds to online version ({version})")

    # Changing version of the package
    if Version(version, 3) > Version(control.get_software_version(), 3):
        print("Software version updated (from: %s to: %s)" % (control.get_software_version(), Version(version)))
        package_updated = True
    else:
        print("Software version up-to-date (%s)" % Version(version))
    control.set_software_version(version)
    control.save_control_to_wapt()

    # Validating update-package-sources
    return package_updated

    # # Changing version of the package and validating update-package-sources
    # return complete_control_version(control, version)

38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
25a4891a67a10f81146be71374da7aa77ef102b14059f54935c71478084e725a : WAPT/control
e4cca38fb679e0b1503f21edb1e3a0e6632eb6d1c271ce1be0bf001a98b54493 : WAPT/icon.png
c57aa96e28a31a1c0fefb73e369cfe5225164b4f286e8e7acdb7a4bdc0ca94d5 : Zulip-5.12.1-ia32.msi
b5d76119c1205fe8037ba6511cca6ed55b255f54580f06a4c92f25c43e41b4c2 : luti.json
6343ff4d1dd4ed1ffef5b574791dd3cf6c9445d666a67ad237ec381f8bb82252 : setup.py
05397bc8571046b69279b527a7d71985019256b38fcd182d17083750d2378290 : update_package.py