你比較會遇到的幾個問題:一個是 PGP、一個是如何打包 debian package,這邊假設你都會了。(PGP 可以去 Jedi 那邊找介紹文)
以下,就開始。你必須要先有 PGP key,然後到 launchpad 註冊,成為會員。
照這篇:Personal Package Archives來做,我整理重點如下:
- 到profile頁,把 ppa 打開。
- 填 OpenPGP public key。
- Sign conduct:其實就下載文字檔,然後打指令,用gpg sign過(文章裡有指令),產生 .asc 檔案,再把檔案內容貼上去,送出即可。
上傳可參考這篇:Uploading a package to a PPA,package 有些要注意的事項,例如 changelog,在上面那一篇有說明,就是一般 debian changelog 裡是寫 unstable、experiment,在這裡要改為 lucid、hardy 等。
大致摘要如下:
- 準備好你要上傳的 package,用 dpkg-buildpage -S -k<your_gpg_private_key>,做出 source package。
- 到上一層目錄,找到 P_V-0_source.changes (P 表示你的 project name,V 表示版本)
- 上傳:輸入 dput ppa:your_ip-id/ppa P_V-0_source.changes
- 上傳順利的話,接下來就等回信了~
dput 預設是用 ftp 上傳,如果不行,可以試試 sftp:
- 到 profile 填 ssh key
- 新增 ~/.dput.cf ,裏面放:
[my-ppa-lucid]
,your_launchpad_id、ppa_name、ubuntu_code_name 不要忘了替換掉,ubuntu_code_name 就看你裝的 ubuntu 版本,填 lucid、hardy...等等的
fqdn = ppa.launchpad.net
method = sftp
incoming = ~<your_launchpad_id>/<ppa_name>/ubuntu/<ubuntu_code_name>
login = <your_launchpad_id>
allow_unsigned_uploads = 0 - 上傳指令改用 dput my-ppa-lucid P_V-0_source.changes
回信不會那麼快,要稍微等一下,如果有問題,裏面會有錯誤訊息,不知道怎麼辦的話,很簡單,到 Questions for Soyuz 找答案。
最後成功的話,會有回信說 Accept,這時候再到你的 ppa 頁面,就會看到 package 了,不過這時候還在 building,需要等一陣子。
到這裡,應該就大功告成了。之後就可以很方便的用 add-apt-repository 來把自己 ppa 加進去,然後安裝、升級 package 啦~
沒有留言:
張貼留言