• package: tis-ldapadmin
  • name: LDAPAdmin
  • version: 1.8.3-53
  • categories: Utilities,Security,System and network
  • maintainer: WAPT Team,Tranquil IT,Simon Fonteneau,Gaëtan SEGAT
  • editor: Tihomir Karlovic
  • licence: GNU General Public License
  • locale: all
  • target_os: windows
  • impacted_process: LdapAdmin
  • architecture: x64
  • signature_date:
  • size: 2.02 Mo
  • installed_size: 4.19 Mo
  • homepage : http://www.ldapadmin.org/

package           : tis-ldapadmin
version           : 1.8.3-53
architecture      : x64
section           : base
priority          : optional
name              : LDAPAdmin
categories        : Utilities,Security,System and network
maintainer        : WAPT Team,Tranquil IT,Simon Fonteneau,Gaëtan SEGAT
description       : Ldap Admin is a free Windows LDAP client and administration tool for LDAP directory management.
depends           : 
conflicts         : 
maturity          : PROD
locale            : all
target_os         : windows
min_wapt_version  : 2.0
sources           : https://sourceforge.net/projects/ldapadmin
installed_size    : 4194304
impacted_process  : LdapAdmin
description_fr    : Ldap Admin est un client LDAP Windows opensource et un outil d’administration pour la gestion des annuaires LDAP.
description_pl    : Ldap Admin to darmowe narzędzie klienckie i administracyjne LDAP dla systemu Windows do zarządzania katalogami LDAP
description_de    : Ldap Admin ist ein kostenloser Windows LDAP Client und Administrationswerkzeug für LDAP Verzeichnisverwaltung
description_es    : Ldap Admin es una herramienta de administración y cliente LDAP de Windows gratuita para la administración de directorios LDAP
description_pt    : Ldap Admin é um cliente Windows LDAP gratuito e uma ferramenta de administração para a gestão de directórios LDAP
description_it    : Ldap Admin è un client LDAP gratuito per Windows e uno strumento di amministrazione per la gestione delle directory LDAP
description_nl    : Ldap Admin is een gratis Windows LDAP-client en beheertool voor het beheer van LDAP-directory’s
description_ru    : Ldap Admin - это бесплатный клиент LDAP для Windows и инструмент администрирования для управления каталогами LDAP
audit_schedule    : 
editor            : Tihomir Karlovic
keywords          : ldap
licence           : GNU General Public License
homepage          : http://www.ldapadmin.org/
package_uuid      : 4ab8d8d4-722b-462b-b432-2345102688c0
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 
max_os_version    : 
icon_sha256sum    : 9e93ffd5187567f8204b5d50043295dd7842fffd1be163f047042c157762fcc4
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature         : tWhxl34xgx2hSxUGbTQF9ItSa6AWBxlD+Cb3VgKbMosrvq8jwYhLfa+NJr8SOcYCnNMWAx0EckD+nmomMVcEMyptYr/HInZaj9F8raeJqAY7hOV2rKeM1dOj7s/6rUJjdRwIjMwN+8zGd+vDgPVCX7CudgJqzXji+7r6ITHkJ+keMEswG3hO1nCmKeqPxX2zXIpQOkex6uVkEMLnmdYdctK31B8euerstBfny3w2AwTL/Xw6fka+gBoPqtJkk9DC/77rk5CZgldYCBAFJQ2l0uWvNoCA6oAEnJHS5M64sgEH8Aq4KrcveAcifb4EY7wqoXNOWsKCpSkrcYTPqs3/yg==
signature_date    : 2023-12-09T12:00:06.336246
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 *

app_name = "LDAPAdmin"
app_dir = makepath(programfiles, app_name)
app_path = makepath(app_dir, "LdapAdmin.exe")
bin_contains = "LdapAdmin"


def install():
    # Declaring local variables
    package_version = control.get_software_version()
    bin_name = glob.glob("*%s*.zip" % bin_contains)[0]

    # Getting installed software version
    if isfile(app_path):
        installed_version = get_version_from_binary(app_path)
    else:
        installed_version = None

    # Installing software
    print("Installing: %s" % app_name)
    if installed_version is None or Version(installed_version) < Version(package_version) or force:
        killalltasks(control.get_impacted_process_list())
        if isdir(app_dir):
            remove_tree(app_dir)
        mkdirs(app_dir)
        print("Extracting: %s to: %s" % (bin_name, app_dir))
        unzip(bin_name, ".")
        for file_to_copy in glob.glob("%s.exe" % bin_contains):
            filecopyto(file_to_copy, app_dir)

        # Creating shortcuts
        create_desktop_shortcut(app_name, app_path)
        create_programs_menu_shortcut(app_name, app_path)

        # Adding software to "list-registry"
        print("Registering: %s to Windows Registry" % app_name)
        register_windows_uninstall(control, win64app=iswin64())
        register_uninstall(app_name, win64app=iswin64(), icon=app_path)
    else:
        print("%s is already installed. Skipping" % app_name)


def uninstall():
    # Uninstalling software
    killalltasks(control.get_impacted_process_list())
    if isdir(app_dir):
        remove_tree(app_dir)
    unregister_uninstall(app_name, win64app=iswin64())

    # Removing shortcuts
    remove_desktop_shortcut(app_name)
    remove_programs_menu_shortcut(app_name)

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

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


def update_package():
    # Declaring local variables
    result = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    app_name = control.name
    api_url = "https://sourceforge.net/projects/ldapadmin/best_release.json"

    # Getting latest version information from official sources
    print("API used is: %s" % api_url)
    json_load = json.loads(wgets(api_url, proxies=proxies))
    for download in json_load["platform_releases"]:
        if bin_contains in json_load["platform_releases"][download]["filename"]:
            download_url = json_load["platform_releases"][download]["url"]
            version = json_load["platform_releases"][download]["filename"].split("/")[-2]
            latest_bin = json_load["platform_releases"][download]["filename"].split("/")[-1]
            break

    print("Latest %s version is: %s" % (app_name, version))
    print("Download URL is: %s" % download_url)

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

    # Changing version of the package
    if Version(version) > Version(control.get_software_version()):
        print("Software version updated (from: %s to: %s)" % (control.get_software_version(), Version(version)))
        result = True
    else:
        print("Software version up-to-date (%s)" % Version(version))
    control.version = "%s-%s" % (Version(version), control.version.split("-", 1)[-1])
    control.save_control_to_wapt()

    # Deleting outdated binaries
    remove_outdated_binaries(version)

    # Validating update-package-sources
    return result

d7bb3443cb4e8bd49245da2bc8cee207f0b6e52257677635aa7a2887d39364b6 : setup.py
e2e9a3603150d14e2f7ae2cd85878ce187d953ff8fa01fcaa5b73949e573a4de : LdapAdminExe-w64-1.8.3.zip
c4a408103d6d5c36679ab5db815693275fef0cc2e3182d59c69fe8b10e05a541 : update_package.py
9e93ffd5187567f8204b5d50043295dd7842fffd1be163f047042c157762fcc4 : WAPT/icon.png
a5a97261381e1d0ad46ee15916abec9c2631d0201f5cc50ceb0197a165a0bbbf : WAPT/certificate.crt
202ce047dc947b14d7683a367b251ac92f597f32e2fdaff9517c97b8f9b8b0ed : WAPT/changelog.txt
facbb48be74c46e36e712f7ae7375ff3f58312bfe9e8a93da0f90a49300510bf : luti.json
cac3063c5657ddc8e91201e28952ca29d5c15de00230f8f9814376fae8f69ef4 : WAPT/control

1.8.3-52
===
improve code
slipt update package