<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>不定期な記録 &#187; NetBSD</title>
	<atom:link href="http://borg4.vdomains.jp/~goro/diary/category/netbsd/feed" rel="self" type="application/rss+xml" />
	<link>http://borg4.vdomains.jp/~goro/diary</link>
	<description>WordPress 3.3.1 ja</description>
	<lastBuildDate>Tue, 17 Jan 2012 22:06:36 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Postfix + Dovecot + ClamAV + SpamAssassin + Mailman + Roundcube = Lion Server Mail?</title>
		<link>http://borg4.vdomains.jp/~goro/diary/2011/1269</link>
		<comments>http://borg4.vdomains.jp/~goro/diary/2011/1269#comments</comments>
		<pubDate>Sun, 07 Aug 2011 21:47:05 +0000</pubDate>
		<dc:creator>ごろ～</dc:creator>
				<category><![CDATA[Mac]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[Lion Server]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://borg4.vdomains.jp/~goro/diary/?p=1269</guid>
		<description><![CDATA[NetBSD では確か Maildir 形式の imapd が使いたいって理由で Courier-imap を IMAP サーバーとして使っていたのですが、 Lion Server ではデフォルトが Dovecot だと...]]></description>
			<content:encoded><![CDATA[<p>NetBSD では確か Maildir 形式の imapd が使いたいって理由で Courier-imap を IMAP サーバーとして使っていたのですが、 Lion Server ではデフォルトが Dovecot だとゆーのでそれに移行することにしました。で、 Lion Server では Dovecot に併せて Postfix, ClamAV, SpamAssassin ぐらいまではほぼ全自動で有効化されるので、それらも併せて使うことにしたのです。</p>
<p>ちなみに NetBSD では</p>
<ol>
<li>プロバイダに配送されたメールを fetchmail で取得</li>
<li>受けたメールは procmail が bogofilter に喰わせて、SPAM じゃなければ ~/Maildir に、 SPAMだったら ~/Maildir/.bogofilter に配送</li>
<li>特定の条件にマッチしたら PHS に転送</li>
<li>~/Maildir は IMAP 経由で参照</li>
</ol>
<p>といったようなことをやっているので、これと同じことを Lion Server でもやるのです。</p>
<div><span id="more-1269"></span></div>
<p>Server Admin.app からメールサービスを選択して、メールペインの「メールサービスを構成」を押すとあれよあれよとそれなりにセキュアなメールサーバーの設定が出来上がります。んで、設定に満足したら  Server.app でメールサーバを「入」にすると目出度くメールサーバーが動き出す、という流れ。 Server Admin.app がやってることは  /etc/dovecot や /etc/postfix やらの設定ファイルをゴリゴリ書いてるだけっぽいので、分かってる人には不要っだよねってことで Lion Server には Server Admin.app が最初っから入ってないのかもしれない。…だったら Server Admin.app は最初っからいれて、ヘルプに  Server Admin.app がやってることを記載すべきだよなぁ。</p>
<p>NetBSD の Courier-imap から Lion Server の Dovecot の既存メール移行は、どーせ俺一人分だしってことで imapsync を使いました。 pkgsrc であれば mail/imapsync ですね。</p>
<blockquote>
<pre>imapsync \
--host1 oldhost --user1 goro --passfile1 ./pass1.txt --authmech1 PLAIN \
--host2 newhost --user2 goro --passfile2 ./pass2.txt --authmech2 CRAM-MD5 \
--sep2 / --prefix2 INBOX/</pre>
</blockquote>
<p>しかしどーやら Drobo S さんが大量のファイル読み書きでストールしちゃうらしく、上記コマンドを何度か繰り返して移行することになってしまいました。</p>
<p>ということで Dovecot でメール取得の準備は出来たので次は procmail でのプロバイダからのメール取得と振り分け。で、 NetBSD では procmail で直接 Maildir にメールを配送していたのですが、 Lion Server 上で動く Dovecot の Maildir は一般ユーザー権限では読み書きできない奥深くに置かれているので同じようにやるのは無理そう、と思って調べたらちゃんと Dovecot のドキュメントに <a href="http://wiki2.dovecot.org/procmail">procmail でのやり方</a>が書いてありました。 Maildir がユーザー権限で読み書きできないから、じゃなくって Dovecot 経由でメールをコピーしないと index を更新しないから、って理由でしたが、とにかくこんな感じ。</p>
<blockquote>
<pre># file: /etc/procmailrc
# system-wide settings for procmail
SHELL="/bin/bash"
SENDMAIL="/usr/sbin/sendmail -oi -t"
LOGFILE="/var/log/procmail.log"
DELIVER="/usr/lib/dovecot/deliver"
:0 w
| $DELIVER -d $LOGNAME</pre>
</blockquote>
<p>なんだけど、まず、ここに記載してある /usr/lib/dovecot/deliver は Lion Server では /usr/libexec/dovecot/dovecot-lda になったようです。で、 Lion Server に特化した変更点かどーかは知らないんだけど、一般ユーザーからは実行できないという作りになっていたのでした。<br />
じゃあどうする!? と 10 秒ほど悩んだのですが、折角固定 IP を持っているし、 Lion Server の Dovecot は sieve での振り分けまで可能なのでプロバイダから無条件転送をして、 Lion Server 側で振り分けて転送しちゃえばいいや、ということに落ち着いたのです。</p>
<p>まとめると最終的な移行手順はこんなになりました。</p>
<ol>
<li>NetBSD での fetchmail 停止(fetchmail &#8211;quit)</li>
<li>imapsync によるメールコピー</li>
<li>Lion Server で sieve による転送設定<span style="color: #888888;">(Roundcube から設定するしかない?)</span></li>
<li>プロバイダメールの転送設定</li>
<li>1-4の間に届いたプロバイダメールの取得</li>
</ol>
<div>この前作業として、自宅 IP が名前解決できるようにしてみたり、 mx が引けるように DNS を設定したりということもあるのですが、自分の中で目新しいことをしてないので省略。</div>
<div>ということで、 SpamAssassin の判定精度にかなりの不満があるのですが、とりあえず Lion Server でメール環境が動き始めたのです。</div>
<div>そーいえば書き忘れてましたが、 Server.app のメールで &#8220;Webメールを有効にする&#8221; にチェックを入れて Web を有効化すると https://your.server/webmail/ で Roundcube という Web メールが使えるようになって、これの個人設定 &#8211; フィルターで sieve の振り分けが弄れます。というか今見つけられた範囲だとここからしか弄れないという…。</div>
<div>いろいろ不満があるように見えるでしょーけど、これらの各種メールサービスの連動をほぼなにも考えずに出来るって意味では Lion Server は非常に優秀で、この GUI のために \4,600 払っても悔いはないかもしれないです。まぁ、 GUI に隠蔽されちゃってる部分を弄ろうと思うと面倒なので、慣れてる人にはやっぱり不要なんでしょうけどね。</div>
]]></content:encoded>
			<wfw:commentRss>http://borg4.vdomains.jp/~goro/diary/2011/1269/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>cron に別れを告げ launchd と共に過ごそう、今さら</title>
		<link>http://borg4.vdomains.jp/~goro/diary/2011/1252</link>
		<comments>http://borg4.vdomains.jp/~goro/diary/2011/1252#comments</comments>
		<pubDate>Sun, 31 Jul 2011 02:59:20 +0000</pubDate>
		<dc:creator>ごろ～</dc:creator>
				<category><![CDATA[Mac]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[launchd]]></category>
		<category><![CDATA[Lion Server]]></category>
		<category><![CDATA[pkgsrc]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://borg4.vdomains.jp/~goro/diary/?p=1252</guid>
		<description><![CDATA[Mac OS X では cron は launchd にキックされる扱いなので launchd マジお勧め、ということは知ってはいたのだけど、今まで Mac 側で cron っぽいことをやる必要がなかったのでスルーしてい...]]></description>
			<content:encoded><![CDATA[<p>Mac OS X では cron は launchd にキックされる扱いなので launchd マジお勧め、ということは知ってはいたのだけど、今まで Mac 側で cron っぽいことをやる必要がなかったのでスルーしていました。が NetBSD に別れを告げるにあたり、今まで NetBSD でやってたことは全部 Lion Server で同じようにやりたい。もちろん cron はそのまま動くのだけど、せっかく OS が変わるのだからその流儀に従おう、ということで今さら launchd を使うことにしました。</p>
<p>参考にしたのは下記のサイト。</p>
<ul>
<li><a href="http://d.hatena.ne.jp/zariganitosh/20090308">cronからlaunchdへ（より効率的なジョブ管理を目指して)</a></li>
<li><a href="http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man8/launchd.8.html">launchd(8)</a></li>
<li><a href="http://www.devdaily.com/mac-os-x/launchd-plist-examples-startinterval-startcalendarinterval">Mac OS X launchd plist StartInterval and StartCalendarInterval examples</a></li>
</ul>
<p>thanks a lot!!<br />
<span id="more-1252"></span><br />
移行してみたのは相変わらずお世話になりっぱなしというかないと生活できないレベルの pkgsrc の更新。 crontab にはこんな感じ</p>
<blockquote><p>30 5 * * 1-6 cd /usr/src/pkgsrc &amp;&amp; cvs update -P -d &gt; /dev/null 2&gt;&amp;1</p></blockquote>
<p>で書いてますが、これを launchd 形式に書き直します。<br />
ポイントとしては</p>
<ol>
<li>ユーザー権限で実行</li>
<li>メールがウザいので stdout/stderr は /dev/null 送り</li>
</ol>
<p>でしょうか。</p>
<p>ということで参考サイトを見ながら適当に xml を書いてみる、とこんな感じ</p>
<blockquote>
<pre>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"&gt;
&lt;plist version="1.0"&gt;
&lt;dict&gt;
    &lt;key&gt;Label&lt;/key&gt;
    &lt;string&gt;jp.hyrule.flora.src.pkgsrc&lt;/string&gt;
    &lt;key&gt;ProgramArguments&lt;/key&gt;
    &lt;array&gt;
        &lt;string&gt;/usr/bin/cvs&lt;/string&gt;
        &lt;string&gt;update&lt;/string&gt;
        &lt;string&gt;-Pd&lt;/string&gt;
    &lt;/array&gt;
    &lt;key&gt;WorkingDirectory&lt;/key&gt;
    &lt;string&gt;/Volumes/pkgsrc/src/pkgsrc&lt;/string&gt;
    &lt;key&gt;StartCalendarInterval&lt;/key&gt;
    &lt;dict&gt;
        &lt;key&gt;Hour&lt;/key&gt;
        &lt;integer&gt;3&lt;/integer&gt;
    &lt;/dict&gt;
&lt;/dict&gt;
&lt;/plist&gt;</pre>
</blockquote>
<p>これを適当な名前<span style="color: #888888;">(ラベルに準じて jp.hyrule.flora.src.pkgsrc.plist )</span>で ~/Library/LaunchAgents/ に保存して</p>
<blockquote><p>launchctl load ~/Library/LaunchAgents/jp.hyrule.flora.src.pkgsrc.plist</p></blockquote>
<p>とやると登録完了。… launchd がきめ細かな設定ができるとはいえ cron の御手軽さも捨てがたいものはありますな<span style="color: #888888;">(無理に lanuchd を使わなくてもいいだろうという話もある)</span><br />
手間取ったところは</p>
<blockquote><p>Program<br />
If this key is missing, then the first element of the array of strings provided to the ProgramArguments will be used instead.</p></blockquote>
<p>というあたり? Program はなんのために定義されているんだというか、 ProgramArguments の最初の要素がプログラム扱いというのは微妙に気持ち悪い。</p>
<p>で、これを登録して放置してたら /var/log/system.log に</p>
<blockquote><p>Jul 29 03:09:55 flora jp.hyrule.flora.src.pkgsrc[87752]: cvs update: Updating .</p></blockquote>
<p>とか表示されちゃって厭ん。何が悪いかってーとポイント 2 番目の /dev/null　を忘れちゃったからなんですね。</p>
<p>ということでこんな感じに修正</p>
<blockquote>
<pre>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/
PropertyList-1.0.dtd"&gt;
&lt;plist version="1.0"&gt;
&lt;dict&gt;
        &lt;key&gt;Label&lt;/key&gt;
        &lt;string&gt;jp.hyrule.flora.src.pkgsrc&lt;/string&gt;
        &lt;key&gt;ProgramArguments&lt;/key&gt;
        &lt;array&gt;
                &lt;string&gt;/usr/bin/cvs&lt;/string&gt;
                &lt;string&gt;update&lt;/string&gt;
                &lt;string&gt;-Pd&lt;/string&gt;
        &lt;/array&gt;
        &lt;key&gt;WorkingDirectory&lt;/key&gt;
        &lt;string&gt;/Volumes/pkgsrc/src/pkgsrc&lt;/string&gt;
        &lt;key&gt;StartCalendarInterval&lt;/key&gt;
        &lt;dict&gt;
                &lt;key&gt;Hour&lt;/key&gt;
                &lt;integer&gt;3&lt;/integer&gt;
        &lt;/dict&gt;
        <span style="color: #ff0000;">&lt;key&gt;StandardOutPath&lt;/key&gt;</span>
        <span style="color: #ff0000;">&lt;string&gt;/dev/null&lt;/string&gt; </span>
        <span style="color: #ff0000;">&lt;key&gt;StandardErrorPath&lt;/key&gt; </span>
        <span style="color: #ff0000;">&lt;string&gt;/dev/null&lt;/string&gt;</span>
&lt;/dict&gt;
&lt;/plist&gt;</pre>
</blockquote>
<p>言うまでもなく赤字が変更部分。で system.log には吐かれなくなりました。</p>
<p>この StandardOutPath や StandardErrorPath で STDOUT や STDERR の吐き先を変えられるってのは syslogd 経由せずに好きなところにログっぽいものを書き出せるので、地味に便利かもしれない。</p>
]]></content:encoded>
			<wfw:commentRss>http://borg4.vdomains.jp/~goro/diary/2011/1252/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DROBO S</title>
		<link>http://borg4.vdomains.jp/~goro/diary/2011/1199</link>
		<comments>http://borg4.vdomains.jp/~goro/diary/2011/1199#comments</comments>
		<pubDate>Sun, 26 Jun 2011 12:11:01 +0000</pubDate>
		<dc:creator>ごろ～</dc:creator>
				<category><![CDATA[gadget]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[IYH]]></category>
		<category><![CDATA[Mac]]></category>

		<guid isPermaLink="false">http://borg4.vdomains.jp/~goro/diary/?p=1199</guid>
		<description><![CDATA[ファイルサーバーに使ってた NetBSD がここ最近急激に不安定になってきたので、そろそろ寿命かと覚悟して次を考えました。今我が家には 1TBi を 2 本刺して、片方をバックアップとして毎日 cron で Maildi...]]></description>
			<content:encoded><![CDATA[<p>ファイルサーバーに使ってた <a href="http://www.netbsd.org/">NetBSD</a> がここ最近急激に不安定になってきたので、そろそろ寿命かと覚悟して次を考えました。今我が家には 1TBi を 2 本刺して、片方をバックアップとして毎日 cron で Maildir と raw で撮った写真をコピーしてるファイルサーバー扱いの NetBSD の 2TBi の外付け HDD をくっつけた Apple TV 用の Mac mini が TimeMachine 先兼用として動いてるので、節電が叫ばれるこのご時世、この 2 台を 1 台にまとめることは必然。ということで出てきた候補が以下の 3 つ</p>
<ol>
<li><a href="http://www.qnap.com/jp/">QNAP</a></li>
<li><a href="http://h50146.www5.hp.com/products/servers/proliant/micro/">HP Proliant MicroServer</a> + <a href="http://www.freebsd.org/">FreeBSD</a> + ZFS</li>
<li><a href="http://www.drobojapan.jp/index.php">DROBO</a></li>
</ol>
<p>1. は中身が Linux なのとちょっとお高めなのが難点、 2. は安いけど NetBSD が FreeBSD になるだけなのでイマイチ、 3. お高めなのと遅いという世間の評判が気になる、とゆー事で一長一短なのですが、 Lion になると Server が安くなる風味なので、それで遊んでみたい欲求にかられて 3. を選択したのでした<span style="color: #888888;">(そもそも 1 や 2 だと Mac mini が減らせない罠)</span>。って今の Mac mini は Core Duo なので Lion が動かないこと確定なんだけど、そこは Lion Server が載った Mac mini Server に買い替えるなり、妹から Core 2 Duo な Mac mini を譲ってもらうことでカバー(笑)</p>
<p><span id="more-1199"></span></p>
<p>じゃあ Drobo にするとして、どれを買うかっつーのが次の悩み。 Mac mini を活かす前提なので <a href="http://www.drobojapan.jp/drobo_fs.html">FS</a> はナシなので安くてディスクが 4 本入る <a href="http://www.drobojapan.jp/drobo.html">2G</a> にするか、高いけどディスクが 5 本入る <a href="http://www.drobojapan.jp/drobo_s.html">S</a> にするのかとゆー 2 択。価格的に 2G でいいかなー、と思ったけど 3TBi のディスクの対応状況が不透明だったのと個人輸入しちゃえば日本で S 買う金額で S と 2TBi のディスク 3 本ぐらい買えちゃうので、 S を買ったのです。いやっほー</p>
<p>ちなみに <a href="http://www.bhphotovideo.com/">B&amp;H</a> で買って UPS で配送したのですが本体 $669.00, 送料 $102.34 の計 $771.34 。カード会社のレートが $1 = \81.640 で \62,972 。これに関税 \1,500 が足されて \64,472 でした。これが amazon.co.jp によると参考価格 \99,799 が \85,973 で売られてるんだから、多少時間がかかっても個人輸入するというもの。なお、水曜日の夜に頼んで日曜日に届きました。というか日本には土曜日についたみたいなんだけど、税関は土曜日もやってるんですねぇ。月曜日処理されて火曜日に到着コースかと思っていたのですが…。ちなみに中身というかマニュアルや CD にはしっかり日本語も書いてあるし AC アダプタも 100V-240V 対応なので、あえて日本で買う意味はあんまり無さげ<span style="color: #888888;">(サポートも残念みたいだし)</span>。</p>
<p><a href="http://borg4.vdomains.jp/~goro/diary/wp-content/uploads/2011/06/IMG_1833.jpg"><img class="aligncenter size-medium wp-image-1210" title="IMG_1833" src="http://borg4.vdomains.jp/~goro/diary/wp-content/uploads/2011/06/IMG_1833-300x200.jpg" alt="" width="300" height="200" /></a></p>
<p>で、 2TBi のディスク 3 本<span style="color: #888888;">(ソフマップで買った Seagate の ST2000DL003, \6,150&#215;3 で \18,450 なので日本で買った時との差額以下ですな)</span>刺して、 USB2 で Mac mini に繋げてディスクユーティリティでコピーしかけたんですが、 read,write 共に 20MB/sec ちょいで予想時間 1 日 19 時間…。早くも後悔しかけている(笑)</p>
]]></content:encoded>
			<wfw:commentRss>http://borg4.vdomains.jp/~goro/diary/2011/1199/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>続さくらのVPSでFreeBSD</title>
		<link>http://borg4.vdomains.jp/~goro/diary/2010/937</link>
		<comments>http://borg4.vdomains.jp/~goro/diary/2010/937#comments</comments>
		<pubDate>Tue, 19 Oct 2010 21:59:46 +0000</pubDate>
		<dc:creator>ごろ～</dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[VPS]]></category>

		<guid isPermaLink="false">http://borg4.vdomains.jp/~goro/diary/?p=937</guid>
		<description><![CDATA[FreeBSD が入るのなら NetBSD だって…! と思って久しぶりに -current を作って iso にし、それを mkmemstick.sh でメモリイメージに変換。で、せっかく作った ZFS root な環...]]></description>
			<content:encoded><![CDATA[<p>FreeBSD が入るのなら NetBSD だって…! と思って久しぶりに -current を作って iso にし、それを <a href="http://genericzero.wordpress.com/2009/08/01/install-netbsd-from-a-usb-memory-stick-the-easy-way/">mkmemstick.sh</a> でメモリイメージに変換。で、せっかく作った ZFS root な環境を潰して<a href="http://borg4.vdomains.jp/~goro/diary/2010/931">前回</a>と同じようにやってみたんだけど、何故か boot しない。なんで!? と思ってぐぐってみたら俺と同じことを企んで<a href="http://senbon-sanjo.seesaa.net/article/163153340.html">挫折した人をハッケソ</a>。俺は -current でしか試してないけど、症状は同じだから、ここは潔く断念。</p>
<p>で、 ZFS root な環境を潰したんだから、じゃあ ZFS boot も試してみるかと思い立って実験したのです。</p>
<p><span id="more-937"></span>まずは<a href="http://mfsbsd.vx.sk/">ここ</a>から ZFS boot なインストーラが用意された iso を取得。で、さっきの mkmemsitck.sh に相当するものを探したら<a href="http://www.mail-archive.com/freebsd-hackers@freebsd.org/msg55434.html"> fbsd-install-iso2img.sh</a> とゆーのがあったのでこれもゲット。で、これを使って iso をメモリイメージに変換。ついでに iso の中身を見たら 8.1-RELEASE-i386.tar.xz とゆーのをインストールに使ってるっぽいのでそれも iso から取り出しておく。</p>
<p>前回と同様に<a href="http://tanaka.sakura.ad.jp/archives/001064.html">さくらの社長ブログ</a>を参考にさっき作ったメモリイメージから起動して適当なパスにさっき取り出した 8.1-RELEASE-i386.tar.xz をテキトーな所<span style="color: #888888;">( /usr/local/tmp を掘ってそこに置いた)</span>に置いて、そのままだと ad0 が GUID パーティションじゃないので</p>
<p style="padding-left: 30px;"><code>dd if=/dev/zero of=/dev/ad0 bs=1m count=1</code></p>
<p>とか強引に partition table を綺麗にして</p>
<p style="padding-left: 30px;"><code>zfsinstall -d /dev/ad0 -t /cdrom/8.1-RELEASE-i386.tar.xz -s 2G</code></p>
<p>としてインストール。あとはテキトーに rc.conf やらなんやらを編集してリブートするとあっという間に pure ZFS な FreeBSD の出来上がりっと。あまりに簡単なので感動は少ないけど、こんな感じになるのでした。</p>
<p><a href="http://borg4.vdomains.jp/~goro/diary/wp-content/uploads/2010/10/purezfs.png"><img class="aligncenter size-medium wp-image-938" title="purezfs" src="http://borg4.vdomains.jp/~goro/diary/wp-content/uploads/2010/10/purezfs-300x187.png" alt="" width="300" height="187" /></a></p>
<p>やっぱ ServersMan@VPS は解約かな…。</p>
]]></content:encoded>
			<wfw:commentRss>http://borg4.vdomains.jp/~goro/diary/2010/937/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>何故敢えてpkgsrcを使うのか</title>
		<link>http://borg4.vdomains.jp/~goro/diary/2010/809</link>
		<comments>http://borg4.vdomains.jp/~goro/diary/2010/809#comments</comments>
		<pubDate>Thu, 06 May 2010 21:35:08 +0000</pubDate>
		<dc:creator>ごろ～</dc:creator>
				<category><![CDATA[Mac]]></category>
		<category><![CDATA[misc]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[pkgsrc]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://borg4.vdomains.jp/~goro/diary/?p=809</guid>
		<description><![CDATA[FreeBSD から NetBSD に移行した時に一番戸惑ったのは FreeBSD での ports にあたる pkgsrc から入れたコマンドが一切実行出来ないことでした。デフォルトでは /usr/pkg 以下に入れら...]]></description>
			<content:encoded><![CDATA[<p>FreeBSD から NetBSD に移行した時に一番戸惑ったのは FreeBSD での ports にあたる pkgsrc から入れたコマンドが一切実行出来ないことでした。デフォルトでは /usr/pkg 以下に入れられ、そこに PATH なんか通ってるわけないから当然ですけどね。</p>
<p><span id="more-809"></span></p>
<p>FreeBSD を使っていた身としては /usr/pkg は /usr/ports に対応するもの、つまりパッケージシステムのソースが置かれるところという認識だったのですが、 pkgsrc のソースが置かれるのは /usr/pkgsrc 、で /usr/pkg は /usr/local に対応し出来上がったコマンドその他が入るところなのですね。それが大変気持ち悪く、 NetBSD で ports を使う方法がないか調べたりもしたわけなんですが、 pkgsrc を使わずに Emacs をビルドしてインストールした時に</p>
<ul>
<li>システムコマンドは /bin, /usr/bin</li>
<li>pkgsrc で入れた奴は /usr/pkg/bin</li>
<li>自分で入れた奴は /usr/local/bin</li>
</ul>
<p>と綺麗に分かれる事に気づいて、それからは pkgsrc 大好きっ娘になったのです(笑)。もっとも pkgsrc だけは NetBSD であっても /usr/src/pkgsrc に置くようにしてますけど。</p>
<p>ちなみに MacPorts は /opt/local 以下に入れるようになってて、/opt を別パーティションにする習慣がない俺にはちょっと…って感じです。まぁ MacOS X は / 一本なので本来問題ないのですが(笑)</p>
<p>で、その後 Solaris を使うことになって、でも当時の Solaris のパッケージシステムがイマイチイケてなかったので、じゃあ試しにってんで Zoularis を使ってみたら思ったより快適だったので， Zoularis -&gt; bootstrap と使い続け今に至るのです。</p>
<p>実際、普段使ってる NetBSD, MacOS X, CentOS(?) でほぼ同じようにパッケージの管理が出来るのはとても楽。もちろん複数の OS を使ってないのであればネイティブのパッケージシステムを使ったほーが楽だと思いますけどねー。</p>
]]></content:encoded>
			<wfw:commentRss>http://borg4.vdomains.jp/~goro/diary/2010/809/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CentOSでpkgsrc</title>
		<link>http://borg4.vdomains.jp/~goro/diary/2010/788</link>
		<comments>http://borg4.vdomains.jp/~goro/diary/2010/788#comments</comments>
		<pubDate>Wed, 28 Apr 2010 22:35:09 +0000</pubDate>
		<dc:creator>ごろ～</dc:creator>
				<category><![CDATA[misc]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[pkgsrc]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[VPS]]></category>

		<guid isPermaLink="false">http://borg4.vdomains.jp/~goro/diary/?p=788</guid>
		<description><![CDATA[DTIの仮想サーバーサービスであるServersMan@VPS Proが異常に安いので申し込んでみました。 残念ながらOSはCentOS一択らしいので、それは我慢していつものようにpkgsrcを入れようとしたらcvsが入...]]></description>
			<content:encoded><![CDATA[<p><a href="http://dream.jp/">DTI</a>の仮想サーバーサービスである<a href="http://dream.jp/vps/">ServersMan@VPS </a>Proが異常に安いので申し込んでみました。</p>
<p>残念ながらOSはCentOS一択らしいので、それは我慢していつものようにpkgsrcを入れようとしたらcvsが入ってないからソースをとってこれない(笑)。が何故か curl は入ってるので<span style="color: #808080;">(流石Linux…)</span>とりあえずtarballをゲット</p>
<p><span id="more-788"></span></p>
<blockquote><p><code>cd /usr/src<br />
curl -O ftp://ftp.NetBSD.org/pub/pkgsrc/current/pkgsrc.tar.gz<br />
tar xvfz pkgsrc.tar.gz</code></p></blockquote>
<p>で bootstrap と思ったら gcc がないからエラーになりますよ、と<span style="color: #808080;">(流石Linux…)</span>。仕方ないのでとりあえず</p>
<blockquote><p><code>sudo yum install gcc</code></p></blockquote>
<p>でお茶を濁す。</p>
<p>気を取り直して再度bootstrapと思ったらbmake作った後に</p>
<blockquote><p><code>bmake: no system rules (sys.mk).</code></p></blockquote>
<p>などと言われてコケる。<br />
んー、と悩んでググってみたところ、どーもcurrentのbmakeだとイケナイらしいので、手元にあった古めのbmakeのソース<span style="color: #808080;">(bmake-20090909)</span>をコピーしてみたところ今度は成功。</p>
<p><ins datetime="2010-04-29T04:54:30+00:00">落としたtarballが若干古かったらしくcvsで最新のソースにしてもやっぱりbuildが通りました。しかしcvs入れるためにはbootstrapが終わってないとイケナイのだよなぁ…</ins></p>
<p>あとは普段入れてるのは入れていくだけ、と思ったら今度は termcap がどーこーと言われてやっぱりエラー。ググったらこっちは有名な事象らしく<a href="http://www.ryuzee.com/contents/blog/845">libtermcap-develを入れればいい</a>とのこと。</p>
<blockquote><p><code>yum install libtermcap-devel</code></p></blockquote>
<p>ということで再度トライしたところようやくbuildが通るようになりました。あー、やっぱり Linux メンドクセー<span style="color: #808080;">(面倒な道を選んでるだけです</span></p>
]]></content:encoded>
			<wfw:commentRss>http://borg4.vdomains.jp/~goro/diary/2010/788/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bazaarとinline patch</title>
		<link>http://borg4.vdomains.jp/~goro/diary/2010/726</link>
		<comments>http://borg4.vdomains.jp/~goro/diary/2010/726#comments</comments>
		<pubDate>Fri, 22 Jan 2010 12:11:34 +0000</pubDate>
		<dc:creator>ごろ～</dc:creator>
				<category><![CDATA[Emacs]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[Bazzer]]></category>

		<guid isPermaLink="false">http://borg4.vdomains.jp/~goro/diary/?p=726</guid>
		<description><![CDATA[昨年末に Emacs のソース管理システムが cvs から Bazaar というものに変わったそーです。惰性で current のソースを引っ張っている者としては追いかけたいのが心情なので試してみたのですが、どうやらちゃ...]]></description>
			<content:encoded><![CDATA[<p>昨年末に Emacs のソース管理システムが cvs から <a href="http://bazaar.canonical.com/en/">Bazaar</a> というものに変わったそーです。惰性で current のソースを引っ張っている者としては追いかけたいのが心情なので試してみたのですが、どうやらちゃんとソースを引っ張ってこれてるみたいなのでメモしておきます。</p>
<p>ソースの取得は相変わらず NetBSD でやってるので pkgsrc での話になりますが、<a href="http://bazaar.canonical.com/en/">Bazaar</a> を使うには devel/bzr を入れれば良いみたい。</p>
<p>bzr の使い方はここに<a href="http://www.emacswiki.org/emacs/BzrForEmacsDevs#WhereIsEmacs">解説されている</a>とーり</p>
<ol>
<li>bzr init-repo &#8211;2a emacs/</li>
<li>cd emacs &amp;&amp; bzr branch http://bzr.savannah.gnu.org/r/emacs/trunk/</li>
<li>cd emacs/trunk &amp;&amp; echo &#8220;public_branch = http://bzr.savannah.gnu.org/r/emacs/trunk/&#8221; &gt;&gt; .bzr/branch/branch.conf</li>
<li>cd emacs/trunk &amp;&amp; bzr bind http://bzr.savannah.gnu.org/r/emacs/trunk/</li>
</ol>
<p>で OK。ソースのアップデートは cvs とほぼ同じよーに</p>
<blockquote><p>cd emacs/trunk &amp;&amp; bzr update</p></blockquote>
<p>だそーな。</p>
<p>それはそれとして、最近はリリースこそされていないものの <a href="http://sourceforge.jp/projects/macemacsjp/svn/view/inline_patch/trunk/?root=macemacsjp">inline patch </a>の更新が頻繁に行われいるようで、 64bit Cocoa Emacs でもバッチリインライン入力ができるようになってます。快適、というか IM によってモードラインに表示される単語が異なるというのが芸細でいいですな。</p>
]]></content:encoded>
			<wfw:commentRss>http://borg4.vdomains.jp/~goro/diary/2010/726/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Patches for journalling support</title>
		<link>http://borg4.vdomains.jp/~goro/diary/2008/189</link>
		<comments>http://borg4.vdomains.jp/~goro/diary/2008/189#comments</comments>
		<pubDate>Mon, 03 Mar 2008 12:10:08 +0000</pubDate>
		<dc:creator>ごろ～</dc:creator>
				<category><![CDATA[NetBSD]]></category>

		<guid isPermaLink="false">http://borg4.vdomains.jp/~goro/diary/2008/189</guid>
		<description><![CDATA[(最近ファイルシステム絡みの話題が続いてますが、偶然です。意味がわからない人は読み飛ばしてください) 流し読みした限りじゃ WASABI が ffs にジャーナリングを追加した奴を公開するよーってことですかね? これかな...]]></description>
			<content:encoded><![CDATA[<p><span style="color: #909090">(最近ファイルシステム絡みの話題が続いてますが、偶然です。意味がわからない人は読み飛ばしてください)</span></p>
<p><a href="http://mail-index.netbsd.org/tech-kern/2008/03/02/msg000504.html">流し読み</a>した限りじゃ WASABI が ffs にジャーナリングを追加した奴を公開するよーってことですかね? <a href="http://www.wasabisystems.com/technology/wjfs">これかな?</a></p>
<p>実績はありそうだし softdep より早いらしいので遊んでみたいけど、そんな時間はないので次に NetBSD に HDD 追加するときに覚えてたらやってみようかな。</p>
<p>NetBSD には LFS があるけど、でも選択肢は多いほうがいいよね :D</p>
]]></content:encoded>
			<wfw:commentRss>http://borg4.vdomains.jp/~goro/diary/2008/189/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>libGLU</title>
		<link>http://borg4.vdomains.jp/~goro/diary/2008/176</link>
		<comments>http://borg4.vdomains.jp/~goro/diary/2008/176#comments</comments>
		<pubDate>Mon, 25 Feb 2008 12:06:08 +0000</pubDate>
		<dc:creator>ごろ～</dc:creator>
				<category><![CDATA[NetBSD]]></category>

		<guid isPermaLink="false">http://borg4.vdomains.jp/~goro/diary/2008/176</guid>
		<description><![CDATA[audio/arts が古くなっていたので make し直そうとすると libstdc++.so.5 が見つからないとか怒られて失敗していました。 どうも arts が依存してる x11/qt3-tools で問題が起き...]]></description>
			<content:encoded><![CDATA[<p>audio/arts が古くなっていたので make し直そうとすると libstdc++.so.5 が見つからないとか怒られて失敗していました。</p>
<p>どうも arts が依存してる x11/qt3-tools で問題が起きてるっぽいんだけど、 qt3-tools で make clean &amp;&amp; make build しても問題が解決しないんだよねぇ。</p>
<p>と悩んでいたら qt3-tools の一部である(?) uic が要求する /usr/pkg/lib/libGLU.so.1 が libstdc++.so.5 に依存してたのが原因のようでした。じゃあ libGLU を作り直せばいいんじゃ、と思ったんだけど libGLU が何に含まれるかわかんない(笑)。調べたところ MesaLib っぽかったんだけど、 pkgsrc ではさらに細分化されてて graphics/glu を入れ替えるのが正解でした。</p>
<p>pkgsrc はこーゆー  NetBSD 自体をバージョンアップした時にハマることが多いような気がする。えぇ、勿論 make update ではなく make replace なんてヤクザな(?)入れ替え方法を使ってる俺が悪いんですがね(苦笑</p>
]]></content:encoded>
			<wfw:commentRss>http://borg4.vdomains.jp/~goro/diary/2008/176/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

