Available Languages: | Deutsch | English | Español | Français | 日本語 (Nihongo) | Português | Русский (Russkiy) | 中文 (简) (Simplified Chinese) | |
This document gives an overview over all features of Fink. (下面的旧文档可以给你更详尽的概念: 安装, 使用 以及包括在发行安装版本的磁盘映象中的 ReadMe.rtf 文件。) 同时也可以查阅本网站的 文档部分 ,它包括一些其它的有用资讯。
欢迎查看 Fink 用户指南。 本指南包括从源代码或安装包来初次安装或升级 Fink 的步骤。 同时也会涉及软件包的安装和维护。
Fink 是 OS X 和 Darwin 上的开放源代码的 Unix 软件。 它给你的 Mac 带来种类众多的 Linux 和其他类似系统上开发的免费命令行及图形界面软件。
任何情况下你都需要:
安装了 Mac OS X 10.2 或以上的系统,或着相对应的 Darwin 版本。 两者的更早版本不能使用。 后面有关于支持系统的更多信息。
互联网访问。 要安装的源代码或可执行安装包都需要从互联网下载站点进行下载。
如果你需要使用源代码发布的版本(详见底下),你还需要:
Developer tools. On Mac OS X, install the Developer.pkg package from the Developer Tools (known as XCode for 10.3 and 10.4) CD (they're on the main DVD for OS 10.4), or download the latest version--this is often desirable, as later versions frequently fix issues (though admittedly sometimes they break things). Note that the tools must match your Mac OS X version. On Darwin, the tools should be present in the default install.
即使你不打算从源代码编译安装软件,安装开发工具仍然是个很好的主意。 开发工具包安装的一些程序实际上是一些通用的命令行工具。 后面你要安装的一些软件包可能需要有他们才可以运行。
耐心。 编译一些大的软件包需要花比较长时间。 我这里指的是按小时或者甚至是按天计算的时间。
Mac OS X 10.4 is the leading-edge platform, and is considered to be fully supported and tested
, though as a newer operating system there are still some issues. Most of the developers run it, and those who are running 10.3 have 10.4 users test their work. Note, however, that
fink on intel hardware is still considered to be of beta quality.
Mac OS X 10.3 is is considered to be fully supported and tested
, although there may still be stray compile problems with single packages. Many of the developers run it, and those who don't have 10.3 users test their work.
Mac OS X 10.2 is still supported to some extent. Fink 0.6.4 is the last distribution to suppport this OS.
Mac OS X 10.1 在某种程度仍然被支持。 你只能运行 Fink 0.4.1,在它上面没有更新的版本。
Darwin 8.x 是与 Mac OS X 10.4 对应的 Darwin 版本, 而 Darwin 7.x 是与 Mac OS X 10.3 对应的 Darwin 版本, 而 Darwin 6.x 则是与 Mac OS X 10.2 相应的版本。 总体来讲它们都可以使用,但没有经过非常详细的测试。因为多数人都只是在 Mac OS X 上运行。 对于一些使用了 OS X 专有特性的软件你可能会碰到问题 —— 受影响的软件包包括 XFree86,可能也包括 esound。
软件是用人们可阅读的编程语言来编写("开发")而成的;这种形式称为 "源代码"。 要使得计算机能够真正运行它,它必须转换为一种底层的机器指令代码(对多数人来说,这些代码是不可读的)。 这个转换过程称为 "编译" 经过转换后的程序称为 "可执行" 或 "二进制"程序。 (这个过程有时候也称为 "构建",因为实际上它还包括除编译以外的其它步骤)。
当你购买商业软件的时候,你不会看到源代码。这些公司甚至把它当作商业机密。 你只能获得一个已经可以运行的可执行程序,这意味着你没有办法修改程序,甚至没有办法知道它在运行过程究竟做了什么事情。
对于 开放源码 软件(简称开源软件)则不是这样。 顾名思义,它的源代码是公开给任何人查看和修改的。 事实上,对多数的开源软件的作者只是以源代码方式发布他们的作品,你需要在你自己的计算机上进行编译以后才可以使用。
Fink 可以让你自己在两种方式中间选择。 使用 "源代码" 发行版本的话,你将现在原始的源程序,并在上面应用 OS X 和 Fink 的编译规则,然后在你的机器上进行编译。 整个过程是全自动的,但是会花较长的时间。 使用 "二进制" 发行版本的话,你将下载从 Fink 站点下载已经编译好的软件包进行安装,这可以节省你自己编译的时间。 事实上也可以按照你的需要混合这两种方式。 本指南的其余部分将介绍如何做到这一点。
在第一次安装时,一套基本的软件包管理工具会被安装到你的计算机上。 在这之后你需要设置好你的 shell 来使用 Fink 所安装的软件。 你只需要做一次这件事情,以后你可以直接从任何 Fink 安装版本(高于 0.2.0 发布版)升级,而不需要重新安装。 这会在如何升级一章进行介绍。
在软件包管理工具安装好以后,你可以用它来安装更多的软件。 这会在 安装软件包一章进行介绍。
二进制发行版以 Mac OS X 安装包 (.pkg) 的形式提供,它被打包在一个磁盘映象文件(.dmg)中。 从下载页面下载了磁盘映象文件以后(你可能需要使用你的浏览器的 "保存目标为..." 或 "下载到磁盘" 功能),双击这个磁盘文件来装载上它。 在 "磁盘工具" 程序(10.3以前是 "磁盘拷贝")校验完你下载的文件后,在你的桌面上(或你下载到的文件夹里面)会出现一个 "Fink 0.x.x Installer" 的磁盘图标,打开它。 在里面你会看到一些文档和一个安装包。 双击安装包并按照屏幕上的说明完成剩下的安装。
你会被要求输入管理员密码,同时会显示一些文本。 请阅读它们 —— 它会比这份用户指南的版本更新。 当安装程序让你选择一个宗卷进行安装时,一定要选择系统宗卷(也就是你安装 OS X 的宗卷)。 如果你选择了错误的宗卷,安装仍然可以进行,但是安装后的 Fink 不能正常工作。 当安装程序运行完毕以后,继续 设置你的环境部分。
源代码发行版以标准的 Unix tarball (.tar.gz) 方式提供。 它仅包含 fink 软件包管理器以及它自己的软件包描述,整个软件包的其它部分会在安装的过程中才下载。 你可以从这个 下载页面获得它。 很重要的是,你不能用 StuffIt Expander 来解压缩下载后的 tar 压缩档。 由于某些原因,StuffIt 仍然不能处理长文件名。 如果 StuffIt Expander 已经自动解压了你下载的压缩档,把它解压产生的文件夹删除掉。
源代码发行版必须从命令行安装,因此请打开 Terminal.app 并进入到你保存所下载到的 fink-0.x.x-full.tar.gz 压缩档的目录。 (Note: If you have OS X 10.4 and XCode 2.1, you should use fink-0.8.0-full-XCode-2.1.tar.gz instead, and make the appropriate changes below.) 以下的命令将解压压缩档:
tar -xzf fink-0.x.x-full.tar.gz
它会创建一个与压缩档同名的新目录。 我们将继续使用 fink-0.x.x-full 这个名称来代表它。 现在,进入这个新目录,并运行 bootstrap 脚本:
cd fink-0.x.x-full ./bootstrap.sh
这个脚本会对你的系统进行一些检查,然后使用 sudo 把你提升到 root 权限——这时会提示你输入你的密码。然后,脚本会询问你安装的路径,除非你有一个很好的理由,否则你应该使用默认的—— /opt/sw。 只有这样,以后你才可以顺利安装下载的二进制方式提供的安装包。另外,我们全部的例子都使用这个路径,所以如果你使用其它的安装路径,你要记住进行相应的替换。
下一步是 Fink 的配置。 它会询问你一些象代理和镜象服务器设置以及是否需要详细信息输出等问题。 如果你不是很明白有些问题,你可以按回车键接受默认的选择。 以后你还可以通过 fink configure 这个命令重新这个配置过程。
当 bootstrap 收集到它所需要的所有信息以后,它会下载基本系统所需要的源代码并编译它。 这以后不再需要用户的交互。 如果你看到一些软件包被反复编译两次不需要担心。 这是正常的现象,因为要构件一个软件包管理器的二进制安装包,你首先需要有一个软件包管理器。
当 bootstrap 脚本执行完毕,请继续 设置你的环境部分。
要使用 Fink 目录下安装的软件,包括软件包管理器本身,你必须相应设置 PATH 环境变量。 In most cases, you can do this by entering the command
/opt/sw/bin/pathsetup.sh
Note that for some older versions of fink the program was called pathsetup.command, and one could run it via open /opt/sw/bin/pathsetup.command.
如果由于某种情况这种方法不奏效,你可以手工配置它。不过,这会随你使用的 Shell 程序不同而不同。 你可以通过打开终端窗口并运行下面指令来查看你 shell 类型:
echo $SHELL
如果命令输出 "csh" 或 "tcsh" ,那么你使用的是 C shell。如果输出是 bash,zsh,sh 或其它类似的东西,你很可能是在使用 Bourne shell 的一个变种。
Bourne Shell(在 Mac OS X 10.3 后是默认的shell程序)
如果你使用 Bourne 风格的 shell (比如 sh,bash,zsh),把下面的几行添加到你的主目录下的 .profile 文件中(或者,如果你已经有一个 .bash_profile 文件,你也可以添加到那里):
. /opt/sw/bin/init.sh
如果你不知道如何添加,运行下面的命令:
cd pico .profile
你现在进入到一个全屏幕(准确地说,全终端窗口)文本编辑器,应该很容易能够输入 . /opt/sw/bin/init.sh 这一行。如果有个提示说 "New file",这不是什么问题。确定在这行的末尾你至少输入了回车,然后按 Control-O,再回车,最后 Control-X 退出编辑器。
C Shell(在 Mac OS X 10.2 或更早的版本是默认 Shell)
如果你使用 tcsh,在你主目录下的.cshrc文件中添加下面一行:
source /opt/sw/bin/init.csh
如果你不懂怎么添加,运行下面的命令:
cd pico .cshrc
你现在进入到一个全屏幕(准确地说,全终端窗口)文本编辑器,应该很容易能够输入 source /opt/sw/bin/init.sh 这一行。如果有个提示说 "New file",这不是什么问题。确定在这行的末尾你至少输入了回车,然后按 Control-O,再回车,最后 Control-X 退出编辑器。
有些情况下你需要编辑更多的文件:
你已经有一个~/.tcshrc文件。
有些第三方软件会创建这个文件,或者你自己这样做。 这时,~/.tcshrc 将会被读取,而 ~/.cshrc 则被忽略了。 推荐的步骤是用你上面编辑~/.cshrc时类似的方法编辑 ~/.tcshrc,并在最后加入这样一行:
source ~/.cshrc
这样,如果你要删除 ~/.tcshrc,你还可以运行 Fink。
你曾经按照 /usr/share/tcsh/examples/README 文档里面的要求进行操作。
这些指南告诉你创建一个 ~/.tcshrc 文件及一个 ~/.login 文件。这种情况下的问题是 ~/.login 文件在 ~/.tcshrc 文件之后运行,并用 source 语句引用 /usr/share/tcsh/examples/login 文件的内容。后者包括一条语句重写了你前面设置的 PATH 环境变量。在这种情况下,你需要做的是创建 ~/Library/init/tcsh/path文件:
mkdir -p ~/Library/init/tcsh pico ~/library/init/tcsh/path
并加入:
source ~/.cshrc
到文件里面。你还需要按照第一点所说的那样修改你的 .tcshrc 文件,以确保在 ~/.login 文件没有被读取的时候 PATH 仍然被正确设置。
编辑 .cshrc (以及其它启动文件)只会影响新的 Shell(也就是说,新打开的终端窗口),所以你也需要在你编辑这个文件之前打开的所有终端窗口中运行这个命令。 你还需要运行 rehash 命令,因为 tcsh 会在内部缓存所有可用的命令。
注意这个 init.sh 和 init.csh 脚本还添加了 /usr/X11R6/bin 和 /usr/X11R6/man 到你 PATH 环境变量中,使得你可以在安装了 X11 以后使用它。 Fink 软件包可以添加它们自己的设置,例如,qt 软件会设置 QTDIR 环境变量。
一旦你的环境设置好,继续 安装软件包 章节来了解如何用 Fink 所包括的软件包管理工具来安装一些实际的软件包。
现在你已经做完了一些可以称为 Fink 安装的事情。 本章介绍怎么用 Fink 来安装一些实际的软件包,这也是你安装 Fink 的目的。 在我们解释如何用源码或二进制包安装前,有一些重要的信息是对这两种方式都适用的。
dselect 是一个让你查看可用的软件包清单的程序,同时也可以选择你所需要安装的包。 它在 Terminal.app 程序中运行,但会占用整个"屏幕" 并使用简单的键盘进行控制浏览。 和其它软件包管理工具一样 dselect 需要 root 用户权限,所以你需要(以具有管理员权限的帐号)使用 sudo:
sudo dselect
注意: dselect 已知在 Mac OS X 的终端程序中运行存在问题。你需要套在使用它前运行下面的命令,或把它们放到合适的启动文件中(例如 .cshrc 或 .profile):
对 tcsh 用户:
setenv TERM xterm-color
对 bash 用户:
export TERM=xterm-color
在主菜单里面有几个选择:
[A]ccess - 这个选项配置所使用的网络访问方法。 你不需要运行这个,因为 Fink 已经为你预先配置好一切东西了。 事实上,你应该避免使用这个菜单,因为它可能会用一些不合适的选项来覆盖默认的配置。
[U]pdate - 这个选项从 Fink 站点中下载所有可用的软件包的清单。 这个选项并不实际安装或更新任何软件包,它只是更新软件包浏览器中所使用的清单。 在安装 Fink 以后你必须知道运行它一次。
[S]elect - 这个选项告诉你实际的软件包清单,在这里你可以按你的希望选择或反选你系统里面的软件包。在后面我们会详细介绍这一点。
[I]nstall - 这是开始实际操作的地方。 以上的菜单项只是影响 dselect 的软件包列表和状态数据库。而这个菜单项则是实际开始下载和安装你要求的软件包。 它也会删除你在浏览器中反选的软件包。
[C]onfig and [R]emove - 这是 apt 之前的留下来的遗迹。 你不需要使用它们,虽然它们不会有什么害处。
[Q]uit - 这应该不需要更多解释。
多数时间你会在软件包浏览器中使用 dselect,这可以通过 "[S]elect" 菜单项访问。 在 dselect 显示软件包清单之前,它会显示一个介绍性的帮助屏幕。 你可以按 'k' 按钮来获得一个键盘命令的详细清单,或按空格键进入软件包清单。
你可以使用上下方向键来在清单中进行浏览。 你可以用 '+' and '-' 来进行选择。 当你选择的软件包安装时需要其它的软件包时,dselect 会显示一个相关的子列表。 多数情况下,你只需要按回车键来接受 dselect 的选择。 你可以在子列表中进行调整(例如,选择另外一个可替代的软件包依赖关系),或者按 'R' (即是 Shift-R)来回到原来的状态。 子列表和主软件包清单都是通过按回车键离开。 当你对你的选择感到满意以后,离开主清单并使用 "[I]nstall" 菜单项来实际安装软件包。
dselect 本身并不实际安装软件包。 相反,它会运行 apt 来做这些实际工作。 如果你喜欢一个纯命令行界面,你可以用 apt-get 命令直接使用 apt 的功能。
和 dselect 一样,你首先需要用这个命令下载可用的软件包清单:
sudo apt-get update
象 dselect 中的"[U]pdate" 菜单项一样,它并不会实际更新你计算机中的文件,而只是更新 apt 的可用软件包列表。要安装软件包,你需要给 apt-get 一个名字,象这样:
sudo apt-get install lynx
如果 apt-get 发现这个软件还需要其它软件包安装,它会告诉你一个清单,让你确认。 然后它会下载和安装所要求的软件包。 删除已安装的软件包也很容易:
sudo apt-get remove lynx
有些时候,当我们执行一个二进制软件包安装的时候,你会或得一个依赖关系不能安装的错误信息。比如:
Sorry, but the following packages have unmet dependencies: foo: Depends: bar (>= version) but it is not installable E: Sorry, broken packages
这种现象的原因时你要安装的软件包需要依赖于另外一个软件包,但是那个软件包由于版权许可问题不能以二进制包方式发布。你必须用源代码来安装这个依赖关系(见下一部分)。
The fink tool will allow you to install packages that are not yet available in the binary distribution.
首先,你需要在你的系统中安装合适版本的开发工具。在 http://connect.apple.com中最新版本免费注册以后可以下载得到它。
要获得可以从源代码安装的软件包清单,可以用 fink 工具查询:
fink list
第一列是安装状态(空白表示没有安装,i 表示已安装,(i) 表示已安装但是并不是最新的版本),后面是软件包的名字,最新版本,以及一个简要的描述。 你可以用 "describe" 命令 ("info" 是它的一个别名)来获得某个软件包的更多信息:
fink describe xmms
当你找到一个你希望的软件包以后,可以使用 "install" 命令:
fink install wget-ssl
fink 命令首先会检查所有需要先安装的软件("依赖关系")是否已经存在,然后询问你时候可以安装那些现在还不存在的软件包。 然后它会开始下载源代码,解包,给它打上必要的补丁,编译,然后把最终的结果安装到你的系统上。 这可能会花费比较长的时间。 如果你发现此过程中发生了错误,请首先查看 FAQ。
For fink versions since 0.23.0 you can tell it to try to download pre-compiled binary packages, if available, instead of building them. Just pass the --use-binary-dist (or -b) option to fink. This can save you a lot of time. E.g. calling
fink --use-binary-dist install wget-ssl
or
fink -b install wget-ssl
will first download all dependencies for wget-ssl that are available from the binary distribution and only build the remainder from source. This option can also be enabled permanently in the Fink configuration file (fink.conf) or by running the command fink configure.
More details about the fink tool are available in the chapter "Using the fink Tool from the Command Line".
Fink Commander 是 apt-get 和 fink 工具的 Aqua 界面。二进制包菜单可以让你管理二进制安装包,源程序菜单则相应管理源程序安装包。
Fink Commander 被包括在 Fink 的二进制安装包中。如果你想要单独下载它(比方说,你是从源代码开始建立 Fink 的),或者需要额外的信息,可以访问 Fink Commander 网站。
当你希望安装一个软件包,你应该首先查看 软件包数据库 来找找是不是可以通过 Fink 获得。软件包的各个可用版本会在一个表格的多个行中出现。就象这样:
0.4.1: this is the version that can be installed from binaries for OS 10.1.
0.6.4: this is the version that can be installed from binaries for OS 10.2.
0.7.2 This is the base version that can be installed from binaries for OS 10.3. If you update Fink, later versions of some packages may be available.
0.9.0: This is the base version that can be installed from binaries for OS 10.5. If you update Fink, later versions of some packages may be available.
10.2-gcc3.3 stable: This is the most recent stable version that can be installed from the stable source tree for OS 10.2 with the gcc 3.3 update to the Developer Tools. To be able to install this version, you may need to enable CVS or rsync access. If you have not applied the gcc 3.3 update you may not see this version (or possibly even the package).
Note: Unlike the case for some other projects, Fink distributes the most recent stable versions of packages via CVS, as well as versions in need of testing (see the section on unstable below). Enabling CVS or rsync updating gives you access to new stable versions of packages before the binary distribution is updated.
10.3 stable: This is the most recent version that can be installed from the stable source tree for OS 10.3.
10.4-transitional stable: This is the most recent version that can be installed from the stable source tree for OS 10.4 users who upgraded from 10.3. PowerPC only.
10.4/powerpc stable: This is the most recent version that can be installed from the stable source tree for OS 10.4 users with new fink installations. PowerPC only.
10.4/intel stable: This is the most recent version that can be installed from the stable source tree for OS 10.4 users on intel hardware.
10.2-gcc3.3 unstable: This is the latest version that can be installed from the unstable source tree for OS 10.2 with gcc 3.3. To install this version, follow the instructions on how to install unstable packages.
Note: unstable doesn't necessarily mean unusable, but install such packages at your own risk.
10.3 unstable: This is the latest version that can be installed from the unstable source tree for OS 10.3.
10.4-transitional unstable: This is the latest version that can be installed from the unstable source tree for OS 10.4 users who upgraded from 10.3. PowerPC only.
10.4/powerpc unstable: This is the most recent version that can be installed from the unstable source tree for OS 10.4 users with new fink installations. PowerPC only.
10.4/intel unstable: This is the most recent version that can be installed from the unstable source tree for OS 10.4 users on intel hardware.
许多 Fink 中的软件包都要求已经安装某种形式的 X11。因此,首先要做的第一件事情是选择一种 X11 实现。
由于在 Mac OS X 上有几种 X11 实现(Apple X11, XFree86, X.org),以及几种不同的方式去安装它们(手工或通过 Fink),所以存在有几种可选的软件包 - 每种设置方式一个。 这里是可用的软件包和 X11 安装方法:
xfree86, xfree86-shlibs: Install both of these packages for XFree86 4.3.0 (OS 10.2 only), 4.4.0 (10.2 or 10.3), or 4.5.0 (10.3 or 10.4).
xorg, xorg-shlibs(10.3 or 10.4) Install these packages to get the 6.8.2 release of the X.org X11 distribution.
system-xfree86 + -shlibs, -dev: These packages are automatically generated (for Fink 0.6.2 or later) if you install Apple's X11, or manually installed XFree86 or X.org. They will then act as dependency placeholders.
xfree86-base, xfree86-rootless [-threaded] + -shlibs, -dev (10.1 or 10.2 only) These packages install all of XFree86 4.2.1.1 (4.2.0 on 10.1). The -threaded variant was provided for applications that required it, and this functionality is standard in later XFree86 versions. The -rootless packages include the XDarwin display server--the name is historical.
You must install all six packages to build X11-based packages from source.
关于安装和运行 X11 的更多信息,请参考 Darwin 及 Mac OS X 上 X11 的文档.
本章介绍如何升级你的 Fink 安装到最新和最好的版本。
如果你只是使用二进制包进行安装,那么不需要什么特别的升级步骤。 简单地选择你喜欢的工具从服务器上获取最新的软件包,并安装需要的所有软件包就可以了。
对于 dselect,只需要选择 "[U]pdate",然后 "[I]nstall" 就足够了。 当然,你也许会希望在两个步骤中间运行 "[S]elect" 来查看做了什么选择以及新软件包的有关信息。
对于 apt,运行 apt-get update 来获取最新的软件包清单,然后运行 apt-get upgrade 来更新全部有新版本的软件包。
对于 Fink Commander,选择 Binary->Update descriptions 来更新软件包清单,然后选择 Binary->Dist-Upgrade packages 来升级到新的版本。
更多的信息,尤其是关于升级 Fink 0.3.0 之前版本,参见 Upgrade Matrix。
整个过程由两个步骤组成。 第一步,下载最新的软件包描述到你的计算机。 第二步,使用这些软件包描述来编译新的软件包,实际的源代码会根据需要下载。
如果你使用 Fink 0.2.5 或更新版本,第一步可以运行 fink selfupdate。 这个命令会检查 Fink 网站看是否有一个新的版本发布,如果有的话,会自动下载和安装软件包描述文件。 在最新的 fink 版本的命令中,你可以选择直接从 CVS 或通过 rsync 来直接获取软件包描述。 CVS 是一个具有版本控制功能的储存库,它保存和管理软件包描述文件。 使用 CVS 的优点是它是不断更新的,缺点是对 Fink 只有一个 Git 服务器,如果访问量太大,它会变得不稳定。因此,对通常用户,我们推荐使用 rsync。对于 rsync,我们有多个镜像站点。唯一得缺点是新得版本在 Git 发布以后会大约需要一个小时后才会更新到 rsync 镜像站点上。
(如果你在升级从源码安装得版本中碰到问题,请查阅 一些特殊指引。)
如果你的 Fink 是 0.2.5 之前得版本,你需要手工下载软件包描述文件。 访问 下载区,在 "distribution" 模块中寻找最新的 packages-0.x.x.tar.gz 压缩档。 下载它,然后按下面的办法安装:
tar -xzf packages-0.x.x.tar.gz cd packages-0.x.x ./inject.pl
更新了软件包描述以后(无论你采用什么办法), 你应该可以用 fink update-all 命令一次更新所有软件包。
如果使用 Fink Commander 更新源代码发布版本,选择 Source->Selfupdate 下载最新的软件包信息文件,然后选择 Source->Updata-all 来更新所有不是最新的软件包。
如果你的某些软件包是使用预编译好的二进制安装包安装,而另外一些则使用源代码安装,你需要使用上面的两套步骤来更新你的 Fink 安装。 也就是说,首先使用 dselect 或 apt-get 来获取可用的二进制安装版本,然后使用 fink selfupdate 和 fink update-all 来过去最新的软件包描述,并更新剩下的软件包。
Starting with fink 0.23.0 using the UseBinaryDist option (settable via the --use-binary-dist (or -b) option or in the Fink configuration file) both source and binary descriptions will be updated if you call fink selfupdate. In this case you don't need a separate apt-get call anymore.
If you are using Fink Commander select Binary->Update descriptions to update the package list, and then Binary->Dist-Upgrade packages to update to new versions. After that do Source->Selfupdate to download new package information files, and then Source->Update-all (see previous sections for details).
本章会解释 Fink 配置文件(fink.conf)中的设置项,以及他们会对 Fink 的工作产生什么作用,尤其是 fink 命令行工具(也就是说使用源代码发布版本)。
在 Fink 安装的时候,它会询问你几个问题以建立起你的配置文件,就好像选择你希望使用来下载文件的 镜像网站 以及如何获得超级用户权限。你可以用fink configure 命令来重新进行这个过程。而有一些选项,则需要直接编辑 fink.conf 文件。通常来说,这些选项对于熟练用户才会有用。
fink.conf 文件的位置在 /opt/sw/etc/fink.conf,它可以用你喜欢的纯文本编辑器来编辑它。要编辑它,你需要超级用户的权限。
你的 fink.conf 文件由多行组成,格式是:
选项名: 选项值
每行一个选项,选项名和选项值之间以一个冒号和一个空格分开。选项值的内容取决每个不同的选项,但通常会是一个布尔值("True" 或 "False"),一个字符串,或用空格分开的多个字符串。 例如:
BooleanOption: True StringOption: Something ListOption: Option1 Option2 Option3
fink.conf 文件里面的一些设置是不可缺的。如果缺少它们,Fink 就无法正常工作。下面的设置就属于这一类。
Basepath: 路径
它告诉 Fink 它被安装在什么位置。默认的情况是 /opt/sw,除非你在第一次安装的时候更改了它的位置。安装以后,你决不能再更改这个设置,否则会使 fink 陷入混乱中。
有很多设置用户可以进行调整,来对 Fink 进行优化。
RootMethod: su 或 sudo 或 none
对一些操作,Fink 需要有超级用户权限。可供选择的选项包括 sudo 或 su。你也可以把它设为 none,这时,你需要自己转换到 root 权限后再运行 Fink。默认值是 sudo,多数情况下这不应该修改。
Trees: 代码树列表
可供选择的代码树包括:
local/main - 所有你希望安装的本地软件包 local/bootstrap - Fink 安装过程需要使用的软件包 stable/crypto - 稳定的可靠(经过数字签名)软件包 stable/main - 其它稳定软件包 unstable/crypto - 未稳定的可靠(经过数字签名)软件包 unstable/main - 其它未稳定软件包
你可以根据需要在 /opt/sw/fink/dists 目录中加入你自己的代码树,但通常来说不需要这样做。默认的代码树是 "local/main local/bootstrap stable/main"。这个设置清单应该与 /opt/sw/etc/apt/sources.list 文件内容保持一致。 (As of fink 0.21.0, fink does this for you automatically.)
The order of the trees is meaningful, as packages from later trees in the list may override packages from earlier ones.
Distribution: 10.1、10.2、10.2-gcc3.3, 10.3 或 10.4
Fink 需要知道你使用的 Mac OS X 版本是什么。10.0 或更早的版本不能够被支持,从这个版本的 Fink 开始,10.1 或 10.2 也不被支持。 Mac OS X 10.2 users are restricted to fink-0.24.7, released in June 2005. 这个字段是通过运行 /opt/sw/lib/fink/postinstall.pl 来设置的。你不应该手工改变这个设置值。
FetchAltDir: 路径
通常来说 fink 会保存它下载的源代码到 /opt/sw/src 目录中。你可以用这个选项来更换保存下载源程序的目录。例如:
FetchAltDir: /usr/src
Verbose: 0 到 3 之间的数字
这个选项设置 Fink 应该在运行过程中告诉你详细到什么程度的信息。取值的含义是: 0 Quiet (安静模式)(不显示下载状态) 1 Low (低模式)(不显示正在展开的压缩档的信息) 2 Medium (中模式)(几乎显示所有信息) 3 High (高模式)(显示所有信息) 默认值是 1。
SkipPrompts: a comma-delimited list
(fink-0.25 and later) This option instructs fink to refrain from asking for input when the user does not want to be prompted. Each prompt belongs to a category. If a prompt's category is in the SkipPrompts list then the default option will be chosen within a very short period of time.
Currently, the following categories of prompts exist:
fetch - Downloads and mirrors
virtualdep - Choosing between alternative packages
By default, no prompts are skipped.
NoAutoIndex: 布尔值
Fink 会缓存它的软件包描述文件在 /opt/sw/var/db/fink.db 中,这会减少每次运行时读取和解析这些文件的时间。除非这个值被设成 "True",否则 Fink 会每次都检查软件包的索引时候需要更新。默认情况下它被设成 "False"。我们不推荐你更改它。如果你真的改动了它,你需要手工运行 fink index 命令来更新索引。
SelfUpdateNoCVS: 布尔值
fink selfupdate 命令会更新 Fink软件管理器到最新的版本。当这个选项设为 True 的时候,将保证不会使用协作式版本管理系统(CVS)来更新软件包。它由 fink selfupdate-cvs 命令自动设置,所以你不需要手工改变它。
Buildpath: 路径
Fink 在从源代码编译的时候,需要创建几个临时的目录。默认情况下,它们被放置在 /opt/sw/src (on Panther and earlier) 下, /opt/sw/src/fink.build (on Tiger) 下,不过,如果你想把它们放在其它地方的话,可以在这里指明路径。查阅本文档后面关于 KeepRootDir 和 KeepBuildDir 字段的描述获取关于这个临时目录的更多信息 (Developer Settings)。
On Tiger, it is recommended that the Buildpath end with .noindex or .build. Otherwise, Spotlight will attempt to index the temporary files in the Buildpath, slowing down builds.
Bzip2Path: the path to your bzip2 (or compatible) binary
(fink-0.25 and later) The Bzip2Path option lets you override the default path for the bzip2 command-line tool. This allows you to specify an alternate location to your bzip2 executable, pass optional command-line options, or use a drop-in replacement like pbzip2 for decompressing .bz2 archives.
有几个设置会影响 Fink 下载软件包数据的方式。
ProxyPassiveFTP: 布尔值
这个选项使得 Fink 使用 "被动" 模式来进行 FTP 下载。某些 FTP 服务器或网络配置会要求这个设置必须为 。建议永远保持这个选项为打开,因为主动模式的 FTP 已经过时了。
ProxyFTP: url
如果你使用 FTP 代理,那么你应该这里输入它的地址,例如:
ProxyFTP: ftp://yourhost.com:2121/
留空这一项,如果你不需要使用 FTP 代理。
ProxyHTTP: url
如果你使用 HTTP 代理,那么你应该在这里输入它的地址,例如:
ProxyHTTP: http://yourhost.com:3128/
留空这一项,如果你不需要使用 HTTP 代理。
DownloadMethod: wget 或 curl 或 axel 或 axelautomirror
Fink 可以使用三种不同的程序来从网上下载程序 —— wget,curl 或 axel。而 axelautomirror 会使用 axel 的一种实验中的模式,这种模式会自动检测包含你要下载的文件的离你最近的服务器。目前不推荐使用 axelmirror。默认值是 curl。 你这里选择的程序必须已经安装在你的计算机上! (i.e. finkwon't fall back to curl if you try to use a download application that isn't present.
SelfUpdateMethod: point, rsync or git
fink can use some different methods to update the package info files. rsync is the recommended setting; it uses rsync to download only modified files in the trees that you have enabled. Note that if you have changed or added to files in the stable or unstable trees, using rsync will delete them. Make a backup first, e.g. in your local tree. git will download using anonymous or Github access from the Fink repository. This has the disadvantage that git can not switch mirrors; if the server is unavailable you will not be able to update. point will download only the latest released version of the packages. It is not recommended as your packages may be quite out of date.
SelfUpdateCVSTrees: list of trees
(fink-0.25 and later) By default, the cvs selfupdate method will update only the current distribution's tree. This option overrides the list of distribu- tion versions that will be updated during a selfupdate. Please note that you will need a recent "cvs" binary installed if you wish to include directories that do not have CVS/ directories in their entire path (e.g., dists/local/main or similar).
UseBinaryDist: boolean
Causes fink to try to download pre-compiled binary packages from the binary distribution if available and if the binary package is not already on the system. This can save a lot of installation time and it is therefore recommended to set this option. Passing fink the --use-binary-dist option (or the -b flag) has the same effect, but only operates on that single fink invocation. Passing fink the --no-use-binary-dist flag overrides this, and compiles from source for that single fink invocation. Only available as of fink version 0.23.0.
Note that this mode instructs fink to download an available binary if that version is the latest available version of the package; it does not cause fink to choose a version based on its binary availability.
从网上获取软件可能会是一个冗长的过程。经常下载的速度不会象我们所希望的那样快。镜像服务器会从其它服务器中拷贝文件,但可能它会有一个更快的网络连接,或者它在地理上离你更近,这样从它上面下载会更快些。同时它们也可以分担主服务器的负担,其中一个例子是ftp.gnu.org,在一个访问不到的时候,它会提供另一个替代的服务器。
为了让 Fink 能够使用最合适你的镜像服务器,你要告诉它你居住在哪个洲和哪个国家。如果不能从某个服务器下载,它会提示你是:重试相同的镜像站点,连接与你在相同国家或洲的另一个镜像服务器,还是世界上任意一个镜像服务器。
fink.conf 文件中保存着你希望使用哪些镜像服务器的信息。
MirrorContinent: 三个字母的代号
你应该使用 fink configure 命令来更改这些取值。三个字母的代号可以在 /opt/sw/lib/fink/mirror/_keys 文件中找到。 例如,如果你住在亚洲:
MirrorContinent: asi
MirrorCountry: 六个字母代号
你应该使用 fink configure 命令来更改这些取值。六个字母由三个字母的洲代号(见上面的描述),一个减号,以及两个字母的国家代号组成。你可以在 /opt/sw/lib/fink/mirror/_keys 文件中找到它们。 例如,如果你住在中国:
MirrorCountry: asi-CN
MirrorOrder: MasterFirst 或 MasterLast 或 MasterNever 或 ClosestFirst
Fink 支持 '主(master)镜像服务器',它镜像保存了 Fink 中有的所有软件包的源程序压缩档。使用主镜像服务器的好处是下载源程序的链接不会失效。用户可以选择使用这些由 Fink 团队维护的镜像服务器,或使用那些原始的源程序站点和外部的镜像服务器:例如 gnome,KDE 和 debian 的镜像网站。 另外,用户还可以选择结合两种设置,并按上文所说的办法以邻近的次序来进行搜索。如果使用 MasterFirst 或 MasterLast 选项,当某个服务器失效时,用户可以“跳转到”到主服务器(或非主服务器)组。选项包括:
MasterFirst - 优先搜索 "主" 镜像服务器。 MasterLast - 最后搜索 "主" 镜像服务器。 MasterNever - 不搜索 "主" 镜像服务器。 ClosestFirst - 优先搜索最近的镜像服务器(把所有镜像服务器合在一组)。
Mirror-rsync:
(fink-0.25.2 and later) When doing fink selfupdate with the SelfupdateMethod set to rsync, this is the rsync url to sync from. This should be an anonymous rsync url, pointing to a directory which contains all the fink Dis- trubutions and Trees.
在 fink.conf 中一些选项只是对开发人员有用。我们不推荐 Fink 用户修改它们。下面的一些选项属于这一类。
KeepRootDir: 布尔值
使得 fink 不会在构建好一个软件包以后删除 root-[name]-[version]-[revision] 目录会在 BuildPath。默认值是 False。注意,使用这个选项可以很快塞满你的硬盘! 传递 -K 标志给 fink 可以起到相同的效果,但只对单次的 fink 调用起作用。
KeepBuildDir: boolean
使得 Fink 不会在构建好一个软件包以后删除 [name]-[version]-[revision] 目录会在 BuildPath。默认值是 False。注意,使用这个选项可以很快塞满你的硬盘! 传递 -K 标志给 fink 可以起到相同的效果,但只对单次的 fink 调用起作用。
There are some other options which may be useful, but require some knowledge to get right.
MatchPackageRegEx:
Causes fink not to ask which package to install if one (and only one) of the choices matches the perl Regular Expression given here. Example:
MatchPackageRegEx: (.*-ssl$|^xfree86$|^xfree86-shlibs$)
will match packages ending in '-ssl', and will match 'xfree86' and 'xfree86-shlibs' exactly.
CCacheDir: path
If the Fink package ccache-default is installed, the cache files it makes while building Fink packages will be placed here. Defaults to /opt/sw/var/ccache. If set to none, fink will not set the CCACHE_DIR environment variable and ccache will use $HOME/.ccache, potentially putting root-owned files into your home directory. Only available in fink newer than version 0.21.0.
NotifyPlugin: plugin
Specify a notification plugin to tell you when packages have been installed/uninstalled. Defaults to Growl (requires Mac::Growl to operate). Other plugins can be found in the /opt/sw/lib/perl5/Fink/Notify directory.
AutoScanpackages: boolean
When fink builds new packages, apt-get does not immediately know about them. Historically, the command fink scanpackages had to be run for apt-get to notice the new packages, but now this happens auto matically. If this option is present and false, then fink scanpackages will no longer be run automatically after packages are built. Defaults to true.
ScanRestrictivePackages: boolean
When scanning the packages for apt-get, fink normally scans all packages in the current trees. However, if the resuting apt repository will be made publically available, the administrator may be legally obligated not to include packages with Restrictive or Commercial licenses. If this option is present and false, then Fink will omit those packages when scanning.
Starting with fink 0.21.0, fink actively manages the file /opt/sw/etc/apt/sources.list which is used by apt to locate binary files for installation. The default sources.list file looks something like this, adjusted to match your Distribution and Trees:
# 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.
With this default file, apt-get first looks in your local installation for already-compiled binaries, and then looks in the official binary distribution. You can alter this by making entries at the beginning of the file (which will be searched first) or at the end of the file (which will be searched last).
If you change your Trees line or the Distribution you are using, fink will automatically modify the "default" portion of the file to correspond to the new values. Fink will, however, preserve any local modifications you have made to the file, provided that you confine your modifications to the top of the file (above the first default line) and the bottom of the file (below the last default line).
Note: If you had modified /opt/sw/etc/apt/sources.list prior to upgrading to fink 0.21.0, you will find your former file stored at /opt/sw/etc/apt/sources.list.finkbak .
fink 工具使用几个后缀命令来处理源程序发行包。其中的一些需要至少有一个软件包名称,但同时可以处理多个软件包。你可以简单地应用软件包的名称(例如, gimp),或包括版本号的全名(例如 gimp-1.2.1) 或包含版本号和修订版号的名称 (例如 gimp-1.2.1-3)。在没有指明版本的情况下,Fink 会自动选择最新的版本。其它还具有不同的选项。
下面是 fink 工具的命令清单:
There are some options, which apply to all fink commands. If you type fink --help you get the list of options:
(as of fink-0.26.0)
-h, --help - displays help text.
-q, --quiet - causes fink to be less verbose, opposite of --verbose. Overrides the Verbose flag in fink.conf.
-V, --version - display version information.
-v, --verbose - causes fink to be more verbose, opposite of --quiet. Overrides the Verbose field in fink.conf.
-y, --yes - assume default answer for all interactive questions.
-K, --keep-root-dir - Causes fink not to delete the root-[name]-[version]-[revision] directory in the Buildpath after building a package. Corresponds to the KeepRootDir field in fink.conf.
-k, --keep-build-dir - Causes fink not to delete the [name]-[version]-[revision] directory in the Buildpath after building a package. Corresponds to the KeepBuildDir field in fink.conf.
-b, --use-binary-dist - download pre-compiled packages from the binary distribution if available (e.g. to reduce compile time or disk usage). Note that this mode instructs fink to download the version it wants if that version is available for download; it does not cause fink to choose a version based on its binary availability. Corresponds to the UseBinaryDist flag in fink.conf.
--no-use-binary-dist - Don't use pre-compiled binary packages from the binary distribution, opposite of the --use-binary-dist flag. This is the default unless overridden by setting UseBinaryDist: true in the fink.conf configuration file.
--build-as-nobody - Drop to a non-root user when performing the unpack, patch, compile, and install phases. Note that packages built with this option may be non-functional. You should use this mode for package development and debugging only.
-m, --maintainer - (fink-0.25 and later) Perform actions useful to package maintainers: run validation on the .info file before building and on the .deb after building a package; turn certain build-time warnings into fatal errors; (fink-0.26 and later) run the test suites as specified in the field. This sets --tests and --validate to on.
--tests[=on|off|warn] - (fink-0.26.0 and later) Causes InfoTest fields to be activated and test suites specified via TestScript to be executed (see the Fink Packaging Manual). If no argument is given to this option or if the argument is on then failures in test suites will be considered fatal errors during builds. If the argument is warn then failures will be treated as warnings.
--validate[=on|off|warn] - Causes packages to be validated during a build. If no argument is given to this option or if the argument is on then validation failures will be considered fatal errors during builds. If the argument is warn then failures will be treated as warnings.
-l, --log-output - Save a copy of the terminal output during each package building process. By default, the file is stored in /tmp/fink-build-log_[name]-[version]-[revision]_[date]-[time] but one can use the --logfile flag to specify an alternate filename.
--no-log-output - Don't save a copy of the output during package-building, opposite of the --log-output flag. This is the default.
--logfile=filename - Save package build logs to the file filename instead of the default file (see the --log-output flag, which is implicitly set by the --logfile flag). You can use percent-expansion codes to include specific package information automatically. A complete list of percent-expanions is available in the Fink Packaging Manual; some common percent-expansions are:
-t, --trees=expr - Consider only packages in trees matching expr. The format of expr is a comma-delimited list of tree specifica- tions. Trees listed in fink.conf are compared against expr. Only those which match at least one tree specification are considered by fink, in the order of the first specifications which they match. If no --trees option is used, all trees listed in fink.conf are included in order. A tree specification may contain a slash (/) character, in which case it requires an exact match with a tree. Otherwise, it matches against the first path-element of a tree. For example, --trees=unstable/main would match only the unstable/main tree, while --trees=unstable would match both unstable/main and unstable/crypto. There exist magic tree specifications which can be included in expr:
Exclusion of (or failure to include) these magic trees is currently only supported for operations which do not install or remove packages.
-T, --exclude-trees=expr Consider only packages in trees not matching expr. The syntax of expr is the same as for --trees, including the magic tree specifications. However, matching trees are here excluded rather than included. Note that trees matching both --trees and --exclude-trees are excluded.
Examples of --trees and --exclude-trees:
Install foo as if fink was using the stable tree, even if unstable is enabled in fink.conf.
Install the version of foo in Fink, not the locally modified version.
List the locally modified packages which are installed.
Most of these options are self-explanatory (see here for the definition of Buildpath). They can also be set in the Fink configuration file (fink.conf) if you want to set them permanently and not just for that invocation of fink.
install 命令用于安装软件包。它下载,配置,构建和安装你指名的软件包。它还会自动安装需要的依赖关系,但在此之前会要求你确认。例如:
fink install nedit Reading package info... Information about 131 packages read. The following additional package will be installed: lesstif Do you want to continue? [Y/n]
Use of the --use-binary-dist option with fink install can speed the build process for complicated packages by quite a lot.
install 命令的别名包括: update, enable, activate, use (这些别名多数是因为历史原因形成的)。
The remove command removes packages from the system by calling 'dpkg --remove'. The current default implementation has a flaw: it doesn't check dependencies itself but rather completely leaves that to the dpkg tool (usually this poses no problem, though).
The remove command only removes the actual package files, (excluding configuration files), but leaves the .deb compressed package file intact. This means that you can re-install the package later without going through the compile process again. If you need the disk space, you can remove the .deb from the /opt/sw/fink/dists tree.
These flags can be used with the fink remove command
-h,--help - Show the options which are available. -r,--recursive - Also remove packages that depend on the package(s) to be removed (i.e. overcome the above-mentioned flaw).
Aliases: disable, deactivate, unuse, delete.
The purge command purges packages from the system. This is the same as the remove command except that it removes configuration files as well.
This command takes the:
-h,--help -r,--recursive
options.
这个命令会更新所有已经安装的软件包到最新的版本。它不需要输入要更新的软件包清单,你只需要输入:
fink update-all
--use-binary-dist is also useful with this command.
这个命令产生一个可用的软件包,它的安装情况,最新版本和简单的描述。 如果你不使用其它参数的话,它会列出所有可用软件包。 你可以附上一个名称或 shell 模式,fink 会列出所有匹配的软件包。
第一列显示的安装状态的意义为:
未安装 i 已安装最新版本 (i) 已安装,但不是最新版本 p a virtual package provided by a package that is installed
The version column always lists the latest (highest) version known for the package, regardless of what version (if any) you have installed. To see all versions of a package available on your sys- tem, use the dumpinfo command.
fink list 命令可以使用下面这些标志:
-h,--help 显示可用的选项。 -t,--tab 按制表位输出清单,这对需要在脚本中使用输出很有用。 -i,--installed 只显示已安装的软件包。 -o,--outdated 只显示已过期的软件包。 -u,--uptodate 只显示没有过期的软件包。 -n,--notinstalled 只显示没有安装的软件包。 -s expr,--section=expr 只显示满足正则表达式的软件包。 -m expr,--maintainer=expr Show only packages with the maintainer matching the regular expression expr. -r expr,--tree=expr Show only packages in the trees matching the regular expression expr. -w=xyz,--width=xyz 设定你希望输出格式化为的宽度。xyz 可以为一个数字或者 auto。 auto 会根据终端的宽度来设置输出宽度。 默认值是 auto。
一些有用的例子:
fink list - 列出所有的软件包 fink list bash - 检查 bash 是否可用,以及它的版本 fink list --outdated - 列出过期的软件包 fink list --section=kde - 列出属于 kde 部分的软件包 fink list "gnome*" - 列出所有以 'gnome' 开头的软件包
在最后一个例子中,引号是必须的。因为这样才可以避免 shell 自己来匹配这个模式。
这个命令的作用几乎和 fink list 一样。最主要区别是 fink apropos 还会搜索软件包描述来寻找软件包。第二个区别是必需提供一个搜索字符串,而不是可选的。
fink apropos irc - 寻找在名称或描述中包含 'irc' 的软件包 fink apropos -s=kde irc - 同上,但只在 kde 部分寻找
你在这个命令中给出软件包的名称,命令会输出它的描述。 注意,目前只有一小部分软件包有描述信息。
别名: desc, description, info
List the (optional) plugins available to the fink program. Currently lists the notification mechanisms and the source-tarball checksum algorithms.
下载指定的软件包,但不安装它。这个命令下载压缩档,即使以前已经下载过。
The following flags can be used with the fetch command:
-h,--help Show the options which are available. -i,--ignore-restrictive Do not fetch packages that are "License: Restrictive". Useful for mirrors, because some restrictive packages do not allow source mirroring. -d,--dry-run Just display information about the file(s) that would be downloaded for the package(s) to be fetched; do not actually download anything. -r,--recursive Also fetch packages that are dependencies of the package(s) to be fetched.
下载 所有 软件包源程序文件。和 fetch 一样,它会下载即使已经下载过的压缩档。
These flags can be used with the fink fetch-all command:
-h,--help -i,--ignore-restrictive -d,--dry-run
下载 所有 缺失的软件包源程序文件。这个命令只下载系统中没有的文件。
These flags can be used with the fink fetch-missing command:
-h,--help -i,--ignore-restrictive -d,--dry-run
构建一个软件包,并不安装它。通常,缺少的源压缩档会自动被下载。这个命令的结果是产生一个可用于安装的 .deb 软件包文件,以后你可以使用 install 命令迅速地安装它。如果 .deb 文件已经存在,这个命令会什么都不干。注意,依赖关系会被安装,而不仅仅是构建。
构建一个软件包(和 build 命令类似),但忽略和覆盖现存的 .deb 文件。如果这个软件包已经安装,新创建的 .deb 文件也会通过 dpkg 安装到系统。对软件包开发过程很有用。
The --use-binary-dist option is applicable here.
和 install 相同,但会使用 dpkg 安装,即使它已经被安装。你可以用这个命令安装被意外删除的软件包文件或者改变了设置文件以后希望恢复回默认的设置。
重新运行 fink 的配置过程。 你可以改变镜像站点和代理服务器设置等。
New in fink-0.26.0: This command will also let you turn on the unstable trees if desired.
这个命令会自动更新到一个新的 Fink 版本。它检查 Fink 网站确定是否有新的版本。然后下载软件包描述并升级核心软件包,包括 fink 本身。这个命令可以升级标准的发布版本,但也可以设置你的 /opt/sw/fink/dists 目录树来使用直接 git 或 rsync 进行升级, if you select one of those options the first time this command is run。这意味着你可以访问所有软件包的最新修订版。
If the --use-binary-dist option is enabled, the list of available packages in the binary distribution is also updated.
Use this command to make fink selfupdate use rsync to update its package list.
This is the recommended way to update Fink when building from source.
Note: rsync updates only update the active trees (e.g. if unstable isn't turned on in fink.conf the list of unstable packages won't be updated.
Use this command to make fink selfupdate use Git access to update its package list.
Rsync updating is preferred, except for developers and those people who are behind firewalls that disallow rsync.
重建软件包缓存。通常你不应该手工运行这个命令,因为 fink 应该能够自动检测到什么时候需要更新。
这个命令会对 .info 和 .deb 文件进行一些检查。软件包维护人员在提交他们负责的软件包之前,应该运行这个命令来对它的描述和相应的构建好的软件包进行检查。
The following optional options may be used:
-h,--help - Show the options which are available. -p,--prefix - Simulate an alternate Fink basepath prefix (%p) within the files being validated. --pedantic, --no-pedantic - Control the display of nitpicky formatting warnings. --pedantic is the default.
别名: check
Updates the apt-get database of debs; defaults to updating all of the trees, but may be restricted to a set of one or more trees given as arguments.
Removes obsolete and temporary files. This can reclaim large amounts of disk space. One or more modes may be specified:
--debs - Delete .deb files (compiled binary package archives) corresponding to versions of packages that are neither described by a package description (.info) file in the currently-active trees nor presently installed. --sources,--srcs - Delete sources (tarballs, etc.) that are not used by any package description (.info) file in the currently- active trees. --buildlocks, --bl - Delete stale buildlock packages. --dpkg-status - Remove entries for packages that are not installed from the dpkg "status" database. --obsolete-packages - Attempt to uninstall all installed packges that are obsolete. (new in fink-0.26.0) --all - All of the above modes. (new in fink-0.26.0)
If no mode is specified, --debs --sources is the default action.
In addition, the following options may be used:
-k,--keep-src - Move old source files to /opt/sw/src/old/ instead of deleting them. -d,--dry-run - Print the names of the files that would be deleted, but do not actually delete them. -h,--help - Show the modes and options which are available.
Only available in fink newer than version 0.21.0
显示 fink 如何解析软件包的 .info 文件的各个部分。各个字段和百分号展开会按照下面选项的设置来显示:
-h, --help - 显示可用的选项。 -a, --all - 显示软件包描述文件的全部字段。 这时没有指定 --field 或 --percent 标志时的默认方式。 -f 字段名, - 按列出的顺序显示给定的字段名 --field=字段名 -p 关键字, - 按列出顺序显示指定的关键字的百分号扩展 --percent=关键字
Only available in fink-0.23-6 and later.
Displays a human-readable list of the compile-time (build) and run- time (installation) dependencies of the listed package(s).
Copyright (c) 2001 Christoph Pfisterer, Copyright (c) 2001-2020 The Fink Project. You may distribute this document in print for private purposes, provided the document and this copyright notice remain complete and unmodified. Any commercial reproduction and any online publication requires the explicit consent of the author.
Generated from $Fink: uguide.zh.xml,v 1.23 2023/08/04 4:49:23 nieder Exp $