Fink (software)

Last updated
Fink
Stable release
0.45.6 / February 19, 2022;22 months ago (2022-02-19) [1]
Repository
Written in Perl
Operating system macOS
Type Package management system
License GNU General Public License
Website www.finkproject.org

The Fink project is an effort to port and package open-source Unix programs to macOS. Fink uses dpkg and APT (Debian's package management system), as well as its own frontend program, fink (which is implemented as a set of Perl modules).

Contents

Implementation

Fink features a binary distribution for quick and easy installation using APT, as well as a more extensive source distribution. [2] In addition to command-line tools for handling packages, the shareware app Phynchronicity provides a GUI.

Fink can be used to install newer versions of packages installed by macOS or to install packages not included in macOS by Apple edict. Fink stores all its data in the directory /opt/sw for newer macOS releases and /sw for macOS 10.14 and earlier [3] (although this can be changed if initially compiling fink itself from source code). This goes against the Filesystem Hierarchy Standard's recommendation to use the /usr/local prefix; the reasons given in the Fink FAQ are that other installers might overwrite Fink's files under /usr/local, and that having an entirely separate directory makes it easier to disable the binaries and libraries that Fink installs. [4] MacPorts, another macOS package manager, follows a similar approach by storing its data in /opt/local by default. [5] Within Fink's directory, a FHS-like layout (/sw/bin, /sw/include, /sw/lib, etc.) is used.

History

The Fink project was started in December 2000 by German hacker Christoph Pfisterer. The name Fink is German for finch and is a reference to the name of the macOS core, Darwin; Charles Darwin's study of diversity among finches led him eventually to the concept of natural selection.

Christoph Pfisterer left the project in November 2001. [6] Since then, several people have stepped in and picked up support for Fink. As of March 2008, the project was managed by 6 administrators, 89 developers, and an active community. As of March 2014, the Fink core team were made up of nine active developers, who are responsible for the central management of the project and maintain the "essential" packages. [7] [8]

The Fink community regularly adds support for the latest versions of macOS with their release. Latest Fink versions, starting with version 0.45.0, support up to MacOS Catalina. Support for MacOS Big Sur and Monterey is being worked on. [9]

See also

Related Research Articles

<span class="mw-page-title-main">Package manager</span> Software tools for handling software packages

A package manager or package-management system is a collection of software tools that automates the process of installing, upgrading, configuring, and removing computer programs for a computer in a consistent manner.

Darwin is the core Unix operating system of macOS, iOS, watchOS, tvOS, iPadOS, visionOS, and bridgeOS. It previously existed as an independent open-source operating system, first released by Apple Inc. in 2000. It is composed of code derived from NeXTSTEP, BSD, Mach, and other free software projects' code, as well as code developed by Apple.

<span class="mw-page-title-main">APT (software)</span> Free software package management system

Advanced package tool, or APT, is a free-software user interface that works with core libraries to handle the installation and removal of software on Debian, and Debian-based Linux distributions. APT simplifies the process of managing software on Unix-like computer systems by automating the retrieval, configuration and installation of software packages, either from precompiled files or by compiling source code.

<span class="mw-page-title-main">GoboLinux</span> Linux distribution

GoboLinux is a Linux distribution whose most prominent feature is a reorganization of the traditional Linux file system. Rather than following the Filesystem Hierarchy Standard like most Unix-like systems, each program in a GoboLinux system has its own subdirectory tree, where all of its files may be found. Thus, a program "Foo" has all of its specific files and libraries in /Programs/Foo, under the corresponding version of this program at hand. For example, the commonly known GCC compiler suite version 8.1.0, would reside under the directory /Programs/GCC/8.1.0.

The Filesystem Hierarchy Standard (FHS) is a reference describing the conventions used for the layout of Unix-like systems. It has been made popular by its use in Linux distributions, but it is used by other Unix-like systems as well. It is maintained by the Linux Foundation. The latest version is 3.0, released on 3 June 2015.

<span class="mw-page-title-main">Portage (software)</span> Gentoo package management system

Portage is a package management system originally created for and used by Gentoo Linux and also by ChromeOS, Calculate, Sabayon, and Funtoo Linux among others. Portage is based on the concept of ports collections. Gentoo is sometimes referred to as a meta-distribution due to the extreme flexibility of Portage, which makes it operating-system-independent. The Gentoo/Alt project was concerned with using Portage to manage other operating systems, such as BSDs, macOS and Solaris. The most notable of these implementations is the Gentoo/FreeBSD project.

deb is the format, as well as filename extension of the software package format for the Debian Linux distribution and its derivatives.

<span class="mw-page-title-main">MirOS BSD</span>

MirOS BSD is a free and open source operating system which started as a fork of OpenBSD 3.1 in August 2002. It was intended to maintain the security of OpenBSD with better support for European localisation. Since then it has also incorporated code from other free BSD descendants, including NetBSD, MicroBSD and FreeBSD. Code from MirOS BSD was also incorporated into ekkoBSD, and when ekkoBSD ceased to exist, artwork, code and developers ended up working on MirOS BSD for a while.

<span class="mw-page-title-main">MacPorts</span> Package Manager for macOS

MacPorts, formerly DarwinPorts, is a package manager for macOS and Darwin. It is an open-source software project that aims to simplify the installation of other open source software. It is similar in function to Fink and the BSD ports collections.

<span class="mw-page-title-main">Autopackage</span> Linux package management system

Autopackage is a free computer package management system aimed at making it simple to create a package that can be installed on all Linux distributions, created by Mike Hearn around 2002.

BioLinux is a term used in a variety of projects involved in making access to bioinformatics software on a Linux platform easier using one or more of the following methods:

<span class="mw-page-title-main">Portable application</span> Type of computer program

A portable application, sometimes also called standalone, is a program designed to operate without changing other files or requiring other software to be installed. In this way, it can be easily added to, run, and removed from any compatible computer without setup or side-effects.

Ports collections are the sets of makefiles and patches provided by the BSD-based operating systems, FreeBSD, NetBSD, and OpenBSD, as a simple method of installing software or creating binary packages. They are usually the base of a package management system, with ports handling package creation and additional tools managing package removal, upgrade, and other tasks. In addition to the BSDs, a few Linux distributions have implemented similar infrastructure, including Gentoo's Portage, Arch's Arch Build System (ABS), CRUX's Ports and Void Linux's Templates.

The FreeBSD Ports collection is a package management system for the FreeBSD operating system. As of February 2020, there are over 38,487 ports available in the collection. It has also been adopted by NetBSD as the basis of its pkgsrc system.

The Environment Modules system is a tool to help users manage their Unix or Linux shell environment, by allowing groups of related environment-variable settings to be made or removed dynamically.

Nix is a cross-platform package manager that uses a deployment model where software is installed into unique directories generated through cryptographic hashes. It is also the name of the tool's programming language. A package's hash takes into account the dependencies, which is claimed to eliminate dependency hell, as an alternative to the typical solution of installing multiple versions of dependencies at the same time. This package management model advertises more reliable, reproducible, and portable packages.

<span class="mw-page-title-main">RPM Package Manager</span> Package management system

RPM Package Manager (RPM) is a free and open-source package management system. The name RPM refers to the .rpm file format and the package manager program itself. RPM was intended primarily for Linux distributions; the file format is the baseline package format of the Linux Standard Base.

<span class="mw-page-title-main">Homebrew (package manager)</span> Software installation management software

Homebrew is a free and open-source software package management system that simplifies the installation of software on Apple's operating system, macOS, as well as Linux. The name is intended to suggest the idea of building software on the Mac depending on the user's taste. Originally written by Max Howell, the package manager has gained popularity in the Ruby on Rails community and earned praise for its extensibility. Homebrew has been recommended for its ease of use as well as its integration into the command-line interface. Homebrew is a member of the Open Source Collective, and is run entirely by unpaid volunteers.

<span class="mw-page-title-main">OpenZFS</span> Open-source implementation of the ZFS file system

OpenZFS is an open-source implementation of the ZFS file system and volume manager initially developed by Sun Microsystems for the Solaris operating system and now maintained by the OpenZFS Project. It supports features like data compression, data deduplication, copy-on-write clones, snapshots, and RAID-Z. It also supports the creation of virtual devices, which allows for the creation of file systems that span multiple disks.

References

  1. Fink releases on GitHub
  2. See for example http://www.finkproject.org/faq/usage-fink.php question 5.7. The source distribution's package database is at http://pdb.finkproject.org/pdb/ and by examining the details of an individual package it is possible to see which versions of macOS are supported, and whether a binary version is available.
  3. "Fink - Home". www.finkproject.org. Retrieved 2021-09-02.
  4. "Fink – F.A.Q – General" . Retrieved 2009-01-23.
  5. "FAQ – MacPorts". trac.macports.org. Retrieved 2021-12-30.
  6. Pfisterer, Christian. "Christoph Pfisterer resigns from the fink project". Archived from the original on 2008-09-23. Retrieved 2008-03-21.
  7. "Fink Contributors" . Retrieved 2013-03-07.
  8. "Organization of Fink" . Retrieved 2013-03-07.
  9. "Fink - News". www.finkproject.org. Retrieved 2021-12-30.