tis-firefox-portable-specific-version-template icon

firefox-portable-specific-version

Paquet d’installation silencieuse pour firefox-portable-specific-version

0-6

  • package: tis-firefox-portable-specific-version-template
  • name: firefox-portable-specific-version
  • version: 0-6
  • locale: all
  • target_os: windows
  • architecture: all
  • signature_date:
  • size: 7.63 Ko

package           : tis-firefox-portable-specific-version-template
version           : 0-6
architecture      : all
section           : base
priority          : optional
name              : firefox-portable-specific-version
categories        : 
maintainer        : 
description       : This package is a portable firefox installation which is used to launch specific version
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      : 6cc1b124-ab1c-44a4-86f9-284fa4fbaff6
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : 
min_os_version    : 
max_os_version    : 
icon_sha256sum    : 9a45ebf166bf2813013c8fecccebb44b98b445a1a272afc8bbe29881b50709ae
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2025-08-11T18:00:51.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         : Dyh7EAAOiSDfrI9fHKAE1e8Ze5XB5nFkMycAC/uCP7ZF6ixvEKYyUwVGmicLql7oRJtR5brRtdYJsbeaezyjvDOq0fsTGDp0RQEsK8CTslkw4WxQBAJrQGjjJUI9+Ag4VgWtvt2HRLSR/pH+bjmCoA3FI8HpNN43srD3pltF7jYCAwONWRC0NYKWjqMoLkR90rJajthiUvu1D1UKYtLANPGs5EffWOiT80ukA9Zzz2v5nZep6Ic8yxdJMz/XKnv7QFvrHNQNG/izmNNgor1ybvGW4pk0jog7HrYWQGfNXLtr5ipGl5FDyOscik5jKe5O4ohfwZTJ0Xg3GWPIy8XJbw==

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


def install():

    app_name = control.package.split('-',1)[1]
    app_dir = makepath(programfiles32, app_name)
    app_path = makepath(app_dir, "firefox.exe")

    icon_path = makepath(common_desktop(), f"{app_name}.ico")

    policies_folder = makepath(app_dir, "distribution")
    policies_json = "policies.json"

    # Installing software
    killalltasks(ensure_list(control.impacted_process))
    if isdir(app_dir) :
        remove_tree(app_dir)

    with open(makepath(app_name,'defaults','pref','settings.js'),'w') as f :
        f.write('pref("browser.policies.alternateGPO", "");')

    copytree2(app_name,app_dir)

    # Copy policies.json
    if not isdir(policies_folder):
        mkdirs(policies_folder)

    filecopyto(policies_json, policies_folder)
    filecopyto("icon.ico", icon_path)

    cmd_path = makepath(system32(), "cmd.exe")
    launch_firefox = f' /C "set XPCSHELL_TEST_PROFILE_DIR=1 && start "" "{app_path}" -P {app_name}"'
    create_desktop_shortcut(app_name, cmd_path, launch_firefox, icon=icon_path)
    create_programs_menu_shortcut(app_name, cmd_path, launch_firefox, icon=icon_path)


def uninstall():
    app_name = control.package.split('-',1)[1]
    app_dir = makepath(programfiles32, app_name)

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

    remove_desktop_shortcut(app_name)
    remove_programs_menu_shortcut(app_name)

def session_setup():
    app_name = control.package.split('-',1)[1]
    app_dir = makepath(programfiles32, app_name)
    app_path = makepath(app_dir, "firefox.exe")

    # Create firefox user profile
    run(f'"{app_path}" -CreateProfile {app_name}')


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

def update_package():

    if params.get("running_as_luti", False):
        return True

    # Declaring local variables
    if 'template' in control.package:
        control.package = waptguihelper.input_dialog("set package name", "You can redefine the package name", control.package.replace('-template',''))

    control.set_software_version(waptguihelper.input_dialog("set_version", "You can define version of package", control.version))
    control.save_control_to_wapt()

    app_name = control.package.split('-',1)[1]

    if isdir(app_name):
        remove_tree(app_name)

    if isdir("tempo"):
        remove_tree("tempo")

    # Get download URL
    bin_firefox_install = waptguihelper.filename_dialog('Select EXE firefox installer',"c:\\", "","EXE Files|*.exe")
    unzip_with_7zip(bin_firefox_install, "tempo")

    copytree2(makepath('tempo','core'),app_name)
    remove_tree('tempo')

    if not isfile('icon.ico'):
        filecopyto(waptguihelper.filename_dialog('Select Ico for shortcut',"c:\\", "","ICO Files|*.ico"),'icon.ico')


    fpolicy = 'policies.json'
    if not isfile('policies.json'):
        fpolicy = 'policies-template.json'

    datapolicy = open(fpolicy,'r').read()

    newdatapolicy = waptguihelper.memo_dialog('policy.json','Give Policy.json',datapolicy)

    with open('policies.json','w') as f:
        f.write(datapolicy)

    # Validating update-package-sources
    return True

38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
d2a160893262e03732b59764a9d92b820bfd67eb50d2265cd615c7211418ab5b : WAPT/control
9a45ebf166bf2813013c8fecccebb44b98b445a1a272afc8bbe29881b50709ae : WAPT/icon.png
2931d2d8fe90817c848d1aadd7a6d7a14c22eb26fc5165e5ddaf2246dbe378ef : luti.json
ab55e64297d485a4e928bb7ace27ce55a1b09e0f40d6ca204e23f8375f88c07d : policies-template.json
47106781e095a7b88039973ad1240542a91feb1df101c603c2101269ad5b0854 : setup.py
83a210260a0441a34f52510d0fb120f30c918aa8befbb74845878f285972bbf0 : update_package.py