tis-gvim icon

Gvim

Paquet d’installation silencieuse pour Gvim

9.2.33-5
Development
Development

  • package: tis-gvim
  • name: Gvim
  • version: 9.2.33-5
  • categories: Development
  • maintainer: WAPT Team,Tranquil IT,Pierre COSSON
  • licence: Vim License
  • locale: all
  • target_os: windows
  • impacted_process: vim,gvim
  • architecture: x86
  • signature_date:
  • size: 11.18 Mo
  • installed_size: 49.19 Mo
  • homepage : https://github.com/vim/vim

package           : tis-gvim
version           : 9.2.33-5
architecture      : x86
section           : base
priority          : optional
name              : Gvim
categories        : Development
maintainer        : WAPT Team,Tranquil IT,Pierre COSSON
description       : Vim is an improved version Vi. including new features like multi-level undo, syntax highlighting, command line history, on-line help, spell checking, filename completion, block operations, script language, etc.
depends           : 
conflicts         : 
maturity          : PROD
locale            : all
target_os         : windows
min_wapt_version  : 2.0
sources           : https://github.com/vim/vim-win32-installer/releases
installed_size    : 49192960
impacted_process  : vim,gvim
description_fr    : Vim est une version améliorée de Vi. comprenant de nouvelles fonctionnalités telles que l'annulation multi-niveaux, la coloration syntaxique, l'historique de la ligne de commande, l'aide en ligne, la vérification orthographique, la complétion de nom de fichier, les opérations de bloc, le langage script, etc.
description_pl    : Vim jest ulepszoną wersją programu Vi. Zawiera nowe funkcje, takie jak wielopoziomowe cofanie, kolorowanie składni, historia wiersza poleceń, pomoc on-line, sprawdzanie pisowni, uzupełnianie nazw plików, operacje blokowe, język skryptowy itp.
description_de    : Vim ist eine verbesserte Version von Vi, die neue Funktionen wie mehrstufiges Rückgängigmachen, Syntaxhervorhebung, Befehlszeilenverlauf, Online-Hilfe, Rechtschreibprüfung, Dateinamensvervollständigung, Blockoperationen, Skriptsprache usw. enthält.
description_es    : Vim es una versión mejorada de Vi. que incluye nuevas funciones como deshacer en varios niveles, resaltado de sintaxis, historial de la línea de comandos, ayuda en línea, corrección ortográfica, finalización de nombres de archivos, operaciones en bloque, lenguaje de scripts, etc.
description_pt    : Vim é uma versão melhorada Vi. incluindo novos recursos como desfazer multi-níveis, destaque de sintaxe, histórico de linha de comando, ajuda on-line, verificação ortográfica, preenchimento de nomes de arquivos, operações em bloco, linguagem de script, etc.
description_it    : Vim è una versione migliorata di Vi. che include nuove caratteristiche come annullamento multilivello, evidenziazione della sintassi, cronologia della linea di comando, aiuto in linea, controllo ortografico, completamento dei nomi dei file, operazioni a blocchi, linguaggio di script, ecc.
description_nl    : Vim is een verbeterde versie van Vi. met nieuwe mogelijkheden zoals multi-level undo, syntax highlighting, command line history, on-line help, spellingscontrole, bestandsnaam completering, blok operaties, script taal, etc.
description_ru    : Vim - это улучшенная версия Vi. включающая такие новые возможности, как многоуровневая отмена, подсветка синтаксиса, история командной строки, интерактивная справка, проверка орфографии, завершение имени файла, операции с блоками, язык сценариев и т.д.
audit_schedule    : 
editor            : 
keywords          : vi
licence           : Vim License
homepage          : https://github.com/vim/vim
package_uuid      : e836f0ab-8d1f-4ec5-a6db-061c06c333da
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://github.com/vim/vim-win32-installer/releases
min_os_version    : 
max_os_version    : 
icon_sha256sum    : 851fa72b363b2e1cecdce5f23dc8c223154e1e234892a6d27806f548cc633ed4
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2026-02-25T15:13:11.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         : YWiJ1aSG+9MDzIdyECdahV8oGPt/HBkyDU1Ufu9TiV1ugpQNPGD3J5Ss2c+jck/om7oyP+sCoUFgsBoTN6jUnp2ak96xeUV6WJxS6fdnTE28HZeTrO43WL5zi22AmTDQmcBKQxOzsDv69lnnFw2ygVpRm77fadxCVECCd+n1l4ZscGbClgufnnYt06tdwAHdqKGFneDC+ipWyTFG/j3SApOKxDDkw7iHypYVSWvYE08LWSSUhHAVSXpLj3tsuEgxGJVBTyqNJlUHS4t6oGGyHb10dONgIX2weBFeRsWtaK6ta3kvI3H3B26N4gd/xc++QSN3ZrpS4dhZ53uuOloLZw==

# -*- coding: utf-8 -*-
##################################################
# This file is part of WAPT Enterprise
# All right reserved, (c) Tranquil IT Systems 2023
# For more information please refer to
# https://wapt.tranquil.it/store/licences.html
##################################################
from setuphelpers import *
import json


def install():
    # Declaring local variables
    bin_name = glob.glob("gvim*_x86.exe")[0]

    # Uninstalling older version of the software that can remains
    for to_uninstall in installed_softwares(name=r"Vim "):
        if (Version(to_uninstall["version"]) < Version(control.get_software_version())):
            print(f"Removing: {to_uninstall['name']} ({to_uninstall['version']})")
            killalltasks(ensure_list(control.impacted_process))
            run(uninstall_cmd(to_uninstall["key"]))
            wait_uninstallkey_absent(to_uninstall["key"])

            path_dir = os.path.dirname(to_uninstall['uninstall_string'])
            remove_from_system_path(path_dir)

    uninstall_key_name = rf"Vim {Version(control.get_software_version(), 2)}"
    install_exe_if_needed(
        bin_name,
        silentflags="/S",
        name=uninstall_key_name,
        min_version=control.get_software_version(),
    )

    # Waiting a fix of params to used that
    # software = installed_softwares(name=uninstall_key_name)[0]
    # params['software'] = software
    # add_to_system_path(path_dir)
    # print(f"Adding to system path: {path_dir}")

    # Temporary used of persistent dir
    software = installed_softwares(name=uninstall_key_name)[0]
    path_dir = os.path.dirname(software['uninstall_string'])
    software_file = makepath(persistent_dir, f"{control.package}.json")

    with open(software_file, "w") as f:
        json.dump(software, f, indent=4)

    add_to_system_path(path_dir)
    print(f"Adding to system path: {path_dir}")


def uninstall():

    # Waiting a fix of params to used that
    # if params.get('software'):
    #     path_dir = params['software']['uninstall_string']
    #     remove_from_system_path(path_dir)
    #     print(f"Removed to system path: {path_dir}")

    # Temporary used of persistent dir
    software_file = makepath(persistent_dir, f"{control.package}.json")
    if isfile(software_file):
        with open(software_file) as f:
            software = json.load(f)
        path_dir = os.path.dirname(software['uninstall_string'])
        remove_from_system_path(path_dir)
        print(f"Removed to system path: {path_dir}")
        remove_file(software_file)

# -*- coding: utf-8 -*-
##################################################
# This file is part of WAPT Enterprise
# All right reserved, (c) Tranquil IT Systems 2023
# For more information please refer to
# https://wapt.tranquil.it/store/licences.html
##################################################
from setuphelpers import *


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
   
    git_repo = "vim/vim-win32-installer"
    url_api = f"https://api.github.com/repos/{git_repo}/releases/latest"

    print("API used is: %s" % url_api)
    json_load = wgets(url_api, proxies=proxies, as_json=True)

    version = json_load["tag_name"].strip('v')
    for download in json_load["assets"]:
        if download["name"].endswith(f'_{control.architecture}.exe'):
            download_url = download["browser_download_url"]
            latest_bin = download["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}")

    # 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

38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
ebdb8d0783a75a97a10eec2a2885ce54f0466b52e53ded21f6f338429af23c9d : WAPT/control
851fa72b363b2e1cecdce5f23dc8c223154e1e234892a6d27806f548cc633ed4 : WAPT/icon.png
4aa15ddc245b1cf1f70a02bac92b87bf6eace4570571edbaee2b7cd0d54317bd : gvim_9.2.0033_x86.exe
71265ddb4f58b4bcfc14960fa7adfeef4c6665d9ce76680312350943ec475e67 : luti.json
73bf962e430c1d71f511afc5e6e5a1add71b391568fe01d508e38d3f6df7bb79 : setup.py
bc3c83bf6fe958baf2006de52c0819fe221a3d26f4e84e3bb146998a0c2e7a89 : update_package.py