Benutzerhandbuch - 5. Die Fink-Konfigurationsdatei
Dieses Kapitel erklärt die möglichen Einstellung in der Fink-Konfigurationsdatei (fink.conf) und wie sie das Verhalten von Fink beeinflussen, speziell das Kommandozeilentool fink
(d.h. das Nutzen der Source-Distribution).
5.1 Über fink.conf
Wenn Fink zum ersten Mal installiert wird, möchte es Antworten zu Fragen bekommen, um die Konfigurationsdatei einzurichten, wie z.B. welche Mirrors Sie zum Herunterladen von Dateien nutzen möchten oder wie Rechte eines Super-user erworben werden können. Sie können diesen Vorgang nochmals durchlaufen, indem Sie den Befehl fink configure
aufrufen. Um einige Wahlmöglichkeiten zu erhalten, müssten Sie die Datei fink.conf per Hand editieren. Im allgemeinen sind diese Optionen für fortgeschrittene Benutzer gedacht.
Die Datei fink.conf befindet sich hier: /opt/sw/etc/fink.conf
; Sie können diese mit Ihrem Lieblingseditor bearbeiten. Sie werden allerdings die Rechte eines super-user benötigen.
5.2 fink.conf Syntax
Ihre fink.conf besteht aus mehreren Zeilen, im Format:
OptionsName: Wert
Optionen sind jeweils immer eine je Zeile, und der Name der Option ist vom Wer mit einem : und einem Leerzeichen getrennt. Der Inhalt des Wertes hängt von der Option ab, aber er ist normalerweise eine Wahrheitswert (Boolean), also "True" oder "False", eine Zeichenkette (String) oder eine Liste von Wörtern voneinander durch ein Leerzeichen getrennt. Zum Beispiel:
BooleanOption: True StringOption: Something ListOption: Option1 Option2 Option3
5.3 Erforderliche Einstellungen
Einige Einstellungen in der fink.conf sind zwingend. Ohne Sie kann Fink nicht funktionstüchtig sein. Die folgenden Einstellungen gehören in diese Kategorie.
-
Basepath: path
Gibt Fink an, wo es installiert wurde. Standardwert ist /opt/sw, es sei denn, Sie haben den Pfad im Zuge der ersten Installation geändert. Sie sollten diesen Wert nach der Installation nicht mehr ändern - es würde fink verwirren.
5.4 Optionale Nutzereinstellungen
Es gibt verschiedene optionale Einstellungen, welche die Nutzer anpassen können, um das Verhalten von Fink zu ändern.
-
RootMethod: su, sudo oder none
Für einige Operationen benötigt Fink die Rechte eines Super-users. Anerkannte Werte sind sudo oder su. Sie können den Wert auch auf none setzen, dann müssen Sie Fink als Root selber starten. Der Standardwert ist sudo, und in den meisten Fällen braucht er nicht verändert werden.
-
Trees: Liste der Bäume
Verfügbare Bäume sind:
local/main - beliebige lokale Pakete, die Sie installieren wollen local/bootstrap - Pakete, die während der Installation von genutzt wurden stable/crypto - stabile, kryptographische Pakete stable/main - weitere stabile Pakete unstable/crypto - instabile, kryptographische Pakete unstable/main - weitere instabile Pakete
Sie können auch Ihre eigenen Bäume in das Verzeichnis
/opt/sw/fink/dists
für Ihre Bedürfnisse hinzufügen, dies ist aber nicht notwendig in den meisten Situationen. Die Standardbäume sind "local/main local/bootstrap stable/main". Diese Liste sollte mit der Datei/opt/sw/etc/apt/sources.list
synchronisiert sein. (Abfink
0.21.0 wird das für Sie automatisch gemacht.)Die Reihenfolge im Baum ist wichtig, weil Pakete an späteren Positionen in der Liste solche an früheren Positionen überschreiben können.
-
Distribution: 10.1, 10.2, 10.2-gcc3.3, 10.3 oder 10.4
Fink muss wissen, welche Version Sie von Mac OS X laufen haben. MaxcOS X 10.0 und frühere Versionen werden nicht und 10.1 und 10.2 wird nicht länger von der dieser Version von Fink unterstützt. Mac OS X 10.2 Nutzer müssen sich mit fink-0.24.7 begnügen, im Juni 2005 heraus gegeben. Dieses Feld wird mit dem Skript
/opt/sw/lib/fink/postinstall.pl
gesetzt. Sie sollten diesen Wert nicht manuell verändern. -
FetchAltDir: Pfad
Normalerweise wird
fink
die Quellen, die es herunterlädt, in/opt/sw/src
speichern. Sie können ein alternatives Verzeichnis bestimmen, in welchem nach heruntergeladenen Quelldateien gesucht wird, wenn Sie diesen Wert setzen. Zum Beispiel:FetchAltDir: /usr/src
-
Verbose: eine Zahl von 0 bis 3
Diese Option bestimmt, wie viel Informationen Fink ausgibt, während es beschäftigt ist. Die Werte sind: 0 Quiet (Leise) (zeigt keine Informationen über Downloads an) 1 Low (Niedrig) (zeigt keine Informationen über das Auspacken von Tarballs an) 2 Medium (Medium) (zeigt fast alles an) 3 High (Hoch) (zeigt alles an). Der Standardwert ist 1.
SkipPrompts: Eine Komma-separierte Liste
(
fink-0.25
und später) Diese Option instruiertfink
von der Nachfrage abzusehen, wenn der Nutzer keine Eingabe machen möchte. Jede Eingabe gehört zu einer Kategorie. Ist eine Kategorie in der Liste von SkipPrompts, dann wird die Voreinstellungsoption in einer sehr kurzen Zeit ausgewählt.Derzeit gibt es folgende Prompt-Kategorien:
fetch - Downloads und Mirrors
virtualdep - Wahl zwischen alternativen Paketen
Die Voreinstellung ist, dass kein Prompts übersprungen wird.
-
NoAutoIndex: boolean
Fink speichert die Paketbeschreibungen in /opt/sw/var/db/fink.db zwischen, um es von dort aus zu lesen, jedes Mal, wenn es aufgerufen wird. Fink überprüft, ob der Paketindex aktualisiert werden muss, es sei denn, dieser Wert ist auf "True" gesetzt. Der Standardwert ist "False", und es wird nicht empfohlen, dass Sie ihn verändern. Falls Sie es tun, sollten Sie den Befehl
fink index
per Hand ausführen, um den Index zu aktualisieren. -
SelfUpdateNoCVS: boolean
Der Befehl
fink selfupdate
aktualisiert Finks Paketmanager auf das aktuellste Release. Diese Option stellt sicher, dass dazu nicht das Concurrent Version System (CVS) verwendet wird, wenn der Wert auf "True" gesetzt ist. Er wird automatisch durch den Befehlfink selfupdate-cvs
gesetzt, so dass Sie ihn nicht per Hand ändern brauchen. -
Buildpath: Pfad
Fink muss mehrere temporäre Verzeichnisse für jedes Paket, welches von Quellcode kompiliert wird, erstellen. Der voreingestellte Ort wäre
/opt/sw/src
on Panther and earlier, and/opt/sw/src/fink.build
on Tiger. Wenn Sie es möchten, können Sie den Pfad hier einstellen. Für mehr Informationen über diese temporären Verzeichnisse lesen Sie die Beschreibungen über die FelderKeepRootDir
undKeepBuildDir
später in diesem Dokument.Unter Tiger wird empfohlen, dass Buildpath mit
.noindex
or.build
endet. Andernfalls versucht Spotlight, die temporären Dateien im Buildpath zu indizieren. Dieses verzögert die Erstellung von Paketen. Bzip2Path: Der Pfad zu ihrem
bzip2
(oder kompatiblen) Programm(
fink-0.25
und später) Mit der Option Bzip2Path kann der voreingestellte Pfad zum Kommandozeilen-Toolbzip2
überschrieben werden. Damit kann man einen alternativen Platz für dasbzip2
Programm angeben, zusätzliche Kommandozeilen-Optionen übergeben oder einen Ersatz für das Entpacken von.bz2
Archiven benutzen, wie zum Beispielpbzip2
.
5.5 Download Einstellungen
Es gibt verschiedene Einstellungen, die die Art und Weise beeinflussen, wie Fink Paketdaten herunterlädt.
-
ProxyPassiveFTP: boolean
Diese Option veranlasst Fink, den "passiven" Modus für FTP-Downloads zu verwenden. Einige FTP-Server oder Netzwerkkonfigurationen erfordern es, den Wert dieser Option auf "True" zu setzen. Es wird empfohlen diese Option auf "True" zu belassen, da "aktives" FTP veraltet ist.
-
ProxyFTP: url
Wenn Sie einen FTP-Proxy verwenden, sollten Sie hier seine Adresse eintragen, zum Beispiel:
ProxyFTP: ftp://yourhost.com:2121/
Lassen Sie den Wert frei, wenn Sie keinen Proxy für FTP nutzen.
-
ProxyHTTP: url
Wenn Sie einen HTTP-Proxy verwenden, sollten Sie hier seine Adresse eintragen, zum Beispiel:
ProxyHTTP: http://yourhost.com:3128/
Lassen Sie den Wert frei, wenn Sie keinen Proxy für HTTP nutzen.
-
DownloadMethod: wget, curl, axel oder axelautomirror
Fink kann drei verschiedene Programme nutzen, um Dateien vom Internet herunterzuladen: wget, curl oder axel. Der Wert axelautomirror führt zur Verwendung eines experimentellen Modus des Programms axel, so dass der Server, der sich am nähesten befindet und eine bestimmte Datei hat, bestimmt wird. Das Verwendung weder von axel noch von axelautomirror ist zu diesem Zeitpunkt empfohlen. Der Standardwert ist curl. Das Programm, welches Sie als DownloadMethod angeben, MUSS installiert sein. (d. h.
fink
wird nicht auf curl zurück fallen, wenn man ein Programm einstellt, das nicht vorhanden ist. -
SelfUpdateMethod: point, rsync oder git
fink
nutzt verschiedene Methoden, um info-Dateien der Pakete zu aktualisieren. rsync ist die empfohlene Einstellung; mit rsync werden nur geänderte Dateien aus den Bäumen herunter geladen, die sie eingeschaltet haben. Beachten sie, dass geänderte oder hinzugefügte Dateien in den Bäumenstable
undunstable
bei der Benutzung von rsync gelöscht werden. Machen sie zuerst einen Backup in ihren eigenen Baum, d. h.local
. git lädt aus dem Fink Repository mittels anonymous oder Github-Zugang herunter. Dies hat den Nachteil, dass git den Mirror nicht wechseln kann. Wenn der Server nicht verfügbar ist, kann man nicht aktualisieren. point lädt nur die neueste Version der Pakete herunter. Dies wird nicht empfohlen, weil ihre Pakete ziemlich veraltet sein können. SelfUpdateCVSTrees: Liste der Bäume
(
fink-0.25
und später) Die Voreinstellung ist, dass die Methode cvs selfupdate nur den momentanen Baum der Distribution aktualisiert. Diese Option überschreibt die Liste mit den Distributionsversionen, die während selfupdate aktualisiert werden. Beachten sie bitte, dass ein aktuelles "cvs"-Programm installiert sein muss, wenn Verzeichnisse eingeschlossen werden sollen, die in ihrem gesamten Pfad kein CVS/ Verzeichnis haben (d. h. dists/local/main oder ähnliche).-
UseBinaryDist: boolean
Bewirkt, dass
fink
versucht, vorübersetzte binäre Pakete aus der binären Distribution herunter zu laden, wenn diese zur Verfügung stehen und im System noch nicht vorhanden sind. Dies kann eine lange Zeit für die Installation einsparen. Deshalb wird es empfohlen, diese Option zu setzen. Der gleiche Effekt kann erreicht werden, indem man fink die Option --use-binary-dist (oder die Option-b
) übergibt. Dies gilt aber nur für den jeweiligen Aufruf vonfink
. Übergibt man die Option--no-use-binary-dist
anfink
, wird dies überschrieben und das Paket wird für diesen Aufruf vonfink
aus seinen Quellen übersetzt. Nur ab der fink-Version 0.23.0 verfügbar.Bitte beachten sie, dass in diesem Modus die verfügbare Binärversion nur herunter geladen wird, wenn sie die neueste Version des Pakets ist; er bewirkt also nicht, dass
fink
auf jeden Fall die Version nimmt, die binär zur Verfügung steht.
5.6 Mirror Einstellungen
Software aus Internet herunterladen kann eine ermüdende Beschäftigung sein und oft sind Downloads nicht so schnell, wie man es sich wünschen würde. Mirror-Server (engl.: mirror = Spiegel) bieten Kopien von Dateien an, die auf zwar anderen Servern auch verfügbar sind, aber somit geographisch näher und somit schneller bei Ihnen sind. Außerdem reduzieren sie die Belastung auf primären Servern, z.B. ftp.gnu.org, und bieten eine Alternative, solle eine Server einmal nicht erreichbar sein.
Um Fink den besten Mirror für Sie auswählen zu lassen, müssen Sie angeben, auf welchem Kontinent und in welchem Land Sie sich befinden. Falls ein Download von einem Server scheitert, werden Sie gefragt, ob Sie es von dem selben Server nochmals, von einem anderen Mirror im selben Land oder Kontinent oder einen anderen Mirror irgendwo auf der Welt versuchen möchten.
Die Datei fink.conf beinhaltet die Einstellungen über die Mirror-Server, die Sie verwenden möchten.
-
MirrorContinent: Code aus drei Buchstaben
Sie sollten diesen Wert mit dem Befehl
fink configure
ändern. Der dreibuchstabige Code kann in der Datei/opt/sw/lib/fink/mirror/_keys
gefunden werden. Wenn Sie zum Beispiel in Europa leben:MirrorContinent: eur
-
MirrorCountry: Code aus sechs Buchstaben
Sie sollten diesen Wert mit dem Befehl
fink configure
ändern. Der sechsbuchstabige Code kann in der Datei/opt/sw/lib/fink/mirror/_keys
gefunden werden. Wenn Sie zum Beispiel in Österreich leben:MirrorCountry: eur-AT
-
MirrorOrder: MasterFirst, MasterLast, MasterNever oder ClosestFirst
Fink unterstützt 'Master'-Mirrors, die gespiegelte Behälter von Quelldateien aller Fink-Pakete darstellen. Der Vorteil eines Master-Mirrors ist, dass die angeforderten URLs immer aufgelöst werden können. Sie können die Mirror-Server, die vom Fink-Team unterhalten werden, die originalen Quell-URLs oder externe Mirror-Server von Projekten wie Gnome, KDE oder Debian nutzen. Außerdem können Sie kombinierte Zusammenstellungen auswählen, welche dann nach Nähe geordnet durchsucht werden, wie oben beschrieben. Wenn Sie MasterFirst oder MasterLast angeben, können Sie als Nutzer später "skip ahead" wählen, und somit zum Master (oder nicht-Master)-Satz springen, falls der Download scheitert. Die Optionen sind:
MasterFirst - Durchsucht "Master"-Mirrors zuerst. MasterLast - Durchsucht "Master"-Mirrors zuletzt. MasterNever - Nutzt "Master"-Mirrors nie. ClosestFirst - Durchsucht den nächsten Mirror zuerst (kombiniert alle Mirrors in einen Satz).
Mirror-rsync:
(
fink-0.25.2
und später) Wirdfink selfupdate
ausgeführt und ist SelfupdateMethod aufrsync
gesetzt, ist dies die "rsync url" für die Synchronisation. Dies sollte eine "anonymous rsync url" sein, die auf ein Verzeichnis zeigt, das alle Distributionen und Bäume von fink enthält.
5.7 Entwicklereinstellungen
Einige Optionen in der fink.conf sind nur für Entwickler nützlich. Wir empfehlen nicht, dass konventionelle Fink-Nutzer diese ändern. Die folgenden Optionen gehören in diese Kategorie.
-
KeepRootDir: boolean
Veranlasst Fink, ein temporäres Verzeichnis
root-[name]-[version]-[revision]
nach dem Erstellen des Paketes nicht zu löschen. Standardwert ist "False". Seien Sie Vorsichtig, diese Option kann Ihre Festplatte sehr schnell füllen! Wenn Siefink
den Parameter -K übergeben, hat es die selben Auswirkungen - allerdings nur für diesenfink
-Aufruf. -
KeepBuildDir: boolean
Veranlasst Fink, ein temporäres Verzeichnis
[name]-[version]-[revision]
nach dem Erstellen des Paketes nicht zu löschen. Standardwert ist "False". Seien Sie Vorsichtig, diese Option kann Ihre Festplatte sehr schnell füllen! Wenn Siefink
den Parameter -k übergeben, hat es die selben Auswirkungen - allerdings nur für diesenfink
-Aufruf.
5.8 Erweiterte Einstellungen
Es gibt einige andere Optionen, die nützlich sein können, allerdings auch einiges Wissen voraussetzen.
-
MatchPackageRegEx:
Veranlasst Fink dazu, nicht zu fragen, welches Paket es installieren soll, falls eins (und nur eins) mit dem folgenden Perlschen Regulären Ausdruck übereinstimmt. Beispiel
MatchPackageRegEx: (.*-ssl$|^xfree86$|^xfree86-shlibs$)
stimmt mit Paketen, die auf '-ssl' enden oder exakt 'xfree86' oder 'xfree86-shlibs' heißen, überein.
-
CCacheDir: path
Falls das Fink-Paket
ccache-default
installiert ist, werden die Cache-Dateien, die beim Erstellen von Fink-Paketen anfallen, hier zwischengespeichert. Standardwert ist/opt/sw/var/ccache
. Wenn es aufnone
gesetzt ist, wird Fink nicht die Umgebungsvariable CCACHE_DIR setzen und ccache wird$HOME/.ccache
nutzen - wobei Dateien womöglich mit Root als Eigentümer in Ihr Home-Verzeichis abgelegt werden. Nur in fink-Version ab 0.21.0 verfügbar. NotifyPlugin: plugin
Geben sie ein Benachrichtigungs-plugin an, mit dem sie informiert werden, wenn Pakete (de-)installiert werden. Die Voreinstellung ist Growl (erfordert zur Ausführung
Mac::Growl
). Andere befinden sich im Verzeichnis/opt/sw/lib/perl5/Fink/Notify
. Abfink-0.25
werden sie in der Ausgabe vonfink plugins
aufgelistet. Die Fink Developer Wiki hat weitere Informationen.AutoScanpackages: boolean
Erstellt
fink
neue Pakete, kenntapt-get
sie nicht sofort. Früher musste das Kommandofink scanpackages
ausgeführt werden, damitapt-get
die neuen Pakete kennt. Jetzt erfolgt dies aber automatisch. Ist die Option vorhanden und auf false gesetzt, wirdfink scanpackages
nicht mehr automatisch nach dem Erstellen von Paketen ausgeführt. Voreinstellung: true.ScanRestrictivePackages: boolean
Überprüft
fink
die Pakete fürapt-get
, werden normalerweise alle Pakete im aktuellen Baum überprüft. Soll aber das resultierende apt-Repository veröffentlicht werden, kann der Administrator rechtlich verpflichtet sein, Pakete mit den LizensenRestrictive
oderCommercial
auszuschließen. Ist diese Option vorhanden und auf false gesetzt, lässt Fink diese Pakete aus.
5.9 Verwaltung von apts sources.list
Ab Version 0.21.0 kann Fink die Datei /opt/sw/etc/apt/sources.list
verwalten, die von apt genutzt wird, um Binärdateien für die Installation aufzufinden. Die Datei sources.list sieht normalerweise in etwa so aus, je nach Distribution und Bäume:
# Local modifications should either go above this line, or at the end. # # Default APT sources configuration for Fink, written by the fink program # Local package trees - packages built from source locally # NOTE: this is automatically kept in sync with the Trees: line in # /opt/sw/etc/fink.conf # NOTE: run 'fink scanpackages' to update the corresponding Packages.gz files deb file:/opt/sw/fink local main deb file:/opt/sw/fink stable main crypto # Official binary distribution: download location for packages # from the latest release deb http://us.dl.sourceforge.net/fink/direct_download 10.3/release main crypto # Official binary distribution: download location for updated # packages built between releases deb http://us.dl.sourceforge.net/fink/direct_download 10.3/current main crypto # Put local modifications to this file below this line, or at the top.
Mit dieser Standarddatei schaut apt-get zuerst in Ihre lokale Installation nach bereits kompilierten Binärdateien und erst danach in die offizielle Binary-Distribution. Sie können dies ändern, in dem Sie Einträge an den Anfang der Datei (was dann zuerst durchsucht wird) oder an das Ende der Datei (was dann zuletzt durchsucht wird) setzen.
Wenn Sie Ihre Trees-Zeile oder die Distribution, die Sie verwenden, verändern, wird Fink automatisch den "Standard"-Anteil der Datei auf die korrespondierenden, neuen Werte setzen. Fink wird allerdings jegliche lokale Änderungen beibehalten, die Sie an der Datei vorgenommen haben, vorausgesetzt, dass Sie Ihre Änderungen an den Anfang der Datei (über der ersten Standardzeile) oder an das Ende der Datei (unter der letzten Standardzeile) setzen.
Anmerkung: Wenn Sie die Datei /opt/sw/etc/apt/sources.list
vor der Aktualisierung auf Fink 0.21.0 geändert haben, werden Sie Ihre vorherige Datei hier gespeichert finden: /opt/sw/etc/apt/sources.list.finkbak
.