tis-onlyoffice-desktop icon

ONLYOFFICE Desktop Editors

Silent install package for ONLYOFFICE Desktop Editors

9.0.3.29-12

  • package: tis-onlyoffice-desktop
  • name: ONLYOFFICE Desktop Editors
  • version: 9.0.3.29-12
  • categories: Office
  • maintainer: WAPT Team,Tranquil IT,Jimmy PELÉ,Simon Fonteneau,Pierre Cosson
  • editor: Ascensio System SIA
  • licence: GPLv3
  • locale: all
  • target_os: windows
  • impacted_process: DesktopEditors,editors,editors_helper
  • architecture: x64
  • signature_date:
  • size: 285.94 Mo
  • homepage : https://www.onlyoffice.com/

package           : tis-onlyoffice-desktop
version           : 9.0.3.29-12
architecture      : x64
section           : base
priority          : optional
name              : ONLYOFFICE Desktop Editors
categories        : Office
maintainer        : WAPT Team,Tranquil IT,Jimmy PELÉ,Simon Fonteneau,Pierre Cosson
description       : ONLYOFFICE (formerly TeamLab) is an open source office suite
depends           : 
conflicts         : 
maturity          : PROD
locale            : all
target_os         : windows
min_wapt_version  : 2.0
sources           : https://www.onlyoffice.com/download-desktop.aspx
installed_size    : 
impacted_process  : DesktopEditors,editors,editors_helper
description_fr    : ONLYOFFICE (anciennement Teamlab Office) est une suite bureautique libre
description_pl    : ONLYOFFICE (dawniej TeamLab) to pakiet biurowy typu open source
description_de    : ONLYOFFICE (ehemals TeamLab) ist eine Open-Source-Office-Suite
description_es    : ONLYOFFICE (antes TeamLab) es una suite ofimática de código abierto
description_pt    : ONLYOFFICE (antigo TeamLab) é uma suite de escritório de código aberto
description_it    : ONLYOFFICE (ex TeamLab) è una suite per ufficio open source
description_nl    : ONLYOFFICE (voorheen TeamLab) is een open source kantoorpakket
description_ru    : ONLYOFFICE (ранее TeamLab) - офисный пакет с открытым исходным кодом
audit_schedule    : 
editor            : Ascensio System SIA
keywords          : only,onlyoffice,office,suite,word,spreadsheet,sheet,excel,presentation,doc,docx,xls,xlsx,ppt,pptx
licence           : GPLv3
homepage          : https://www.onlyoffice.com/
package_uuid      : ec0114f2-0a9c-4215-82d1-bed68bb604f2
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://helpcenter.onlyoffice.com/server/document/changelog.aspx
min_os_version    : 6.1
max_os_version    : 
icon_sha256sum    : fcaa0478b4159a05634ae213c29643b6138b39e067c19210b2553a9746c4dad3
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2025-07-14T10:07:49.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         : q4MXPcDWVWXIrV/IodUVhFtJkbynUOaSDGkDftxjoKi31RKuFaCDMf0RCu8IYmfo5FxMaTTfu9ZMfaEH+JtWbgOahSA1MZm5Xht9aIXi5JBvIUKChps1KMPTZx95J5RHntXMaY0vdqmpyw1K4biwTpHebaREEDaB2zFb7BrUn6CCo5iZFbH+g2pHEDf70Krg4qju2UA1AGdL433M/W95/v2wrSQCNZ2fODTWCfHCLHYoSvmWA5PPfmfWtUzn+/vKTFKpYfhVGLOlVVb4JlFKKriPxjEiWCroWWepR3yO79z113L7I+cioyUx+gtdcjmBPQhdmistH//PniEsb5yHPA==

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

app_uninstallkey = "ONLYOFFICE Desktop Editors_is1"


def install():
    # Specific app values
    package_version = control.get_software_version()
    bin_name = "DesktopEditors_%s-%s.exe" % (control.architecture, package_version)

    for onlyoffice in installed_softwares(app_uninstallkey):
        if programfiles32 in onlyoffice["uninstall_string"]:
            run(uninstall_cmd(onlyoffice["key"]), timeout=1200)

    # Installing the package
    install_exe_if_needed(
        bin_name,
        silentflags="/VERYSILENT /NORESTART /SUPRESSMSGBOXES",
        key=app_uninstallkey,
        min_version=package_version,
        timeout=1600,
    )

    remove_desktop_shortcut("ONLYOFFICE Editors")
    run(r'sc stop "ONLYOFFICE Update Service"')
    run(r'sc config "ONLYOFFICE Update Service" start= disabled')


def session_setup():
    print("Disabling: check for update")
    registry_setstring(HKEY_CURRENT_USER, r"Software\ONLYOFFICE\DesktopEditors", "CheckForUpdates", "0")

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


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

    # Getting proxy informations from WAPT settings
    proxy = {}
    if platform.system() == "Windows" and isfile(makepath(user_local_appdata(), "waptconsole", "waptconsole.ini")):
        proxywapt = inifile_readstring(makepath(user_local_appdata(), "waptconsole", "waptconsole.ini"), "global", "http_proxy")
        if proxywapt:
            proxy = {"http": proxywapt, "https": proxywapt}

    # Specific app values
    app_name = control.name
    url_api = "https://api.github.com/repos/ONLYOFFICE/DesktopEditors/releases"
    bin_name_string = "DesktopEditors_%s-%s.exe"

    # Getting latest version from official website
    json_load = json.loads(wgets(url_api, proxies=proxy))
    found = False
    for release in json_load:
        if found == True:
            break
        for download in release["assets"]:
            if (".exe" in download["name"]) and ("x64" in download["name"]) and (not 'xp' in download["name"]):
                url_dl = download["browser_download_url"]
                version = release["tag_name"].split("-")[-1]
                found = True

    latest_bin = bin_name_string % (control.architecture, version)

    print("Latest " + app_name + " version is: " + version)
    print("Download url is: " + url_dl)

    # Downloading latest binaries
    if not isfile(latest_bin):
        print("Downloading: " + latest_bin)
        wget(url_dl, latest_bin, proxies=proxy)

        # Get version from file
        version_from_file = get_file_properties(latest_bin)["ProductVersion"]
        if version != version_from_file and version_from_file != "":
            version = version_from_file
            old_latest_bin = latest_bin
            latest_bin = bin_name_string % (control.architecture, version)
            if isfile(latest_bin):
                remove_file(latest_bin)
            os.rename(old_latest_bin, latest_bin)

        # Changing version of the package
        control.version = "%s-%s" % (version, int(control.version.split("-", 1)[1]) + 1)
        control.save_control_to_wapt(".")
        print("Changing version to " + control.version + " in WAPT\\control")
        print("Update package done. You can now build-upload your package")
    else:
        print("This package is already up-to-date")

    # Deleting outdated binaries
    for bin_in_dir in glob.glob("*.exe") or glob.glob("*.msi") or glob.glob("*.zip"):
        if bin_in_dir != latest_bin:
            print("Outdated binary: " + bin_in_dir + " Deleted")
            remove_file(bin_in_dir)

0cf049cfe23f39e3aba6ff376259a633b3ef334ef2a8f8ddfbad82799c4ca4fc : DesktopEditors_x64-9.0.3.29.exe
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
a801afb0e54c6081b199c2fc61cafbd56d80e2a6544739f26a3df29f9a2fb174 : WAPT/control
fcaa0478b4159a05634ae213c29643b6138b39e067c19210b2553a9746c4dad3 : WAPT/icon.png
47f810b1fdb0d20dda97b5031347a9008a49aff067834e06579e7f27ab8a5767 : luti.json
b03c7f7e6a5b5151dc24db92d408d7d9d4c6441bcea1253939685e75636088c9 : setup.py
a8e72eb2c4f293fe7823e236289639e0f1b9781d39b8e79d3bf0f4702468e738 : update_package.py