This discussion has been locked. The information referenced herein may be inaccurate due to age, software updates, or external references.
You can no longer post new replies to this discussion. If you have a similar question you can start a new discussion in this forum.

Deploy Mozilla Firefox 24 ESR with Configuration

I in another Thread/Question I tried deploying Firefox in german language (successfiully). Now I want to add some configuration files to the package.

so the steps should be:

  • install Firefox without "Mozilla Maintenance service" using commandline switches and Config Script (unattend.ini)
  • copy the config files "local-settings.js", "mozilla.cfg" and "override.ini" to the correct Folder under the Firefox Installation Folder ("C:\Programs\Mozilla Firefox" on 32bit Win 7 or  "C:\Programs (x32)\Mozilla Firefox" on 64bit Win 7)

What I tried:

  • Copy the solarwinds package for "Mozilla Firefox 24.5.0 ESR"
  • Modified it like the 24.4.0 package, which deploys properly
    • changed Package Title and description
    • changed support url
    • changed Prerequisite Rule (to: Windows Language Language=German)
    • changed Download URL to german firefox installer location
    • changed Binary Langage from English to "English (United States)" --> don't know if neccessary
  • Edit package again to add config files and installation modifier
    • added " /INI=unattend.ini" to the "Command Line (silent install)" on the "Select Package" page
    • enabled "Use the Package Boot Helper [...]"
      • removed all default content
      • added under "Before ...":
        • "Terminate firefox.exe" and Continue if this action fails (in test i closed firefox and checked if all firefox processes has been terminated)
        • Stop MozillaMaintenance service and Continue if this action fails
        • Uninstall MSI {B5C3F652-D205-430F-827B-9D4F15FADF30} (the old firefox version) and Continue if this action fails
      • checked "apply package" --> Program name ok (but contains the default spaces), comand-line parameters ok (-ms /ini=unattend.ini)
      • added under "After...":
        • Run cmd.exe --> Run as program with parameters: /c copy %MODULEPATH%\local-settings.js defaults\pref\ and Determine program location from "HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\Mozilla Firefox\24.5.0 (de)\Main" Key:"Install Directory" ("32-bit only" checked)
        • Run cmd.exe --> Run as program with parameters: /c copy %MODULEPATH%\override.ini .\ and Determine program location from "HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\Mozilla Firefox\24.5.0 (de)\Main" Key:"Install Directory" ("32-bit only" checked)
        • Run cmd.exe --> Run as program with parameters: /c copy %MODULEPATH%\mozilla.cfg .\ and Determine program location from "HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\Mozilla Firefox\24.5.0 (de)\Main" Key:"Install Directory" ("32-bit only" checked)
    • enabled "Include additional files [...]"
      • added needed preconfigured files: local-settings.js, mozilla.cfg, override.ini and unattend.ini

Problem:

Mozilla is installed (the Return code says "Failed"), the unattend.ini is NOT used and the files are not copied. What should be modified? And what I have to do to correctly publish the again modified package?

  • Using the /INI switch requires that a full path rather than a relative path be used. From the command line I was able to use environment variables but that did not work in packageboot for some reason. In my experience you have to include /INI="C:\Windows\SoftwareDistribution\Download\Install\unattend.ini"

    To add my configuration files I create a zip file containing the required structure, include that zip and 7z.exe in the package, and call 7z.exe to extract the zip to the install directory as a post install command. You can also create a self extracting zip and call that as a post install command.

  • Thanks for the hint. But the Folder "install" doesn't exist in that directory on my client systems. May be it is created at runtime if the deployed Package (zipped file named with an id and without file extension) is unzipped? Or have i to unzip the package by myself to a folder "install"? But how can i know the id of the package which i have to know to unzip it?

  • The install directory is created during package install and contains the extracted contents of the package. You do not need to know the package ID. Any included files, including the zip you generated containing your config files, will also be in that directory.

    I would suggest watching that directory during an update to get a better grasp of the process if required.

  • I removed the preconfig files and and used only the unattend.ini (i added the new path, the one you told me). But Firefox is installed again without using the unattend.ini (and is installing the Maintanence Service). I dont't know how to log what's going on at the installer itself. Tomorrow i'll try installing with config and the "7-zip version" of extracting to target folder.

  • If you added your unattend.ini as an additional file and it is configured correctly it should work. Below is the exact contents of my "Command Line" field.

    /INI=C:\Windows\SoftwareDistribution\Download\Install\config.ini

    My ini has a different name but it should work the same.

  • What I had to do (the way jbait said and at least I understand):

    - ADD ONLY the /INI switch and REMOVE the -ms switch

    - expand an 7z-archive to the destination per packageboot (include overwriting existing files) - all other tries to copy the files failed (don't know if wrong directories because of wrong path variables or missing rights)