
OpenRSAT
Paquet d’installation silencieuse pour OpenRSAT
0.4.13
Utilities
Security
System and network
Utilities
Security
System and network
Les paquets PREPROD sont des paquets construits via LUTI.
Ils restent généralement 5 jours en PREPROD, après quoi un scan VirusTotal est effectué.
Si le paquet réussit ce dernier contrôle, il est promu en PROD et publié sur le store.
- package: tis-openrsat
- name: OpenRSAT
- version: 0.4.13
- categories: Utilities,Security,System and network
- maintainer: WAPT Team,Tranquil IT,Louis Persin,Thomas Prud'homme
- locale: all
- target_os: macos
- architecture: x64
- signature_date:
- size: 4.85 Mo
package : tis-openrsat
version : 0.4.13
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 : PREPROD
locale : all
target_os : macos
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 : d2a53535-22ca-4522-a030-06f387a8838f
valid_from :
valid_until :
forced_install_on :
changelog :
min_os_version :
max_os_version :
icon_sha256sum : 03ea977bb46ee771b0e00d075fd36c1b185129a40260935db691719e6f42483d
signer : test
signer_fingerprint: b82fc8ef4a4475c0f69ac168176c2bfc58f572eb716c4eadd65e4785c155dd8e
signature_date : 2025-10-14T08:24:45.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 : UCp++vw66K4ZTB6nZj6l1CyUPjw0MyW/omoN2AeWI3zqjqEOtzsnAPK9+X6uWxvSmmXpDGxviWV14U8AOJ84bRTWhqPQn9Rsvy/25kjAVJL+QKQMagm++mblSzoZ+TL2/aGLo/RoKEILXKGCfXeOw8JQKREVSV1tUS26Ij/eIQAs8L3NsSF0YWvF1Y95ojoN6uH6LnUi7yz1Nd70+p7w41PGVlC0uiGVtATnowXbWfS/WSd18UdgMdIyFELsqYs1PrH36nnP/4OLBN4n1M1nvF0Lz9owIa8xbJAk+uOIQ7Wb1Jpz/ZXd2u6hMcmwJ5tB6wTdnlPUWS2OCuJZOZMC0A==
# -*- coding: utf-8 -*-
from setuphelpers import *
path = '/Applications/openrsat.app'
name = 'OpenRSAT'
def install():
if not isdir(f"{path}/Contents/MacOS"):
mkdirs(f"{path}/Contents/MacOS")
filecopyto(name, f"{path}/Contents/MacOS/{name}")
run(f"chmod 755 {path}/Contents/MacOS/{name}")
with open(f"{path}/Contents/Info.plist", "w") as f:
f.write(info_plist % control.get_software_version())
def uninstall():
if isdir(path):
remove_tree(path)
def audit():
if not isfile(f"{path}/Contents/MacOS/{name}"):
print("erreur file not found")
return "ERROR"
else:
return "OK"
info_plist = fr"""<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleName</key>
<string>{name}</string>
<key>CFBundleShortVersionString</key>
<string>%s</string>
<key>CFBundleExecutable</key>
<string>{name}</string>
<key>CFBundleIconFile</key>
<string>icon.icns</string>
<key>CFBundleIdentifier</key>
<string>it.tranquil.{name.lower()}</string>
<key>NSHighResolutionCapable</key>
<true/>
</dict>
</plist>"""
# -*- coding: utf-8 -*-
from setuphelpers import *
import os
build_folder = r'/var/build'
git = r'git'
lazbuild = r'/Users/buildbot/lazarus_4_0/lazarus/lazbuild'
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)
mkdirs(build_folder)
# Clone OpenRSAT repository
print("Clone OpenRSAT repository.")
run(f"{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')
# 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_tsmbios"')
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()
# Copy windres
print("Copy windres.")
filecopyto('/usr/local/bin/windres','/Users/buildbot/lazarus_4_0/fpc/bin/x86_64-darwin/windres')
# Download mORMot2 static requirements
print("Download mORMot2 static")
wget('https://synopse.info/files/mormot2static.7z','mormot2static.7z')
run('/usr/local/bin/7zz 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(f'{lazbuild} --add-package-link {build_folder}/submodules/mORMot2/packages/lazarus/mormot2.lpk --ws=cocoa')
run(f'{lazbuild} --add-package-link {build_folder}/submodules/pltis_uicomponents/pack/pltis_uicomponents.lpk --ws=cocoa')
run(f'{lazbuild} --add-package-link {build_folder}/submodules/pltis_tsmbios/Packages/tsmbios.lpk')
run(f'{lazbuild} --add-package-link {build_folder}/submodules/pltis_utils/pltis_utils.lpk ')
run(f'{lazbuild} --add-package {build_folder}/submodules/pltis_virtualtrees/virtualtreeview_package.lpk')
run(f'{lazbuild} --add-package {build_folder}/submodules/metadarkstyle/metadarkstyle.lpk')
run(f'{lazbuild} --add-package {build_folder}/submodules/metadarkstyle/metadarkstyledsgn.lpk')
run(f'{lazbuild} --add-package-link {build_folder}/packages/OpenRSATCore/OpenRSATCore.lpk')
# Build Lazarus project
print("Build lazarus project")
run(f"{lazbuild} --build-mode=macosx-intel {build_folder}/sources/OpenRSAT.lpi --ws=cocoa")
# WAPT PAckage prepare
filecopyto(f"{build_folder}/bin/macosx-intel/OpenRSAT", "OpenRSAT")
# Update package version
print("Update package version")
version = tag[1:]
control.set_software_version(version)
control.save_control_to_wapt()
dc106c3b6a27084fee687709fe3e5f603a0e0e10e5e0006f5e331a735ed4550f : OpenRSAT
01ca7fe94636e5a08fcb73849d3b5df25d51e2c82f4dd1a08f01798b25899819 : WAPT/certificate.crt
12a0dfacdf09231d2e702f6f9b89e65814099dfcc650ec0530f72c33e0d497b5 : WAPT/control
03ea977bb46ee771b0e00d075fd36c1b185129a40260935db691719e6f42483d : WAPT/icon.png
1a21981188a9be111118a906d0dd855e1326b4552da0a6090cfff96bedea5725 : luti.json
d2c22bb898db847a770fdb1991c44c92d7d043c95d900717cf29b3f02216bcf8 : setup.py
3a07a89c9596961cc3be233a1dfec2de63f1e87133c7464e855c0e6ad62e74da : update_package.py