[FreeBSD] send-pr porter committer 需要注意事項

logo-red (by appleboy46) 來紀錄一下最近使用 send-pr 的心得,send-pr 就是提交問題 problem report (PR) 到 FreeBSD Support 中心,您也可以透過 send-pr 發送新的 ports 給 FreeBSD 中心,最近 CodeIgniter V1.7.2 的 Release,所以把 CI 的 patch 送給中心並且 CC 給 maintainer,/usr/bin/send-pr 這支 shell script 在 FreeBSD 用處可多了,不單只是 ports 的問題,也有 www, i386, ia64 的問題,都可以透過它回報給總部喔。 要瞭解 ports 怎麼產生,或者是怎麼製作 patch 都可以參考 FreeBSD Porter’s Handbook,文件是英文的,請大家多多包含,不過還是有中文的文件,通常 patch 是還蠻簡單的,底下紀錄我做的步驟,以及如何測試 ports 正確性。其實步驟不難啦。

[Read More]

[FreeBSD] 利用 portmaster 升級 PHP 5.26 -> 5.28

之前在 大神 那邊看到一篇 升級 PHP 5.2.8 的一些小細節,就來把我的機器升級一下,發現 php 5.2.7 之後已經把 pcre extension 納入在裡面,參考 /usr/ports/UPDATING 裡面的  20081211 這個項目,可以利用 portupgrade 或者是 portmaster 來升級,之前都是利用 ruby 寫的 portupgrade 來升級系統或者是更新安全性,現在利用 portmaster 這一套也是不錯用,portmaster 是用 sh 寫出來的,在 gslin 大神這一篇:portupgrade、portmaster、portconf 說到速度方面比 portupgrade 還要好,這我沒有實際測試過,自己在實際用了一下,還蠻方便的。 安裝 portmasterportconf 搭配:

cd /usr/ports/ports-mgmt/portconf
make install clean
cd /usr/ports/ports-mgmt/portmaster
make install clean
[Read More]

[FreeBSD筆記] 快速搜尋 ports 軟體 psearch

FreeBSD 內建的搜尋 ports 指令搜尋速度有點慢,加上搜尋出來還蠻難找的,所以推薦一個搜尋 ports 軟體:psearch,支援 regular expression 安裝方式:

#
# ports 安裝
#
cd /usr/ports/ports-mgmt/psearch
make install clean
rehash;
使用方法:
options:
  -V, --version        顯示版本資訊
  -h, --help           顯示 help 資訊
  -c CATEGORY, --category=CATEGORY
                       快速搜尋方式,可以指定資料夾,例如:www,chinese
  -f FILE, --file=FILE 指定 INDEX 的檔案 Default: "/usr/ports/INDEX-7"
  -l, --long           顯示詳細的 ports 資訊介紹
  -m, --maintainer     取代 ports 的簡短訊息,顯示維護者資訊
                       也可以搜尋 ports 的維護者所有維護的 ports
  -n, --name           顯示標準的訊息,基本的版本訊息
  -o, --or             搜尋任何符合 PATTERN 的 ports 資訊
  -s, --search_long    顯示 ports 詳細的資訊,速度較慢
  -v INVERSE_PATTERN, --inverse=INVERSE_PATTERN
                       反向搜尋 ports 名稱
[Read More]

[FreeBSD] Ports 更新 index 或 更新kernel

1. cd /usr/ports && make fetchindex
2. portsdb -uU
3. rm -f /var/db/pkg/pkgdb.db
4. pkgdb -Fu
5. cd /usr/src ; make buildworld; make kernel; make installworld; reboot
— 這招很好用 上面步驟如果只需要更新ports tree 只需要 cd /usr/ports && make fetchindex 就可以了