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

firefox-portable-specific-version

Silent install package for firefox-portable-specific-version

0-5

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

package           : tis-firefox-portable-specific-version-template
version           : 0-5
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      : 760bb731-86df-4433-834e-6eef080ce8f8
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:03:03.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         : Nj9FUE1WpO647M3EveuAVJrosLKHOhrzrlQHLb5XwjmxpGSAmi+tnsUjn0uIFgSL7N4vJ7BX6U/bYsDL2UiC9O2qBKzOMt+VI86LgOkHBjtoBLNvPw0ikcs/jfBOEPq/+1zr0HnA4M36X+UUme6YYGMWlfB/QmAROly4bvKSk+dGKKKznuM2H43b/zvp2APsstGUrfl+W4EJjQv0N7YfhKPpu+1rELpavKkZwyKD5GtaBQ+PwmdARhAZN69NGP6P9kMw8vupIxVf5yv+c3hPin1oJI4riC3tt5sJnEmBG7v0Hd9oZL9Xj3AXcwHVWzGLFM1OsTEZ1L2aphreZrb7dw==

# -*- 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
8586579a403959d4c948f08eeb7a2927bc11545adabdf2197a0723fe736841ab : WAPT/control
9a45ebf166bf2813013c8fecccebb44b98b445a1a272afc8bbe29881b50709ae : WAPT/icon.png
79aa6c802675fb2ed59f1f6ed4ffa5a7624777fa06483430955ccf51a201f021 : luti.json
dc32fec56275745268df259f4986fa54b8d22db91003c68b62ec99e89f8b7665 : policies-template.json
47106781e095a7b88039973ad1240542a91feb1df101c603c2101269ad5b0854 : setup.py
83a210260a0441a34f52510d0fb120f30c918aa8befbb74845878f285972bbf0 : update_package.py