tis-directorystudio icon

Directory Studio

Paquet d’installation silencieuse pour Directory Studio

2.0.0.20210717-2

  • package: tis-directorystudio
  • name: Directory Studio
  • version: 2.0.0.20210717-2
  • categories: Utilities
  • maintainer: WAPT Team,Tranquil IT,Pierre COSSON
  • editor: Apache
  • licence: Apache License
  • locale: all
  • target_os: windows
  • impacted_process: ApacheDirectoryStudio
  • architecture: all
  • signature_date:
  • size: 140.79 Mo
  • installed_size: 153.57 Mo
  • homepage : https://directory.apache.org/studio/
  • depends:

package           : tis-directorystudio
version           : 2.0.0.20210717-2
architecture      : all
section           : base
priority          : optional
name              : Directory Studio
categories        : Utilities
maintainer        : WAPT Team,Tranquil IT,Pierre COSSON
description       : Apache Directory Studio is a complete directory tooling platform intended to be used with any LDAP server however it is particularly designed for use with ApacheDS. It is an Eclipse RCP application, composed of several Eclipse (OSGi) plugins, that can be easily upgraded with additional ones. These plugins can even run within Eclipse itself.
depends           : tis-adoptium-openjdk11-jre
conflicts         : 
maturity          : PROD
locale            : all
target_os         : windows
min_wapt_version  : 2.0
sources           : https://directory.apache.org/studio/download/download-windows.html
installed_size    : 153573538
impacted_process  : ApacheDirectoryStudio
description_fr    : Apache Directory Studio est une plateforme complète d'outils d'annuaire destinée à être utilisée avec n'importe quel serveur LDAP ; cependant, elle est particulièrement conçue pour être utilisée avec ApacheDS. Il s'agit d'une application Eclipse RCP, composée de plusieurs plugins Eclipse (OSGi), qui peuvent être facilement mis à jour avec des plugins supplémentaires. Ces plugins peuvent même être exécutés dans Eclipse même
description_pl    : Apache Directory Studio jest kompletną platformą narzędzi katalogowych przeznaczoną do użycia z dowolnym serwerem LDAP, jednak w szczególności została zaprojektowana do użycia z ApacheDS. Jest to aplikacja Eclipse RCP, składająca się z kilku wtyczek Eclipse (OSGi), które można łatwo rozbudować o kolejne. Wtyczki te mogą być nawet uruchamiane w samym Eclipse
description_de    : Apache Directory Studio ist eine vollständige Plattform für Verzeichniswerkzeuge, die mit jedem LDAP-Server verwendet werden kann, jedoch speziell für die Verwendung mit ApacheDS konzipiert ist. Es handelt sich um eine Eclipse RCP-Anwendung, die aus mehreren Eclipse (OSGi)-Plugins besteht, die leicht um zusätzliche Plugins erweitert werden können. Diese Plugins können sogar innerhalb von Eclipse selbst ausgeführt werden
description_es    : Apache Directory Studio es una completa plataforma de herramientas de directorio pensada para ser utilizada con cualquier servidor LDAP, sin embargo, está especialmente diseñada para su uso con ApacheDS. Es una aplicación RCP de Eclipse, compuesta por varios plugins de Eclipse (OSGi), que pueden ser fácilmente actualizados con otros adicionales. Estos plugins pueden incluso ejecutarse dentro del propio Eclipse
description_pt    : O Apache Directory Studio é uma plataforma completa de ferramentas de directório destinada a ser utilizada com qualquer servidor LDAP, no entanto foi especialmente concebida para ser utilizada com o ApacheDS. É uma aplicação Eclipse RCP, composta por vários plugins Eclipse (OSGi), que podem ser facilmente actualizados com plugins adicionais. Estes plugins podem até funcionar dentro do próprio Eclipse
description_it    : Apache Directory Studio è una piattaforma completa di strumenti per le directory che può essere utilizzata con qualsiasi server LDAP, ma è stata progettata in particolare per l'uso con ApacheDS. È un'applicazione Eclipse RCP, composta da diversi plugin Eclipse (OSGi), che possono essere facilmente aggiornati con altri. Questi plugin possono essere eseguiti anche all'interno di Eclipse stesso
description_nl    : Apache Directory Studio is een compleet platform voor directory-tooling dat bedoeld is om met elke LDAP-server te worden gebruikt, maar het is in het bijzonder ontworpen voor gebruik met ApacheDS. Het is een Eclipse RCP applicatie, samengesteld uit verschillende Eclipse (OSGi) plugins, die gemakkelijk kunnen worden uitgebreid met extra plugins. Deze plugins kunnen zelfs binnen Eclipse zelf draaien
description_ru    : Apache Directory Studio - это полная инструментальная платформа для работы с каталогами, предназначенная для использования с любым LDAP-сервером, однако она специально разработана для использования с ApacheDS. Это приложение Eclipse RCP, состоящее из нескольких плагинов Eclipse (OSGi), которые могут быть легко дополнены дополнительными. Эти плагины могут даже запускаться в самом Eclipse
audit_schedule    : 
editor            : Apache
keywords          : ldap
licence           : Apache License
homepage          : https://directory.apache.org/studio/
package_uuid      : c8b0c928-9345-4330-99cb-d1290f455ad0
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://directory.apache.org/studio/changelog.html
min_os_version    : 
max_os_version    : 
icon_sha256sum    : 90061f1f90d9aebc6623ed4c3b6b0f611bf020cbe14aefeee0497be5eda7c983
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature         : r2lDq9ov6WLLC0rS8h9WRlCscBoRIaqvljHVBkrTiVxlGoWuFfFZnDxUNk0AydibxTYIejtSCQqRm5DBdraW0XE0yQWy4ipcIFE1+Ff0zUFAVG1CpkB1ZJ1J2/Xkn7Nbvh+Zedb004vjiQQt5E7Lc/EuEzlv5TnxlFEdeuKaZe6UGfcPDdLeGhUQoY4EY2Di+zt+u1vLw5y2y6xedvLXIUm608qERyTIa5k1GWYrFWq5pWd9Lqq0DXtDeYtcLWaMFo6fLuxJfASZWtXY5AzwqNv/WXCqY8dz09gJoo5UNVOqxBRYylAPWVpESEYTg5IbNUovPJWrg7B8gdewc0E7PA==
signature_date    : 2023-08-21T18:00:19.806336
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 *

r"""
Usable WAPT package functions: install(), uninstall(), session_setup(), audit(), update_package()

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


bin_contains = "ApacheDirectoryStudio"

app_name = "Apache Directory Studio"
app_dir = makepath(programfiles, app_name)
app_path = makepath(app_dir, "ApacheDirectoryStudio.exe")


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, ".")
        temp_dir = bin_contains
        for file_to_move in glob.glob("%s/*" % temp_dir):
            shutil.move(file_to_move, app_dir)
        remove_tree(temp_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())
    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(r"Directory Studio", win64app=iswin64())
    # Removing shortcuts
    remove_desktop_shortcut(app_name)
    remove_programs_menu_shortcut(app_name)


def audit():
    # Declaring local variables
    package_version = control.version.split("-", 1)[0]
    installed_version = None
    # Getting installed software version
    for installed_app in installed_softwares(name=r"Directory Studio"):
        installed_version = installed_app["version"]
        break
    # Auditing software
    print("Auditing: %s" % control.package)
    if installed_version is None:
        print("%s is not installed" % app_name)
        return "ERROR"
    elif Version(installed_version) != Version(package_version):
        print("%s is installed in version (%s) instead of (%s)" % (app_name, installed_version, package_version))
        return "WARNING"
    else:
        print("%s is installed in correct version (%s)" % (app_name, installed_version))
        return "OK"

# -*- coding: utf-8 -*-
from setuphelpers import *
from setupdevhelpers import *
import bs4 as BeautifulSoup

bin_contains = "ApacheDirectoryStudio"
bin_ends = ".zip"


def update_package():
    # Declaring local variables
    result = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    app_name = control.name
    url = "https://directory.apache.org/studio/download/download-windows.html"
    # https://dlcdn.apache.org/directory/studio/2.0.0.v20210717-M17/ApacheDirectoryStudio-2.0.0.v20210717-M17-win32.win32.x86_64.exe
    # Getting latest version from official sources
    print("URL used is: %s" % url)
    html_source=wgets(url,proxies=proxies).splitlines()
    for line in html_source:
        if '.zip' in line:
            download_url = line.split(r'"')[1]
            latest_bin = download_url.split('/')[-1]
            version = latest_bin.split('-')[1].replace("v", "")
            break

    print("Latest %s version is: %s" % (app_name, version))
    print("Download URL is: %s" % download_url)
    # Downloading latest binaries
    print("Downloading: %s" % latest_bin)
    wget(download_url, latest_bin, proxies=proxies)

    os.rename(latest_bin, bin_contains + version + bin_ends)

    # 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.set_software_version(version)
    control.save_control_to_wapt()
    # Deleting outdated binaries
    remove_outdated_binaries(version)
    # Validating or not update-package-sources
    return result

d8eb4ce70c1b89d9a753a7acacaf53761c3b9e35b538093a5f2cd60dac246779 : setup.py
62a6d380d7c823fbfbdf98423533a209060fd79941add225e0b5454acc1b0b06 : update_package.py
214591f5a73ff89e0b29d30f4752a7bd62943e669ce91072848195d37e0909f6 : ApacheDirectoryStudio2.0.0.20210717.zip
90061f1f90d9aebc6623ed4c3b6b0f611bf020cbe14aefeee0497be5eda7c983 : WAPT/icon.png
a5a97261381e1d0ad46ee15916abec9c2631d0201f5cc50ceb0197a165a0bbbf : WAPT/certificate.crt
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 : WAPT/changelog.txt
7775c370dc1e103af13a15f6cf925049b2f602543a2598055afe720c210518c6 : luti.json
13362906e6176b59b793144d19b9e8a8f094b403371d895afad275ea89453bdd : WAPT/control