tis-openrsat icon

OpenRSAT

Paquet d’installation silencieuse pour OpenRSAT

0.4.51.2
Utilities
Security
System and network
Utilities
Security
System and network

  • package: tis-openrsat
  • name: OpenRSAT
  • version: 0.4.51.2
  • categories: Utilities,Security,System and network
  • maintainer: WAPT Team,Tranquil IT,Louis Persin,Thomas Prud'homme
  • locale: all
  • target_os: windows
  • architecture: x64
  • signature_date:
  • size: 3.46 Mo

package           : tis-openrsat
version           : 0.4.51.2
architecture      : x64
section           : base
priority          : optional
name              : OpenRSAT
categories        : Utilities,Security,System and network
maintainer        : WAPT Team,Tranquil IT,Louis Persin,Thomas Prud'homme
description       : 
depends           : 
conflicts         : 
maturity          : PROD
locale            : all
target_os         : windows
min_wapt_version  : 2.3
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      : bfc9c2f0-8c82-468e-995c-817d11a1d7db
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 
max_os_version    : 
icon_sha256sum    : 03ea977bb46ee771b0e00d075fd36c1b185129a40260935db691719e6f42483d
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2025-10-28T21:08:07.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         : OBzDouJ/1eYJmTpxwFgzNWDxKJ6j6KIw5TXOdqfK4SPIwpLKh+LXwWeZlayzU6lU9exapq2ZA6L9dnUhshFYBMXtUy7TEYQcMSr1A0pizBHrOWpAHFkWoWqrwEXP5SIGaRqzpjGZH5r2dMmdyaWUwnGpK2hK0lS3jWRVGJO9ufmWF0Td8TzlhjsX3xckOBt+999S94X9L5frQelYGGCG8pL0om52ynhluxh50HUOMEtHlvyYQcS+cn2eFR54WszTzvom6KQGsG1TpipxfOpzW2bqIdM7aau9O6h84A7+lEblcP2tSuGyDpUF/94AgBBUqTxi+KGCGIDp7K5ckRP27w==

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

app_name = "OpenRSAT"
bin_name = f"{app_name}.exe"
app_dir = makepath(programfiles32, app_name)
app_path = makepath(app_dir, bin_name)


def install():
    # Installing software
    killalltasks(ensure_list(control.impacted_process))
    if isdir(app_dir) and force:
        remove_tree(app_dir)
    mkdirs(app_dir)
    filecopyto(bin_name, app_path)

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


def uninstall():
    # Uninstalling software
    killalltasks(ensure_list(control.impacted_process))
    if isdir(app_dir):
        remove_tree(app_dir)

    # Removing shortcuts
    remove_desktop_shortcut(app_name)
    remove_programs_menu_shortcut(app_name)

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

build_folder = r'c:\build'
git = r'"C:\Program Files\Git\bin\git.exe"'
lazbuild = r'C:\lazarus_4_0\lazarus\lazbuild.exe'
package_version=2

def update_package():
    # Remove old build folder
    if isdir(build_folder):
        print(f"Old build folder exists ({build_folder}). Remove it.")
        remove_tree(build_folder)
    
    # Clone OpenRSAT repository
    print("Clone OpenRSAT repository.")
    run(fr'{git} clone https://github.com/tranquilit/OpenRSAT.git {build_folder}')
    
    # Retrieve last tag
    print("Retrieve last tag.")
    tag = run(fr'{git} -C {build_folder} describe --tags --abbrev=0')
    tag = tag.strip()

    # Checkout to last tag
    print(f"Last tag found ({tag}). Checkout to this tag.")
    run(fr'{git} -C {build_folder} checkout {tag}')

    # Update submodules
    print("Update submodules")
    run(fr'{git} -C {build_folder} submodule update --progress --init -- "submodules/mORMot2"')
    run(fr'{git} -C {build_folder} submodule update --progress --init -- "submodules/pltis_uicomponents"')
    run(fr'{git} -C {build_folder} submodule update --progress --init -- "submodules/pltis_utils"')
    run(fr'{git} -C {build_folder} submodule update --progress --init -- "submodules/pltis_virtualtrees"')
    run(fr'{git} -C {build_folder} submodule update --progress --init -- "submodules/metadarkstyle"')

    # Patch pltis_uicomponents
    print("Patch pltis_uicomponents")
    f = open(fr'{build_folder}\submodules\pltis_uicomponents\src\standard\tis.ui.lvlgraphcontrol.pas','r')
    filedata = f.read()
    f.close()
    newdata = filedata.replace("Laz_AVL_Tree","AVL_Tree")
    f = open(fr'{build_folder}\submodules\pltis_uicomponents\src\standard\tis.ui.lvlgraphcontrol.pas','w')
    f.write(newdata)
    f.close()

    # Download mORMot2 static requirements
    print("Download mORMot2 static")
    wget('http://srvtemplates.ad.tranquil.it/binary_cache/mormot2static-2.3.stable.7z','mormot2static.7z', sha256='97c6e3ed9df42fb37911289b41761192b1cc56c1ff2c412609027a2560b31e56')
    run(r'"c:\Program Files\7-Zip\7z.exe" x -y mormot2static.7z -ostatic')
    remove_tree(fr'{build_folder}\submodules\mORMot2\static')
    os.rename('static', fr'{build_folder}\submodules\mORMot2\static')
    remove_file('mormot2static.7z')

    # Add required package to Lazarus IDE
    print("Add required package to Lazarus IDE")
    run(fr'{lazbuild} --add-package-link {build_folder}\submodules\mORMot2\packages\lazarus\mormot2.lpk')
    run(fr'{lazbuild} --add-package-link {build_folder}\submodules\pltis_uicomponents\pack\pltis_uicomponents.lpk')
    run(fr'{lazbuild} --add-package-link {build_folder}\submodules\pltis_utils\pltis_utils.lpk')
    run(fr'{lazbuild} --add-package {build_folder}\submodules\pltis_virtualtrees\virtualtreeview_package.lpk')
    run(fr'{lazbuild} --add-package {build_folder}\submodules\metadarkstyle\metadarkstyle.lpk')
    run(fr'{lazbuild} --add-package {build_folder}\submodules\metadarkstyle\metadarkstyledsgn.lpk')
    run(fr'{lazbuild} --add-package-link {build_folder}\packages\OpenRSATCore\OpenRSATCore.lpk')

    # Build Lazarus project
    print("Build lazarus project")
    run(fr'{lazbuild} --build-mode=win64 {build_folder}\sources\OpenRSAT.lpi')

    # WAPT Package prepare
    filecopyto(fr'{build_folder}\bin\win64\OpenRSAT.exe','OpenRSAT.exe')

    # Update Package version
    print("Update package version")
    version = f"{tag[1:]}.{package_version}"
    control.set_software_version(version)
    control.save_control_to_wapt()

aedfdb42a554a385980b3e8661e4fb10dd582e75b88d972f8dbb66e6d812457b : OpenRSAT.exe
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
e60e89d5a17dff0597440b27288ee2cff1ae4e88a714cb1ae98eb9103839c30c : WAPT/control
03ea977bb46ee771b0e00d075fd36c1b185129a40260935db691719e6f42483d : WAPT/icon.png
fc620c4aaf5d7f4e83b71a5e306d0ee7de03ee45295119648761b973ed4f2b99 : luti.json
bc687da79cedaf8a71cffebd320b0868250cfaa7b579698aa7faa580ccd938c7 : setup.py
f88e8ba3670329540584ade319d2137b16b91a790ee1ebe324288a8cf8134fed : update_package.py