zeissoctopus 发表于 2011-10-26 20:45

試用 pkgng

本帖最后由 zeissoctopus 于 2011-10-26 20:50 编辑

有關 pkgng 背景請參考 http://bbs.chinaunix.net/thread-3610367-1-1.html

我也是第一次接觸 pkgng, 我在運作中 FreeBSD 9.0-RC1 卓面環境來安裝 pkgng

在 https://github.com/pkgng/pkgng 安裝 pkgng
1. 安裝 /usr/ports/devel/git 才有 git 工具cd /usr/ports/devel/git
su root
make install2. 建立一個臨時目錄來放置源碼mkdir news_src3. 抓取 pkgng 在 github.com 的源碼cd news_src
git clone https://github.com/pkgng/pkgng4. 源碼便放置在 ~/news_src/pkgng 目錄中
5. 編譯 pkgngcd ~/news_src/pkgng
make6. 如果編譯正常的話 可以安裝它了cd ~/news_src/pkgng
su root
make install以上命令會把 pkgng 安裝入 base. 以下是它的 install.log===> libpkg (install)
install -C -o root -g wheel -m 444   libpkg.a /usr/lib
install-o root -g wheel -m 444   libpkg.so.0 /usr/lib
ln -fs libpkg.so.0 /usr/lib/libpkg.so
install -C -o root -g wheel -m 444pkg.h /usr/include
===> pkg (install)
install-o root -g wheel -m 555   pkg /usr/sbin
install -o root -g wheel -m 444 pkg.1.gz/usr/share/man/man1
install -o root -g wheel -m 444 pkg-add.1.gz/usr/share/man/man1
install -o root -g wheel -m 444 pkg-autoremove.1.gz/usr/share/man/man1
install -o root -g wheel -m 444 pkg-backup.1.gz/usr/share/man/man1
install -o root -g wheel -m 444 pkg-create.1.gz/usr/share/man/man1
install -o root -g wheel -m 444 pkg-delete.1.gz/usr/share/man/man1
install -o root -g wheel -m 444 pkg-info.1.gz/usr/share/man/man1
install -o root -g wheel -m 444 pkg-install.1.gz/usr/share/man/man1
install -o root -g wheel -m 444 pkg-query.1.gz/usr/share/man/man1
install -o root -g wheel -m 444 pkg-register.1.gz/usr/share/man/man1
install -o root -g wheel -m 444 pkg-repo.1.gz/usr/share/man/man1
install -o root -g wheel -m 444 pkg-search.1.gz/usr/share/man/man1
install -o root -g wheel -m 444 pkg-update.1.gz/usr/share/man/man1
install -o root -g wheel -m 444 pkg-upgrade.1.gz/usr/share/man/man1
install -o root -g wheel -m 444 pkg-version.1.gz/usr/share/man/man1
install -o root -g wheel -m 444 pkg-which.1.gz/usr/share/man/man1
install -o root -g wheel -m 444 pkg.conf.5.gz/usr/share/man/man5
===> pkg2legacy (install)
install-o root -g wheel -m 555   pkg2legacy /usr/sbin
7. 安裝完可以make clean
8. 立即把已安裝好的 ports 注冊入 pkgng 資料庫,換另一種說法,把 ports/pkg 安裝記錄與 pkgng 資料庫同步(僅首次安裝時執行一次)cd ~/news_src/pkgng/ports
su root
sh pkg2ng以下是我執行 pkg2ng 的畫面記錄(節錄)zeissoctopus-fb9# sh pkg2ng
Registering ImageMagick-6.7.3.1... done.
Registering ORBit2-2.14.19... done.
Registering aalib-1.4.r5_6... done.
...
...
Registering zh-scim-tables-0.5.10... done.
Registering zip-3.0... done.
9. 拷貝 bsd.pkgng.mk 至 /usr/ports/Mk 目錄cd ~/news_src/pkgng/ports
su root
cp bsd.pkgng.mk /usr/ports/Mk10. 執行以下命令修改 /usr/ports/Mk/bsd.ports.mk 加下 pkgng 支援cd /usr/ports/Mk
su root
sed -i'' -e '/.if.*USE_LOCAL_MK.*$/{G;s/\(.if.*USE_LOCAL_MK)\)\(\n\)/.include "${PORTSDIR}\/Mk\/bsd.pkgng.mk"\2\1/;}' /usr/ports/Mk/bsd.port.mkpkgng 基本安裝已完成

fender0107401 发表于 2011-10-26 20:49

Good! :mrgreen:

dooros 发表于 2011-10-26 22:39

这个东西没有预装进freebsd 9?

jvvt 发表于 2011-10-26 23:26

portmaster,portmanager都没进基本系统,这个也不大可能进基本系统。

zeissoctopus 发表于 2011-10-27 10:03

这个东西没有预装进freebsd 9?
dooros 发表于 2011-10-26 22:39 http://bbs.chinaunix.net/images/common/back.gif

RELENG_9 還未納入 pkgng,應該不會納入 9.0-RELEASE

x-fish 发表于 2011-10-27 10:03

如果进驻的话,那现在的pkg_*将被取代。

zeissoctopus 发表于 2011-10-27 10:09

portmaster,portmanager都没进基本系统,这个也不大可能进基本系统。
jvvt 发表于 2011-10-26 23:26 http://bbs.chinaunix.net/images/common/back.gif

我的看法相反, pkgng 是用來取代 pkg_install,故此當 pkgng 完成,便會納入 base。

fender0107401 发表于 2011-10-27 10:37

将来应该会进去,这个应该是新的binary的管理机制。

芭比小柒 发表于 2011-10-27 12:31

有个比较纠结的是这个东西依赖sqlite

jvvt 发表于 2011-10-27 13:31

FreeBSD不同于Linux,一款新出现的软件,除非是为了替换原来的GNU版本的类似功能的软件,否则不太可能这么快就进入base system。
页: [1] 2
查看完整版本: 試用 pkgng