Notices: This section not yet converted to new layout. Download stats are rolling back out.

This is not the latest version of Mozilla Firefox ESR available.

Mozilla Firefox ESR


Package test results are passing.

Private CDN cached downloads available for licensed customers. Never experience 404 breakages again! Learn more...

This package was approved by moderator doc on 7/19/2016.

This package installs Firefox ESR

To install Mozilla Firefox ESR, run the following command from the command line or from PowerShell:

C:\> choco install firefoxesr --version 45.2.0

To upgrade Mozilla Firefox ESR, run the following command from the command line or from PowerShell:

C:\> choco upgrade firefoxesr --version 45.2.0


  • tools\chocolateyInstall.ps1 Show
    # This is the general install script for Mozilla products (Firefox and Thunderbird).
    # This file must be identical for all Choco packages for Mozilla products in this repository.
    $packageName = 'Firefox'
    $fileType = 'exe'
    $version = '45.2.0'
    $allLocalesListURL = ''
    # ---------------- Function definitions ------------------
    function GetUninstallPath () {
      $regUninstallDir = 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\'
      $regUninstallDirWow64 = 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\'
      $uninstallPaths = $(Get-ChildItem $regUninstallDir).Name
      if (Test-Path $regUninstallDirWow64) {
        $uninstallPaths += $(Get-ChildItem $regUninstallDirWow64).Name
      $uninstallPath = $uninstallPaths -match
        "Mozilla Firefox [\d\.]+ \([^\s]+ [a-zA-Z\-]+\)" | Select -First 1
      return $uninstallPath
    function GetLocale() {
      $availableLocales = (New-Object System.Net.WebClient).DownloadString($allLocalesListURL)
      # --- Get locale from installArgs if specified
      $packageParameters = $env:chocolateyPackageParameters
      $packageParameters = if ($packageParameters -ne $null) { $packageParameters } else { "" }
      $argumentMap = ConvertFrom-StringData $packageParameters
      $localeFromPackageParameters = $argumentMap.Item('l')
      # ---
      # --- Get already installed locale if available
      $uninstallPath = GetUninstallPath($null)
      $alreadyInstalledLocale = $uninstallPath -replace ".+\s([a-zA-Z\-]+)\)", '$1'
      # ---
      # --- Other locales
      $systemLocaleAndCountry = (Get-Culture).Name
      $systemLocaleTwoLetter = (Get-Culture).TwoLetterISOLanguageName
      $fallbackLocale = 'en-US'
      # ---
      $locales = $localeFromPackageParameters, $alreadyInstalledLocale, `
        $systemLocaleAndCountry, $systemLocaleTwoLetter, $fallbackLocale
      foreach ($locale in $locales) {
        $localeMatch = $availableLocales -match "os=win&lang=$locale`"" | Select -First 1
        if ($localeMatch -and $locale -ne $null) {
      return $locale
    function AlreadyInstalled($version) {
      $uninstallEntry = $(
        "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Mozilla " +
        "Firefox ${version}*"
      $uninstallEntryWow64 = $(
        "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\Mozilla " +
        "Firefox ${version}*"
      if ((Test-Path $uninstallEntry) -or (Test-Path $uninstallEntryWow64)) {
        return $true
      return $false
    function Get-32bitOnlyInstalled {
      $systemIs64bit = Get-ProcessorBits 64
      if (-Not $systemIs64bit) {
        return $false
      $registryPaths = @(
      $installedVersions = Get-ChildItem $registryPaths | Where-Object {
        $_.Name -match 'Mozilla Firefox [\d\.]+ \(x(64|86)'
      if (
        $installedVersions -match 'x86' `
        -and $installedVersions -notmatch 'x64' `
        -and $systemIs64bit
      ) {
        return $true
    # ----------------------------------
    $alreadyInstalled = AlreadyInstalled($version)
    if (Get-32bitOnlyInstalled) {
      Write-Host $(
        'Detected the 32-bit version of Firefox on a 64-bit system. ' +
        'This package will continue to install the 32-bit version of Firefox ' +
        'unless the 32-bit version is uninstalled.'
    if ($alreadyInstalled) {
      Write-Host $(
        "Firefox $version is already installed. " +
        'No need to download an re-install again.'
    } else {
      $locale = GetLocale
      $url = "${version}esr-SSL&os=win&lang=${locale}"
      $url64 = "${version}esr-SSL&os=win64&lang=${locale}"
      $silentArgs = '-ms'
      if ((Get-32bitOnlyInstalled) -or (Get-ProcessorBits 32)) {
        Install-ChocolateyPackage $packageName $fileType $silentArgs $url
      } else {
        Install-ChocolateyPackage $packageName $fileType $silentArgs $url $url64

Virus Scan Results

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.


This package has no dependencies.

Package Maintainer(s)

Software Author(s)

  • Mozilla


Version History

Version Downloads Last updated Status
Mozilla Firefox 60.8.0 43797 Tuesday, July 9, 2019 approved
Mozilla Firefox 60.7.2 16184 Thursday, June 20, 2019 approved
Mozilla Firefox 60.7.1 4734 Tuesday, June 18, 2019 approved
Mozilla Firefox 60.7.0 18574 Wednesday, May 22, 2019 approved
Mozilla Firefox 60.6.2 14607 Monday, May 6, 2019 approved
Mozilla Firefox 60.6.1 26308 Friday, March 22, 2019 approved
Show More

Discussion for the Mozilla Firefox ESR Package

Ground rules:

  • This discussion is only about Mozilla Firefox ESR and the Mozilla Firefox ESR package. If you have feedback for Chocolatey, please contact the google group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or Mozilla Firefox ESR, or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.

comments powered by Disqus uses cookies to enhance the user experience of the site.