tis-eid-belgium icon

belgium.eid

Paquet d’installation silencieuse pour belgium.eid

5.1.8.6030-1

  • package: tis-eid-belgium
  • name: belgium.eid
  • version: 5.1.8.6030-1
  • maintainer: Amel FRADJ
  • licence: GNU Lesser General Public License v3.0
  • target_os: windows
  • architecture: x64
  • signature_date:
  • size: 5.06 Mo
  • homepage : https://eid.belgium.be/en

package           : tis-eid-belgium
version           : 5.1.8.6030-1
architecture      : x64
section           : base
priority          : optional
name              : belgium.eid
categories        : 
maintainer        : Amel FRADJ
description       : The eID is an electronic proof of identity (with chip) with which you can carry out electronic transactions
depends           : 
conflicts         : 
maturity          : PROD
locale            : 
target_os         : windows
min_wapt_version  : 
sources           : 
installed_size    : 
impacted_process  : 
description_fr    : L'eID est une preuve d'identité électronique (avec puce) qui vous permet d'effectuer des transactions électroniques (belgique)
description_pl    : eID to elektroniczny dowód tożsamości (z chipem), za pomocą którego można przeprowadzać transakcje elektroniczne
description_de    : Die eID ist ein elektronischer Identitätsnachweis (mit Chip), mit dem Sie elektronische Transaktionen durchführen können
description_es    : El DNIe es una prueba electrónica de identidad (con chip) con la que puede realizar transacciones electrónicas
description_pt    : O eID é uma prova eletrónica de identidade (com chip) com a qual pode efetuar transacções electrónicas
description_it    : L'eID è una prova d'identità elettronica (con chip) con la quale è possibile effettuare transazioni elettroniche
description_nl    : De eID is een elektronisch identiteitsbewijs (met chip) waarmee je elektronische transacties kunt uitvoeren
description_ru    : eID - это электронное удостоверение личности (с чипом), с помощью которого вы можете совершать электронные транзакции
audit_schedule    : 
editor            : 
keywords          : 
licence           : GNU Lesser General Public License v3.0
homepage          : https://eid.belgium.be/en
package_uuid      : c220b05d-6939-413b-a83d-0e4299010566
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 8.1
max_os_version    : 
icon_sha256sum    : 017ed89d38d55d481946544fcd2af315ea294e814cd5fa7f5a12f6d6738891c7
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature         : ZH1/c9qHurFpsJsmaTvK1LztyLgVAmIgEJnnC+0YxZhXmxHwdNpdE/ihT9vcbaOjYyhf0U0njk9wQDns9gny8249AFNlPYxgYNoc5WBQBthjJD4PPG5XXb21IddXjTOglY2wsZNb8dMF3AMcfUQnQeE+yuJXl1LOOr5dIYQU4tln5TDEjArWPuvNWJ4wd7wdjTBqsaazCUt2eArGVtP4SxTzMvwElgDNmyG/9lJ0YbDhwZJaqqHFg6TOwqKIzNkn+RsZRQO1rkEtnFPpSNPwiG0IBF7eGMVyBR9XZBP37PdopKZmxPQCxjnU0lv6zTTLueZFgqGYhEmFgolrT6kOtg==
signature_date    : 2024-06-19T10:00:10.550134
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

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

r"""
Usable WAPT package functions: install(), uninstall(), session_setup(), audit(), update_package()
 {
   "key":"{DB942AEA-93D6-4FE4-8862-180D35A76030}",
   "name":"Belgium e-ID middleware 5.1.8 (build 6030)",
   "version":"5.1.6030",
   "install_date":"2024-06-14 00:00:00",
   "install_location":"C:\\Program Files (x86)\\Belgium Identity Card\\",
   "uninstall_string":"MsiExec.exe /I{DB942AEA-93D6-4FE4-8862-180D35A76030}",
   "publisher":"Belgian Government",
   "system_component":0,
   "win64":true
  }
 ]

"""
# Declaring global variables - Warnings: 1) WAPT context is only available in package functions; 2) Global variables are not persistent between calls


def install():
    # Declaring local variables
    bin_name= glob.glob('Belgium%20eID-*.exe')[0]
    # Installing the software
   
    install_exe_if_needed(bin_name,
        silentflags='/S /allusers',
        key= '{DB942AEA-93D6-4FE4-8862-180D35A76030}',
        min_version=control.get_software_version(),
        get_version=get_version,
        timeout=600,
    )


def get_version(app_registry_dict):
    name = app_registry_dict.get("name", "")
    
    # Rechercher le motif pour la version 'X.X.X' et le build '(build XXXX)'
    version_match = re.search(r'\b\d+\.\d+\.\d+\b', name)
    build_match = re.search(r'build (\d+)', name)
    
    if version_match and build_match:
        version = version_match.group(0)
        build = build_match.group(1)
        return f"{version}.{build}"
    else:
        return None

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


def update_package():
    # Déclaration des variables locales
    result = False
    proxies = get_proxies()  # Supposons que cette fonction récupère une liste de proxies
    if not proxies:
        proxies = get_proxies_from_wapt_console()  # Fonction pour récupérer des proxies depuis WAPT

    
    url = "https://eid.belgium.be/en"

    response = requests.get(url)
    # Recherche des balises <div> contenant les liens de téléchargement
    download_section = bs_find_all(url, 'div','class','field field--name-field-link field--type-link field--label-hidden field__item')
    
    if not download_section:
        print("Section de téléchargement non trouvée.")
        return False

    # Expression régulière pour trouver les liens correspondants à /download/{number}/license
    regex = re.compile(r'/download/\d+/license')

    # Recherche du lien de téléchargement spécifique
    download_links = []
    for section in download_section:
        for link in section.find_all('a', href=True):
            href = link['href']
            print(f"Lien extrait: {href}")  # Afficher chaque lien extrait pour le débogage
            if regex.search(href):
                download_link = f"https://eid.belgium.be{href}"
                break
        if download_link:
            break
    # Accéder à la page de téléchargement et extraire le lien vers le fichier .exe
    exe_link = None
    try:
        dl_response = requests.get(download_link, proxies=proxies, timeout=10)
        dl_response.raise_for_status()
        exe_tag = bs_find_all(download_link,"span","class","file file--mime-application-x-msdos-program file--general")
        if exe_tag:
            # Chercher la balise <a> à l'intérieur de la balise <span>
            a_tag = exe_tag[0].find('a', href=True)
            if a_tag and 'href' in a_tag.attrs:
                exe_link = a_tag['href']
                if not exe_link.startswith('http'):
                    exe_link = f"https://eid.belgium.be{exe_link}"
                    download_url  = exe_link
                    latest_bin = download_url.split("/")[-1]
    except requests.exceptions.RequestException as e:
        print(f"Erreur lors de l'accès au lien de téléchargement {download_link} : {e}")  
    # Affiner l'expression régulière pour correspondre exactement à la version après "QuickInstaller%20"
    match = re.search(r'QuickInstaller%20(\d+\.\d+\.\d+\.\d+)', latest_bin)

    if match:
        version = match.group(1)
        print(f"La version extraite est : {version}")
    else:
        print("Aucune version trouvée dans le nom de fichier.")

    #nettoyer les fichiers temporaires
    for f in glob.glob('*.exe'):
        if f != latest_bin:
            remove_file(f)

    # Downloading latest binaries
    if not isfile(latest_bin):
        package_updated = True
        print("Downloading: %s" % latest_bin)
        wget(download_url, latest_bin, proxies=proxies)

    
    
    control.set_software_version(version)
    control.save_control_to_wapt()    

a88eda667c2fb5f39610af8a423dc48f5f80e14d574295e6d26ef1ab6ee95272 : setup.py
f40e174f5a1c0deaf53891a04ab37d86ff662a6018ca5024b3fc22d0f5495ac3 : update_package.py
017ed89d38d55d481946544fcd2af315ea294e814cd5fa7f5a12f6d6738891c7 : WAPT/icon.png
a5a97261381e1d0ad46ee15916abec9c2631d0201f5cc50ceb0197a165a0bbbf : WAPT/certificate.crt
40b36c41ecfba2a120a4f17f94e723e5b00efd79667cbd884ca7e0be6c38fe0d : luti.json
f3590b12dc586eb0b0b976e3990471e0bf2866411f5a82e4f1748e5e7b9dbc75 : Belgium%20eID-QuickInstaller%205.1.8.6030.exe
ba9b154fd92597e0080b6fe7dfc0ed51143e6fa1c65092e1a283638d6570cf17 : WAPT/control