最新 追記

meta's blog - The Power To Serve

筆者について

FreeBSDを通じてOSSにささかな貢献を。

OSS活動をご支援いただける方を募集しています


2011-04-16 ports あれこれ

ports の配布ファイルダウンロードを速くする

タイムアウトを指定する

ports からソフトウェアをインストールしていると、ミラーサイトに応答しないものが含まれていて、時間がかかることがあります。 応答のないミラーをさっさと諦めて、次のミラーからのダウンロードを試みるようにするには HTTP_TIMEOUT, FTP_TIMEOUT 環境変数を使用します。

# make HTTP_TIMEOUT=5 FTP_TIMEOUT=5 install

とすると、HTTP/FTPコネクションを確立するまでのタイムアウトが5秒に設定され、5秒待ってもサーバから応答がない場合には次のミラーからのダウンロードを試みます。 これらの変数は fetch コマンドが参照し利用します。タイムアウトはコネクションを確立するまでの時間なので、ファイルサイズが大きくダウンロードに時間がかかるといった場合には影響しません。

国内ミラーを指定する

よく使われるソフトウェアは国内のFreeBSDミラーサイトからもダウンロードできる場合があります。 /etc/make.conf に以下のように書いておくと、最初に国内ミラーからのダウンロードを試みるようになります。

MASTER_SITE_OVERRIDE?=ftp://pub.allbsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/

ここで指定した allbsd.orgとは東京理科大学内に設置されているBSD系OSのミラーで、portsnap や cvsup のミラーも提供されています。

本日のツッコミ(全1件) [ツッコミを入れる]

Σ Noppi [これは知りませんでした。便利ですなー。]


2011-04-23 不要な npviewer.bin を殺す

ゾンビとなった npviewer.bin を掃除する

FreeBSD で Flash を動かしていると、npviewer.bin プロセスが大量に発生します。

後藤大地さんの記事でこれを掃除するための npviewermonitor というスクリプトが公開されていますが、ここでは別の方法をとります。

npviewer.bin は Firefox から fork して生成されますが、親プロセスである firefox が死んだ後も残ってしまいます。残った npviewer.bin は flashplugin としての役目を果たすことができません。親プロセスが死んだ子プロセスは init に引き取られるため、PPID が 1 であるものを掃除します。

kill $(procstat $(pgrep npviewer.bin) | awk '$2 == 1 { print $1 }')

これを cron で適当な間隔で実行すればよいでしょう。


2011-04-25 New Maintainer

net/xrdp のメンテナになりました

net/xrdp はメンテナ不在で、MAINTAINER が ports@freebsd.org になっていたのでメンテナに立候補したところ、無事にメンテナ権限を与えられました

ports メンテナは直接リポジトリにコミットできる権限を持つわけではないので、今までと出来ることが大きく変わるわけではありませんがメンテナからの更新は通りやすくなるようです。

net/xrdp アップデート (0.6.0.20110117cvs)

先のPRがコミットされないままですが、net/xrdpをアップデートしました。

JP106 キーボード用のキーマップのインストール方法に問題があり、バイナリパッケージを作成すると JP106 キーボードではうまく動作しない状態でした。 このあたりで指摘されてました。ports としてもう少し行儀のよいインストール方法に変更してみたつもりです。

ports tree にコミットされる前に試してみたいという方はこちらからどうぞ。

この修正にあたり、松元さんのFreeBSD ports collection 作成者向けのメモを参考にさせていただきました。

本日のツッコミ(全3件) [ツッコミを入れる]

Σ belldandy [FreeBSD 9-ReleaseをM9686J/A Mac mini G4 1.25GHzにインストールして使って..]

Σ meta [日本語配列以外を使用しないのでしたら、日本語以外のキーマップファイルを削除してしまうという方法があります。 /usr..]

Σ belldandy [日本語のキーマップファイルのみを残したところ、xrdpのログイン画面でキーボードからの文字入力ができなくなりました。]


2011-04-27 Commited!

net/xrdp 日本語キーボード対応パッチがコミットされました

ports/155509 がコミットされました。

# portsnap fetch update

で ports tree を更新したのち、make install をすれば使用できます。

bapt        2011-04-27 09:29:03 UTC

 FreeBSD ports repository

 Modified files:
   net/xrdp             Makefile distinfo pkg-plist
   net/xrdp/files       patch-common__os_calls.c pkg-message.in
 Removed files:
   net/xrdp/files       patch-common__trans.c
 Log:
 - update to 0.6.0.20110117 cvs snapshot
 - support for for Japanese JP106 keyboard
 - add license
 - Add runtime dependency on Xvnc

 PR:             ports/155509
 Submitted by:   "Iwao, Koichiro" <meta _at_ club.kyutech.ac.jp> (maintainer)

 Revision  Changes    Path
 1.13      +31 -7     ports/net/xrdp/Makefile
 1.6       +12 -2     ports/net/xrdp/distinfo
 1.2       +3 -3      ports/net/xrdp/files/patch-common__os_calls.c
 1.2       +0 -34     ports/net/xrdp/files/patch-common__trans.c (dead)
 1.5       +1 -1      ports/net/xrdp/files/pkg-message.in
 1.5       +5 -5      ports/net/xrdp/pkg-plist

直近で予定している更新は、インストール後に rsakey.ini の生成を行うようにすることです。現在の port では RDP 暗号化に同梱の鍵ペアを使用しますが、 公式のドキュメントでは、鍵ペアを作り直すことが推奨されています。このため OpenSSH などのようにインストール時や初回起動時に自動的に新しい鍵ペアを生成するよう変更を行います。

※ 追記: 初出の版の Makefile に typo がありました。現在は修正されています