
firefox-portable-specific-version
Silent install package for firefox-portable-specific-version
1-10
- package: tis-firefox-portable-specific-version-template
- name: firefox-portable-specific-version
- version: 1-10
- locale: all
- target_os: windows
- architecture: all
- signature_date:
- size: 7.87 Ko
package : tis-firefox-portable-specific-version-template
version : 1-10
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 : 948da0f4-bf66-4771-a438-02b66bfdca89
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-12T09:00:22.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 : BulkDgi/ngv0e2dDihKoKRc9kKThm8rYCKG9r7efunvUnyLH6YIroqP6Iz8mImDCVdlsPqw78oL9qDrjXMbj7dNvQEqsxguNdOAHVm69Pu+4M3Ekh+ONuBmHyDs4j4hApoP9Mip4oxJoKWdo4AFQ2ulZSW0JS+zB+uLep+lInMLMkd2/vzsu8vpq/QpTsUlvVrTZixRlhw+yTWGArPu4ob6+RK0BgCIScRreq4gpRPw/7jM9sY7SXW75d5nXAl1iDIkxFwMbQWVEYRfNjp1VrzcXGAt1ch6p1+Y0+vxfQib+/607ovXK27sibfJFes1SVh3+yJrqSJQ1iu0dLT7gkA==
# -*- 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)
settings_js = 'pref("browser.policies.alternateGPO", "");'
with open(makepath(app_name,'defaults','pref','settings.js'),'w') as f :
f.write(settings_js)
data_autoconfigjs = r"""pref("general.config.filename", "firefox.cfg");
pref("general.config.obscure_value", 0);
pref("general.config.sandbox_enabled", false);
"""
with open(makepath(app_name,'defaults','pref','autoconfig.js'),'w') as f :
f.write(data_autoconfigjs)
firefoxcfg = r"""//
try {
var { WindowsGPOParser } = Components.utils.import("resource://gre/modules/policies/WindowsGPOParser.jsm", {});
WindowsGPOParser.readPolicies = function() {
return {};
};
} catch (e) {
Components.utils.reportError(e);
}"""
with open(makepath(app_name,'firefox.cfg'),'w') as f :
f.write(firefoxcfg)
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
1b00924ac6d49f41aa9346837bc58aa11ce187d2bc5e1af50b6d19afcd183076 : WAPT/control
9a45ebf166bf2813013c8fecccebb44b98b445a1a272afc8bbe29881b50709ae : WAPT/icon.png
e27401f2a8322d6904d5105bd665a81c20e4f9cfd5bc0a39439fde1f4c81676a : luti.json
30598c4e18eb989bd7387191fc9fa5b3efd5c292310facecddb37fd918ab04b0 : policies-template.json
55859025837c89efd701ed817d183389f932cf93533618301d2bbb6d3226d8d6 : setup.py
83a210260a0441a34f52510d0fb120f30c918aa8befbb74845878f285972bbf0 : update_package.py