We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

Package Filename Convention

Package File-naming Convention for XUL Toolkit Applications

originally by Benjamin Smedberg <benjamin@smedbergs.us>, adjusted by Robert kaiser <kairo@kairo.at>

The following convention will be used for XUL Toolkit applications distributed by mozilla.org, and is used internally by package-name.mk, as well as for files distributed by the MLP and the SeaMonkey project.




Appname is lowercase, with no hyphens or dots:

  • firefox
  • thunderbird
  • seamonkey
  • sunbird
  • inspector


Version is a series of dot-separated version parts, each beginning with at least one numeral:

  • 0.1
  • 1.4.2
  • 0.9PR
  • 0.9.24b.7
  • 1.8a
  • 1.8a4


Langcode is a locale code, basically as specified in the "language tag" RFC 3066. If a source tarball or extension contains multiple locales, this field is omitted:

  • en-US
  • de
  • es-ES
  • ast
  • roa-IT-vec

Platform [-special]

The platform identifies the operating system/processor/toolkit for a binary package. For package types that are platform-independent, this field is omitted. Normally, this field is $(TARGET_OS)-$(TARGET_CPU) variables from autoconf. However, there are some exceptions to make files more readable:

  1. The platform of Windows packages is "win32" (or "win64", need help here if we actually ever distribute win64 packages, as there are multiple kinds of win64);
  2. the platform of Macintosh (OSX) packages is "mac";
  3. "linux-gnu" is shortened to linux.

Special is used to distinguish non-default characteristics of the build:

  1. GTK2 is the default toolkit on linux platforms. If a GTK binary is built, "-gtk1" is appended to the platform;
  2. for distiction to other builds, other non-default build options should be specified there in short but meaningful identifiers, e.g. builds including a patch for the MNG image format should specify -mng, or windows builds compiled with gcc instead of MSVC may specify -gcc here.


  • linux-i686
  • mac
  • win32-gcc
  • linux-i386-gtk1-mng


The kind of package being distributed. If the package is a binary tarball/zip build, the type is omitted. Other "type" possibilities are:

  • installer
  • langpack
  • src


File-specific extension. Packages which differ only by extension are the same, except for the compression method:

  • firefox-1.0PR.en-US.linux-i386.tar.gz
  • firefox-1.0PR.en-US.linux-i386.tar.bz2
  • firefox-1.0PR.en-US.linux-i386.7z

are all the same package.

Interwiki Language Links

Document Tags and Contributors

Contributors to this page: SphinxKnight, teoli, FredChat1, Nickolay, KaiRo
Last updated by: SphinxKnight,