LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2225|回复: 7

非官方Ebuilds安装指南[转、译]

[复制链接]
发表于 2005-6-3 23:40:14 | 显示全部楼层 |阅读模式
HOWTO Installing 3rd Party Ebuilds
怎样安装3rd Party Ebuilds

原文地址:http://gentoo-wiki.com/HOWTO_Installing_3rd_Party_Ebuilds

Introduction


这份教程将向你展示如何安装在3rd party找到的ebuilds,当前没有出现在portage tree的ebuilds。

1、设置延伸的Portage

你应该做的第一件事是设置一个PORTDI_OVERLAY目录,然后在你的/etc/make.conf文件里添加这样的一行:


  1. File: /etc/make.conf

  2. PORTDIR_OVERLAY="/usr/local/portage"

复制代码


这个指令将允许你以不会被emerge sync影响到的方式安装你自己定制的ebuilds。

你还可以这样安张多个:

  1. File: /etc/make.conf

  2. PORTDIR_OVERLAY=""
  3. PORTDIR_OVERLAY="${PORTDIR_OVERLAY} /usr/local/portage-bmg-main"
  4. PORTDIR_OVERLAY="${PORTDIR_OVERLAY} /usr/local/portage-bmg-gnome"
  5. PORTDIR_OVERLAY="${PORTDIR_OVERLAY} /usr/local/portage-gentoo-de"
  6. PORTDIR_OVERLAY="${PORTDIR_OVERLAY} /usr/local/portage-fluidportage"
复制代码


当中的每一个PORTDIR_OVERLAY入口指向gensync(app-portage/gentoolkit-dev)需要的rsync树的根。

每一个入口写一行是因为这样可以容易的为任一source of overlays添加注释,你也可以把所有的入口写在一行上,用space隔开每一个。


  1. File: /etc/make.conf

  2. PORTDIR_OVERLAY="/usr/local/portage-bmg-main /usr/local/portage-bmg-gnome"
复制代码



2、 放置Ebuilds

首先检查/usr/local/portage是否存在,如果不存在这样创建它:

  1. mkdir -p /usr/local/portage
复制代码


然后在/usr/local/portage里放置ebuild,放置的时候你必须保持和/usr/portage里类似的结构(category/program/program.ebuild 比如:sys-kernel/love-sources/***.ebuld)。
category(类别)必须和/usr/portage/profiles/categories中的一行匹配。


3、“消化”(Digesting) ebuild

一旦你放好了你的ebuild,极有可能你需要digest这个文件。Digesting下载相关文件(?)和执行md5检查。运行类似下面的命令:

  1. ebuild /usr/local/portage/category/program/program.ebuild digest
复制代码


4、使用新的ebuild安装


你准备安装的这个包可能被keyword mask,所以你需要使用在'man portage'里unmask keyword的方法。

如果/etc/portage目录不存在,创建它。然后执行下面的命令,替换'<category>'为你新的ebuild所属的类别,(比如app-portage), '<package>' 替换为安装的包名(比如:gentoolkit)。


  1. echo "<category>/<package> ~x86" >>/etc/portage/package.keywords
复制代码


或者你想指定包'<package>'的特定version'<version>'(比如:0.1.2-r3)。


  1. echo "=<category>/<package>-<version> ~x86" >>/etc/portage/package.keywords
复制代码


5、如果你喜欢危险的活着

现在这个包应该看起来像其他的emerge了。

  1. emerge -p package
复制代码


记住,那个包可以在它要求的任何地方放置文件,这可能会损坏你的系统!


6、ebuild:较为安全的



ebuild是低阶的工具,允许你一次一步的执行安装进程。这较为安全是因为允许你在永久的改变前看到文件都将放到哪里。

  1. ebuild /usr/local/portage/category/program/program-version.ebuild unpack
  2. ebuild /usr/local/portage/category/program/program-version.ebuild compile
  3. ebuild /usr/local/portage/category/program/program-version.ebuild install
复制代码


这三步操作完全在 /var/tmp/portage/program/ 下工作,这样就不会搞乱你的系统了。portage环境变量存放在称为build-info/ 和temp/ 的子目录里,编译器输出到work/ 目录。install操作创建另一个称为image/ 的子目录,在这里执行“预安装”,现在到image/目录看看有些什么文件将放到那里。确保其不会覆盖你重要的东西后,执行:

  1. ebuild /usr/local/portage/category/program/program-version.ebuild qmerge
复制代码


完成安装文件到你生活的系统中。你可能还需要使用 ebuild的 postinst 或者 clean 功能,他们也在ebuild的man 页里描述。
发表于 2005-6-5 20:15:30 | 显示全部楼层
顶一下做个记号
回复 支持 反对

使用道具 举报

发表于 2005-6-5 20:32:05 | 显示全部楼层
不错,不错。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-6-5 20:42:40 | 显示全部楼层
发上来快两天了,终于有人回贴了。
谢谢啊!
回复 支持 反对

使用道具 举报

发表于 2005-6-5 23:51:02 | 显示全部楼层
鼓励一下!
回复 支持 反对

使用道具 举报

发表于 2005-6-6 03:24:31 | 显示全部楼层
有过类似的文贴了, 也加精过, 但翻译不错, 给予鼓励....决定加精并入技术置顶区内!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-6-7 23:05:35 | 显示全部楼层
多谢鼓励!
现在我想钻研以下Gentoo的Portage系统,争取更多的了解Linux系统,还要向先知们多学习。
回复 支持 反对

使用道具 举报

发表于 2005-6-9 10:26:18 | 显示全部楼层
路过
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表