tis-roboform-enterprise icon

RoboForm

Paquet d’installation silencieuse pour RoboForm

9.9.3.2-1

Les paquets PREPROD sont des paquets construits via LUTI. Ils restent généralement 5 jours en PREPROD, après quoi un deuxième scan VirusTotal est effectué pour vérifier que le status n'a pas changé.
Si le paquet réussit ce dernier contrôle, il est promu en PROD et publié sur le store.

  • package: tis-roboform-enterprise
  • name: RoboForm
  • version: 9.9.3.2-1
  • maintainer: Amel FRADJ
  • licence: RoboForm License Agreement
  • target_os: windows
  • architecture: all
  • signature_date:
  • size: 47.52 Mo
  • homepage : https://www.roboform.com/

package           : tis-roboform-enterprise
version           : 9.9.3.2-1
architecture      : all
section           : base
priority          : optional
name              : RoboForm
categories        : 
maintainer        : Amel FRADJ
description       : RoboForm remembers your passwords so you don't have to!
depends           : 
conflicts         : 
maturity          : PREPROD
locale            : 
target_os         : windows
min_wapt_version  : 
sources           : 
installed_size    : 
impacted_process  : 
description_fr    : RoboForm se souvient de vos mots de passe pour que vous n'ayez pas à le faire !
description_pl    : RoboForm zapamiętuje Twoje hasła, abyś Ty nie musiał tego robić!
description_de    : RoboForm merkt sich Ihre Passwörter, damit Sie es nicht tun müssen!
description_es    : RoboForm recuerda sus contraseñas para que usted no tenga que hacerlo
description_pt    : O RoboForm memoriza as suas palavras-passe para que não tenha de o fazer!
description_it    : RoboForm ricorda le vostre password in modo che non dobbiate farlo voi!
description_nl    : RoboForm onthoudt je wachtwoorden zodat jij dat niet hoeft te doen!
description_ru    : RoboForm запоминает ваши пароли, чтобы вам не пришлось этого делать!
audit_schedule    : 
editor            : 
keywords          : 
licence           : RoboForm License Agreement
homepage          : https://www.roboform.com/
package_uuid      : f182a8de-14a0-4ad3-9357-8c0a2642ec25
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 
max_os_version    : 
icon_sha256sum    : 546becf435df8f321970dd65d2c0eb5ccf385ac5beceec71245e4d3ca48da57e
signer            : test
signer_fingerprint: b82fc8ef4a4475c0f69ac168176c2bfc58f572eb716c4eadd65e4785c155dd8e
signature_date    : 2026-03-30T17:00:32.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         : ZkUTOjuySzyYmSmuilGAx7g9LsY8DLm8x916sSLo9c/kFOPv4169MynwfZ0gSN7L3kUDQG3ZEnFslZF44kiD6gRuII+lHjVWxq1pW8ur5nwliyzgrUl1fxLFyGP1FiYCNXgb9d0/rCQmn+hL7PhVHvaYZErq2+Ah4CRZzuZlteA0ESgPXcBtqYd0F3LAeqL5LvpWCcpq5t/nFn0qpNtgRZ7n8P70fQ6sevpKLl/rr5b1zS4TSt+wjnoYEZHQqgXUDfIVO0EwTH/H6xfwzkBfuwS5An+0hqxOXv7urHf+95J00RtndKBLE6sH5m8rqL96lnE4q6JHHZSNuBYYS8R9kw==

# -*- 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


def install():
    bin_name = glob.glob('RoboForm-*-Setup.exe')[0]

    # Installing the software
    install_exe_if_needed(bin_name,
        silentflags='/silent /unatt',
        key='AI RoboForm',
        min_version= control.get_software_version(),
    )
    
    uninstallkey.clear()

def uninstall():
        for to_uninstall in installed_softwares('AI RoboForm'):
            print("Removing: %s (%s)" % (to_uninstall["name"], to_uninstall["version"]))
            killalltasks(ensure_list(control.impacted_process))
            quiet_uninstall_string = (installed_softwares(uninstallkey=to_uninstall["key"])[0]["uninstall_string"] + r' /silent /unatt')
            run(quiet_uninstall_string)
            wait_uninstallkey_absent(to_uninstall["key"])

# def uninstall() :
#     run('"C:\\Program Files (x86)\\Siber Systems\\AI RoboForm\\rfwipeout.exe\" /silent /unatt')

def audit():
    if not uninstall_key_exists("AI RoboForm"):
        print('uninstallkey RoboForm  not found')
        return "ERROR"
    else:
        return "OK"


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



def update_package():
    # Declaring local variables
    package_updated = False
    
    proxies = get_proxies_from_wapt_console()
    if not proxies:
        proxies = get_proxies()

  
    url_base = "https://www.roboform.com/download"
    response = requests.get(url_base,allow_redirects=True, proxies=proxies)
    # Extract the correct div using bs_find_all
    divs = bs_find_all(response.text, "div","class","action", proxies=proxies)
    exe_file = None
    for div in divs:
        if exe_file:
            break
        links = div.find_all('a', href=True)
        for link in links:
            if link['href'].endswith('.exe'):
                href = link['href']
                exe_file = href
                download_url = exe_file
                latest_bin = exe_file.split('/')[-1]
                version = latest_bin.split("-")[1].replace("v","")
                break
    # Find the div with class "info-text" to get the version
    #info_text_divs = bs_find_all(response.text,"div", "class","info-text", proxies=proxies)
    #version = None
    #version_pattern = re.compile(r'RoboForm for Windows MSI v(\d+\.\d+\.\d+)')
    #for div in info_text_divs:
        #h3 = div.find('h3')
        #if h3:
            #match = version_pattern.search(h3.text)
            #if match:
                #version = match.group(1)
                #break


    # Downloading latest binaries
    print("Download URL is: %s" % download_url)
    if not isfile(latest_bin):
        print("Downloading: %s" % latest_bin)
        wget(download_url, latest_bin, proxies=proxies)
        package_updated = True
    else:
        print("Binary is present: %s" % latest_bin)


    # Deleting outdated binaries
    for f in glob.glob('*.exe'):
        if f != latest_bin:
            remove_file(f)

      
    version = get_version_from_binary(latest_bin)
    # Mettre à jour le package
    control.set_software_version(version)
    control.save_control_to_wapt()    
        

8c51a28879b6fdb926d350bdcb194a6d32dd71cc9684ab9aa57c67b1e519720f : RoboForm-v9-Setup.exe
01ca7fe94636e5a08fcb73849d3b5df25d51e2c82f4dd1a08f01798b25899819 : WAPT/certificate.crt
f3dfdc612e0e8aabb74db65b5bbd1969bf4bed87abf3ee0e020c0e77d717a39d : WAPT/control
546becf435df8f321970dd65d2c0eb5ccf385ac5beceec71245e4d3ca48da57e : WAPT/icon.png
746c252f59c999c03a69441cb72cd72705c16adc9b21d71ae1fb49307392e791 : luti.json
88535bdd113aefb87147e1cc3fb8709aa835049b3b2b0b2a1ac677612f13f1c7 : setup.py
d09df4f1a8d21c2298884300b9b507274bc8111d111004483869a5e869f10617 : update_package.py