tis-drawio icon

draw.io

Paquet d’installation silencieuse pour draw.io

29.6.1-5
Utilities
Utilities

Les paquets PREPROD sont des paquets construits via LUTI. Ils restent généralement 5 jours en PREPROD, après quoi un deuxième scan VirusTotal est effectué pour vérifier que le status n'a pas changé.
Si le paquet réussit ce dernier contrôle, il est promu en PROD et publié sur le store.

  • package: tis-drawio
  • name: draw.io
  • version: 29.6.1-5
  • categories: Utilities
  • maintainer: WAPT Team,Tranquil IT,Simon Fonteneau,Pierre COSSON,Ingrid TALBOT,Jimmy PELÉ
  • editor: JGraph
  • licence: opensource_free,cpe:/a:apache:license_2.0,wapt_public
  • locale: all
  • target_os: windows
  • impacted_process: draw.io
  • architecture: x86
  • signature_date:
  • size: 117.34 Mo
  • installed_size: 435.18 Mo
  • homepage : http://www.draw.io

package           : tis-drawio
version           : 29.6.1-5
architecture      : x86
section           : base
priority          : optional
name              : draw.io
categories        : Utilities
maintainer        : WAPT Team,Tranquil IT,Simon Fonteneau,Pierre COSSON,Ingrid TALBOT,Jimmy PELÉ
description       : draw.io is free online diagram software for making flowcharts, process diagrams, org charts, UML, ER and network diagrams
depends           : 
conflicts         : 
maturity          : PREPROD
locale            : all
target_os         : windows
min_wapt_version  : 2.3
sources           : https://github.com/jgraph/drawio-desktop/releases
installed_size    : 435183041
impacted_process  : draw.io
description_fr    : draw.io est un logiciel de diagramme en ligne gratuit permettant de créer des organigrammes, des diagrammes de processus, des diagrammes UML, ER et des diagrammes de réseau
description_pl    : draw.io to darmowe oprogramowanie do tworzenia schematów blokowych, diagramów procesów, schematów organizacyjnych, UML, ER i diagramów sieciowych
description_de    : draw.io ist eine kostenlose Online-Diagrammsoftware zur Erstellung von Flussdiagrammen, Prozessdiagrammen, Organigrammen, UML, ER und Netzwerkdiagrammen
description_es    : draw.io es un software de diagramas en línea gratuito para crear diagramas de flujo, diagramas de procesos, organigramas, diagramas UML, ER y de red
description_pt    : draw.io é um software de diagramas online gratuito para criar fluxogramas, diagramas de processos, organogramas, UML, ER e diagramas de rede
description_it    : draw.io è un software gratuito per la creazione di diagrammi di flusso, diagrammi di processo, organigrammi, diagrammi UML, ER e di rete
description_nl    : draw.io is gratis online diagrammensoftware voor het maken van stroomdiagrammen, procesdiagrammen, organogrammen, UML-, ER- en netwerkdiagrammen
description_ru    : draw.io - это бесплатное программное обеспечение для создания блок-схем, диаграмм процессов, оргсхем, UML, ER и сетевых диаграмм
audit_schedule    : 
editor            : JGraph
keywords          : 
licence           : opensource_free,cpe:/a:apache:license_2.0,wapt_public
homepage          : http://www.draw.io
package_uuid      : 7ea4e921-5f79-47ec-b95c-40ca7da0c2f9
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://github.com/jgraph/drawio-desktop/releases
min_os_version    : 10.0
max_os_version    : 
icon_sha256sum    : 5f1b0f70feb594db5e5f58614b7920488465dc55d56fb35ea81e37b10502363c
signer            : test
signer_fingerprint: b82fc8ef4a4475c0f69ac168176c2bfc58f572eb716c4eadd65e4785c155dd8e
signature_date    : 2026-03-08T08:57:30.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         : Dy/Txp1hgUMp58AbwS0XUhvZkDDpoSICst2O1kcS58HlPllWJ7o9MAP7uHYy8leskkCLcJfB2fZjRvlFs0rK65nJbU67/rtbm3szFXFcwCgQJK8rN6a2wm08+onNXr4qxjgY6UEMBoZ52fyoAndqh5mUkTqBjLHWlPxpGzpAccJ6RMvMR7hpbPzgUTHFUgbehcrE48XSvHJs2mUarlZXe6b0Ysy6zg+ZvF6lWVO6az7m2r7Vlmps+SAUWhCCRbbSBZdUB8yvKu4x3wtVTKc0X9bqgeMboKn9fOC13tTuV6Ka2lSyMPMt0x64d6oJ/VbFwWykESSlvLrBIWDGPTitUg==

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


def install():
    bin_name = glob.glob("draw.io*.exe")[0]
    install_exe_if_needed(
        bin_name,
        silentflags="/S",
        key="27a75bf3-be48-5c35-934f-8491cf108abe",
        min_version=control.get_software_version(),
    )

    # Removing desktop shortcut if allowed
    if params.get("remove_desktop_shortcut"):
        remove_desktop_shortcut("draw.io")

    # Disable auto update
    set_environ_variable("DRAWIO_DISABLE_UPDATE", "true")

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


def update_package():
    # Declaring local variables
    package_updated = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    app_name = control.name
    
    api_url = "https://api.github.com/repos/jgraph/drawio-desktop/releases/latest"
    
    print(f"API used is: {api_url}")
    json_load = wgets(api_url, proxies=proxies, as_json=True)
    version = json_load["tag_name"].replace("v", "").replace(".windows", "")

    download_dict = {
        "windows-x64": f"draw.io-{version}-windows-installer.exe",
        "windows-x86": f"draw.io-ia32-{version}-windows-32bit-installer.exe",
        "windows-arm": f"draw.io-arm64-{version}-windows-arm64-installer.exe",
        "debian_based-x64": f"drawio-amd64-{version}.deb",
        "debian_based-arm64": f"drawio-arm64-{version}.deb",
        "redhat_based-x64": f"drawio-x86_64-{version}.rpm",
        "darwin-x64": f"draw.io-x64-{version}.dmg",
        "darwin-arm": f"draw.io-arm64-{version}.dmg",
    }
    os_type = control.target_os + "-" + ensure_list(control.architecture)[0]

    for asset in json_load["assets"]:
        if asset["name"] == download_dict[os_type]:
            download_url = asset["browser_download_url"]
            latest_bin = asset["name"]
            latest_bin_extension = latest_bin.rsplit('.', 1)[-1]
            break

    # Downloading latest binaries
    print(f"Latest {app_name} version is: {version}")
    print(f"Download URL is: {download_url}")
    if not isfile(latest_bin):
        print(f"Downloading: {latest_bin}")
        wget(download_url, latest_bin, proxies=proxies)
    else:
        print(f"Binary is present: {latest_bin}")

    expected_issuer = 'JGraph Ltd'
    sign_name = waptlicences.check_msi_signature(latest_bin)[0]
    if sign_name != expected_issuer:
        error('Bad issuer %s != %s ' % (sign_name,expected_issuer))

    # Changing version of the package
    if Version(version) > Version(control.get_software_version()):
        print(f"Software version updated (from: {control.get_software_version()} to: {Version(version)})")
        package_updated = True
    else:
        print(f"Software version up-to-date ({Version(version)})")

    for f in glob.glob(f'*.{latest_bin_extension}'):
        if f != latest_bin:
            remove_file(f)

    control.set_software_version(version)
    control.save_control_to_wapt()

    return package_updated

01ca7fe94636e5a08fcb73849d3b5df25d51e2c82f4dd1a08f01798b25899819 : WAPT/certificate.crt
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 : WAPT/changelog.txt
564d1e11886ed4e069c6bbf3261351a82c396dd37499ea6b006a5728096afe86 : WAPT/control
5f1b0f70feb594db5e5f58614b7920488465dc55d56fb35ea81e37b10502363c : WAPT/icon.png
65c6e4186d7d69a2fb4a0be3cf90627817061ffc31af5b36d1c9c5042478a7dd : draw.io-ia32-29.6.1-windows-32bit-installer.exe
006160f9de2cd6067dce250b74ee205cfe05e49e1a1598376bfda5018b03df95 : luti.json
59772102a20f153ba5516dad27e4cb77b8f40cca88dcd79d6d5cd0f1503e6a78 : setup.py
1d362a41f739b6cc17b9f81651e595c69573472f560b84125312c458060a9d6b : update_package.py