FreeBSD send-pr

(摸索中,如果文件有問題,請告訴我一下,感謝 :D)

ports 工具

  1. 安裝 porttools 以及 genplist:

    # cd /usr/ports/ports-mgmt/genplist; make install clean
    # cd /usr/ports/ports-mgmt/porttools; make install clean
    
  2. 建立自己的 .porttools,放入以下內容:

    # FreeBSD Port Tools configuration file – see porttools(5)
    # vim: ft=sh
    EMAIL="請換成您的 email"
    FULLNAME="請換成您的名稱"
    ORGANIZATION="FreeBSD @ Taiwan"
    BUILDROOT="/tmp"
    ARCHIVE_DIR=""
    DIFF_MODE=".orig" # 設定成 .orig,在更新 ports 檔案時,就先把原 ports 檔案複製一份到 <PORTS_NAME>.orig
    DIFF_VIEWER="more"
    PORTLINT_FLAGS="abct"
    

更新既有 ports

  1. 複製原本的 ports,以 www/node 為例:

    # cp -rpf /usr/ports/www/node /usr/ports/www/node.orig
    
  2. 進到 usr/ports/www/node 去修改檔案:

    # cd /usr/ports/www/node # 再手動調整檔案
    
  3. 更新 makesum (如果是版本更新,或是建立新 ports):

    # make makesum
    
  4. 產生新的 pkg-plist:

    # genplist create /tmp/ports
    # genplist diff
    # (查看 pkg-plist.new 並作調整)
    # genplist commit
    # genplist test
    # genplist clean
    
  5. 查看變更:

    # port diff # 因為有設定 .porttools 的 DIFF_MODE=".orig",所以會自動比對 www/node 以及 www/node.orig
    
  6. 測試 ports:

    # port test
    
  7. 送出 PR:

    # port submit
    

建立新 ports

  1. 選一個接近的 ports 來改:

    # cd /usr/ports/OOO
    # cp -rpf xx oo
    # cd oo # 開始修改
    
  2. 執行「更新 ports」的 3, 4, 6, 7 步驟。

參考資料

  1. 爽大文章:http://blog.dragon2.net/2009/12/17/912.php
  2. Joe Horn 大大步驟:http://paste.plurk.com/show/272888/

內容目錄

上一個主題

FreeBSD chroot

下一個主題

修復 pkg_info currupted 問題

本頁