Fink:Package naming

From the Fink Wiki
Revision as of 08:32, 21 February 2011 by Alexkhansen (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search


Fink package names are composed of hyphen-separated segments, some of which have standard meanings or usages by policy or by convention. In the following descriptions, %N means any name root, possibly composed of more than one segment.

Fink's Shared Library Policy provides for two possible package layouts (remember that %N must include the major library-version for header and runtime-library packages):

1. Shared library, headers, perhaps some programs (library is the primary focus)

  • %N -- compile-time files (headers, static libs, etc)
  • %N-shlibs -- shared libraries and other runtime files they may need
  • %N-bin -- user-land programs and other support files (if any exist)

2. Shared library, headers, some programs (programs are the primary focus)

  • %N -- user-land programs and other support files
  • %N-shlibs -- shared libraries and other runtime files they may need
  • %N-dev -- compile-time files (headers, static libs, etc)

Packages of libraries for various programming languages encode the language, and the language-version if the packages are specific to a certain version:

  • %N-py, %N-pyXX -- python, optionally specific to pythonX.X
  • %N-pm, %N-pmXXX -- perl, optionally specific to perlX.X.X
  • %N-rb, %N-rbXX -- ruby, optionally specific to rubyX.X

Packages that have different graphical mode options (these name components are usually only used when there is also a package that has the simple %N name):

  • %N-nox -- Graphics disabled ("no X11")
  • %N-x11 -- X11 graphics enabled
  • %N-aqua -- Aqua (OS X native) graphics enabled

QT4 packages often use the following scheme to facilitate the use of Variants:

  • %N-mac -- Aqua (OS X native) graphics enabled
  • %N-x11 -- X11 graphics enabled

Packages that have different cryptography options (several different naming schemes are used):

1. Crypto optional:

  • %N -- no crypto
  • %N-ssl -- crypto enabled

2. Different crypto sources:

  • %N -- crypto supplied by Apple's libs
  • %N-ssl -- crypto supplied by fink's libs
  • %N-unified -- crypto supplied by Apple's libs; replaces a former %N/%N-ssl pair (only needed to solve upgrade issues; otherwise %N is fine)