アプリケーションいろいろ

「最初に入れる 10 のアプリは ?」というネタがあったが、 10 ですむわけないよね。以下にさらされているのは、 主観的に必須と感じるアプリケーションを無謀にも列挙してみよう という愚昧な徒労の残滓である。

システム

cvsup
FreeBSD において ports はアプリケーションを突っ込むための元ネタであり、 これがないと始まらない。 -RELEASE についてくる ports 展開後にまず cvsup するのが王道だ。

portupgrade
cvsup 後のインストールされているものの更新のチェックと更新のために portversion と portupgrade は欠かせない。 また、パッケージで強制インストールしたときや 更新に追従せずに単純に make install clean を使っている場合に 発生しがちな依存関係の乱れを解決する pkgdb も重宝する。

cvsup-mirror
感覚的に、インストールベースとなる ports ツリーは ころころ更新したくはないので、毎晩 cvsup するような運用は避けたい。 だが、ネットワークから切り離された状態でも更新したい時にはしたい。 この欲求を満足するためはローカルに cvsup サーバを持っていればよい。
副作用として、ドキュメントや src もいつでも cvsup できるし、 cvsup の通らない firewall の内側のマシン達も更新のチャンスができる。

zsh
このあいまいな補完に慣れてしまうと、他のシェルは使う気にはならない。 だが zsh はあくまで対話目的のログインシェルであり、 スクリプトを書く用途には用いない。 スクリプトはあくまでも /bin/sh で書く。

fd
変なアーカイブを後先考えずに展開する(後先考えずに展開するアーカイブはたいがい人に言えない物件であることが多い)と、 変なコードでファイルがわらわらできてしまうことがある。 しょんぼりしつつもはじからチェックして、外れは消去、当たりは退避、 なんてことをやるのだが、zsh の tab 補完を使って各個処理するのは いささか手数がかかる。そんなときに使う。 それ以外ではほとんどまったく使わない。

wmmon / wmnet / wmbattery / xbat
モニター関連。wmmon は 切替えることで メモリ消費状況/スワップ消費状況/uptime、 CPU ロードアベレージ、 ディスク I/O が見られる DockApp。 が、いちいち切替えるのは面倒なので、 メモリ/スワップ消費状況専用のものを1つ、ロードアベレージ専用のものを一つ、 都合2つを Dock に並べている。
wmnet はネットワークインタフェイスの出入りをモニタする DockApp。 最新の ports のパッチ類を当てると描画がうまくいかないので、ビルド前に除去。 これもインタフェイス名の部分をマウスクリックすることでモニタ対象のインタフェイスを切替えることができるが、マウスの操作は面倒だし、そもそもインタフェイスは1つ見られれば十分なので滅多に切替えることはない。
wmbattery はバッテリ状況を apm 的に表示することのできる DockApp。 喫茶店や電車の中などで長期戦に突入した時に特に気になる。
xbat は DockApp がうまく扱えない Window Manager を使う状況に追い込まれた時の保険。これもバッテリの状況をモニタする。

アーカイバ / ファイラー

bzip2
大昔は野良ビルドして入れたような気がするが、最近は /usr/bin に入っているので嬉しい。

zip / unzip
正直 zip ファイルの扱いは不慣れだ。

lha
石器時代かよっ、ってくらい昔のドキュメントが時おり lzh で発見されたりするので欠かせない。

rox
昔は使っていたが、zsh を使うようになってからとんと起動しなくなった。 Macintosh の Finder のような感じで、そこそこ使えた記憶がある。

ドキュメント

ja-man / ja-man-doc
I am poor Japanese and I am not good at English at all, so I need to prepare Documents in Japanese. The ja-man-doc port is sometimes not up-to-date, but it is really useful for me.

pinfo
ときおり man が弱くて info が充実しているものがある。 自分は emacs系 は使えないので pinfo を知るまでは info をどうやって読めばいいのかわからなかったが、やっと読める。

ハンドブック / FAQ
FreeBSD 公式のドキュメントは ja-man-doc 同様、cvsup によって取得できる。 手元のマシンに解説書が入っていていつでも読めるのは実に便利だ。 FAQ は最近はあたることが少なくなったが、ハンドブックは今でもよく見る。 こうしたドキュメントが充実しているのは実にありがたい。 /usr/share/doc/ 以下にドキュメントがわっさわっさあるので、namazu で引けるようにしておくと便利。

サーバ

Apache / cvsweb / PHP / mod_gzip
自分で書いたメモや今書いているコードの過去の更新や昔書いたシステムのメンテナンスに。 というのは表向きの理由であり、実際のところはあちこちのネットワークに接続変更したときにも各アプリケーションの proxy の設定を変えないですむよう、 Apache に proxy 役をやらせているのである。

yukiwiki / pukiwiki
これらはまだまだ「味見」段階。 ブラウザから編集できるコンテンツというのは ローカルマシンに自分専用に持っていてもおもしろいものではない。 組織内とか、仲間うちとか、何しろ多くの人間の手の触れるところに晒さないといけない。

Samba
Windows 方面とのネットワーク越しのファイル交換は避けては通れない。 特にメイルに添付されてくる Office系 文書を Windows マシンから手軽に扱うために用意している。 ftp アクセスや webdav などのやり方もあるが、サーバを準備する手間としては 慣れ親しんだものがやはり最も使いやすいので、ある程度惰性で使っているとも言える。

データベース

PostgreSQL
これも基本的に勉強のために入れている。抽出や集計が面倒なデータを処理する時に一時的にデータベースを作ってデータを放り込み、SQL で結果を出しておいて消す、といった強引な使い方もあり。MySQL でないのは、単純に慣れの問題。

GNUPlot / rrdtool
普段持ち歩いているマシンで何かを長期観測することは基本的にないが、 何か取りたくなった時のために入れている。GNUPlot も同様で、何か視覚化したくなった時のために入れてある。

jfconv
csv データを JFile 形式に変換するだけのツールだが、意外と使用頻度は高い。 仕事で関わっているネットワーク管理のための IP アドレス一覧とか、 そんなものを変換するのに使っている。

ウィンドウシステム

screen
リモート作業する時にリモート側に入っていると便利な screen だが、 ローカル作業する時にも端末エミュレータをわさわさ開かなくてすむので重宝する。 通常4つの window を開いて、 0つめ:mnews、 1つめ:一般作業用、 2つめ:root作業用、 3つめ:一般作業の第2候補、 という具合に使っている。 外出時は window を追加して、 4つめでフォアグラウンドで stunnel を走らせ、 5つめで ppp して、 6つめで ppp.log を tail -f したりする。

xorg / WindowMaker / fluxbox / ctwm
X は OS インストール時にとりあえずパッケージで入れて、時間的に余裕がある時に ports から最新をビルドするのが常。
WindowMaker は最も好んで使う Window Manager なのだが、 回りの環境ができてから最後に仕上げに入れればよいと思っているので、 入れる順番的にはかなり後である。
fluxbox と ctwm は WindowMaker を入れるまでの代替だったり、 vnc server の中で走らせる 2nd Window Manager だったりする。

ビットマップフォント / TrueTypeフォント
bdf フォントは ナガ10、ながまる、東雲あたりをベースに組んだ自分用のフォントセット(alias 定義)を利用する。 TrueType フォントは適当にあちこちから拾って来て fc-cache -f して使う。

エディタ

nvi-m17n
日本語3種の自動認識ができるほか、単体で Canna と会話し、gtags(global) に対応している優れ物。 ports に野良パッチを追加してビルドする。 これに、長年鍛えて育ててきた ~/.nexrc と ~/bin/ 以下の小物スクリプト群を組み合わせれば、強まった編集環境となる。 もちろん EDITOR にはこれを指定。鍛え内容をいくつか挙げてみる。

  • 1タッチで行末空白の除去
  • 2タッチで現在時刻を挿入
  • 1タッチで1行電卓
  • 2タッチで ndtpc による辞書ひき(英和/和英)
  • 2タッチで社内 whois 問い合わせ
  • 2タッチでローカルアドレス帳問い合わせ
  • 2タッチで編集中ファイルの日本語コード変換
  • ab による HTML のテンプレ編集
  • 2タッチで編集中 java ファイルのコンパイル
  • 2タッチで編集中 java ファイルのクラスを実行
  • 1タッチで編集中ファイルの実行
  • 2タッチでカレント行をコマンドラインとして実行
  • 2タッチで郵便番号問い合わせ
  • 2タッチで現在行を c 風にコメント/アンコメント。

hi
3種日本語をはじめ、KEIS コードも扱えるバイナリエディタ。 気合いを入れれば mp3 の TAGv1 の編集用途にも使える。 ports には入ってないので野良ビルドする。

vim
UTF-8 なファイルを生で編集するためだけに存在する vi の亜種のひとつ。 何かファイルを編集すると勝手に $HOME に .viminfo なるファイルを作りやがるので嫌い。

日本語処理

Canna / cannadic / kinput2 / 辞書データ
nvi と直接お話できる変換エンジン。uim にもひかれるのだが、かなり育てたマイ辞書があるのと kinput2 で困ったことがないので、当面は Canna で続投する。

kterm / mlterm
端末エミュレータは kterm がメインで mlterm がサブ的扱い。 キャラクタを扱う上ではどちらも甲乙つけがたいが、マウス操作の挙動から kterm に軍配。

ndtpd / ndtpc / ebview / 辞書データ / acron
辞書ひきのための サーバとクライアントとデータ。 ndtpd は ebnetd という名前に改名になった模様。 英和和英辞書は nvi の中から使うのが常だが、その他の辞書を串刺ししたり、その語の周辺を探ったりする際には ebview を使う。 acron もだいぶ育ててしまったので手放せない。 備えている辞書はざっと以下の通り。

  • 英辞郎
  • 和英辞郎
  • 研究社 新英和・和英中辞典
  • 三省堂「大辞林」
  • 故事ことわざ・慣用句辞典
  • 日本語辞典(現代国語、外来語)
  • 広辞苑 第四版
  • VERA 1.7
  • 不明解略語辞典
  • The Jargon File
  • 略語辞典
  • 通信用語の基礎知識

nkf / qkc / jadetect / jcode.pl
日本語コードの判定および変換。判定には長らく file2 を使ってきたが、 jadetect/nldetect の使いやすさにあっさり乗り換えた。 qkc はコマンドラインでいちいちリダイレクト書くのが面倒なケースで使用。 老舗の nkf はパイプつなぎと utf の変換で役に立つ。 perl で日本語処理をするためにはやっぱり老舗の jcode.pl が便利。

namazu2
メイルやマニュアルの全文検索には namazu。

メーラ

fetchmail / mh / mnews / munpack
受信:fetchmail でローカルへ吸い上げ、mh で $HOME に inc して mnews で読む。mnews で処理できない添付ファイルは munpack でバラす。 送信:SMTPSERVER を適切に設定して mnews から普通に送信。ファイルを自分宛てに送る時は手を抜いて mpack だけで済ませるのも可。

Sylpheed
日本語ファイル名の添付ファイルを転送する、smtp auth で gmail を使う、 といった mnews ではできないことを補助するための 2nd メイラ。

wmbiff
要するに biff の DockApp 。メイルが来ると you have new messages と喋って(いる wav ファイルを再生して)通知してくれる。mixer が大変なことになっちゃっていたりするとうるさいのでビビる。

ページャ・ブラウザ

jless / lv / w3m
PAGER はここ数年 jless にしている。基本的に文句ない。 lv は 外部PAGER として時おり mnews から呼び出す使い方が多いが、 実は同梱されている (同じ inode でインストールされる) lgrep が異様に便利だ。 さて、わざわざ GUI 装備の HeavyBrowser を持ち出すまでも無い程度の 軽い html 文書をさっと見るには nvi で脳内レンダリングでもいいけど、 w3m が軽くてよい。 url が分かっていてファイルで referer の要らない一発モノのダウンロードにも便利。

Firefox / Opera / Mozilla
Opera はちゃんとレジストしてある 6.12 を使用。これはあまりに古くて時々思うような表示をしてくれなかったり、レンダリングが重ったりぃ時がある。特に最近流行りの WiKi や blog が嫌。そんなわけで FireFox と併用している。 Mozilla は動作確認用。…エンジンはいっしょなのでもう要らないのかな。

FlashPlayer
昨今は見た目の派手さを好んでかコードの盗用を防衛するためか、Flash がないとまともにコンテンツにたどり着けないページも多くなってきた。 FireFox では linuxpluginwrapper 経由で Flash も無事に見えるので、 zphoto の動作確認もできる。

ochusha
2ch ブラウザはいろいろあるみたいだが、飯を食いながらだらだら使える ochusha を利用している。以前は gorua を使っていたのだが、なぜ乗り換えたのかは覚えていない。

ネットワーク

dnsmasq
あちこちでつなぎ直すたびに resolv.conf を直すのが面倒とか、 ネームサーバのない環境でも自分のマシン上だけでは名前解決したいとか、 そんな軟弱な理由で dnsmasq に 53 番を listen させている。 /etc/hosts に書いておけばよきに計らってくれる、という軟弱さがすごい好き。

rsync / ssh-askpass
ネットワーク越しのコピーにもローカルでのコピーでも rsync は便利。 これを楽にするための ssh-askpass は、見た目の派手さから gtk 版を利用している。

stunnel
某所に接続するための通信レイヤ。某所と通信できないと本当に困ったことになるので欠くことはできない。某所との通信以外にも、稀に Gmail への通信にも使ったりする。

vnc / x2vnc
cui なアプリは screen の中で走らせることでコンソールから切り離せる。 gui なアプリは vncserver の中で以下同文。 アプリケーションがコンソールから切り離されることで物理的な制限が1枚切り離される。ネットワークの力に感謝。 本家 vnc を使うことはあまりない。ports に入っているものでは TightVNC か TridiaVNC になるが、別にどちらでも大差ない。 x2vnc は隣においてあるマシンのキーボードが書類で埋まっている時に利用。

tcpdump / ethereal / nmap / nmapfe
何やら解析しなければならない事態に陥ることはほとんど無いが、それでもゼロではないので、これらの診断用のツールは有用であり、手放せない。 ちなみに tcpdump は FreeBSD では OS 標準なので、特に後から入れる必要はない。

gtkipmsg / GnomeICU
メッセージングも重要。GnomeICU は話し相手が居ない(泣)が、IP Messenger は流行っているので相手には事欠かない。gtkipmsg は不満点をいくつか改修した野良パッチを当てて使っている。

net-snmp
telnet / ftp / w3m でアクセスできない router / switch / printer などでも 意外と snmp で知りたいことを取れたりするので、snmpwalk のためだけに入れている。 自マシンの 161 を開けたいわけではない。

wget / gwget / aria
wget は referer つきでないと落とせない巨大ファイルや連番画像や連番動画を落とすために使用中。 gwget や aria も入れてはいるが、まじめに使いこんでいないのに別に困ってないということは、無くてもいいのかもしれない。

アクセサリ

morse / random / grdc
モールス信号をビープで鳴らしてくれたりするので非常に楽しい。 random はスライドショーやシャッフル再生に欠かせない。 grdc はキャラクタ端末しかない時のデカ時計。 こやつらは ports ではなく、FreeBSD 配布物の中の game カテゴリに入っている。 src を展開して適当に make すると、入る。 もしくは、全部のせで world を再構築しても入る。

pclock / wmzcalock / wmmoonclock / wmdrawer
時計はたくさんあっても困らないのでたくさん入れている。pclock はシンプルさが逆に魅力のアナログ時計として使用。wmzcalock は 今日の日付をチラっと確認したい時に。これは ports に入っていないので、野良ビルドで入れる。 wmmoonclock は月の画像が美しい。 wmdrawer は最近あまり使わなくなった。プリセットランチャーとしては WindowMaker の RootMenu を使うことが多くなった。

xdkcal / xdaliclock
xdkcal もこんなに便利なのに ports になっていない。野良パッチをあてて野良ビルドする。xdaliclock は密かにバージョンアップしていたりするので、侮れない。気をつけろ。

xact / macopix / xmascot / ninix-aya
これらの和み系も重要。詳細は恥ずかしいので割愛。

luna / today
月齢表示は X が使える状態なら wmmoonclock におまかせなのだが、キャラクタ端末しかない時や、月齢じゃないリズムを見たい時(最近はそんな機会もめっきりなくなりましたが)に使う。 today はローカルデータを用いて誕生日チェックに使うのがメイン。today そのものについているデータの更新がないのがさみしい。

開発ツール

JDK / ant / Eclipse / checkstyle / Jude / jadclipse
Java のインストールは ports からのビルドが前提なのが障害だと感じる向きもあるようだが、ほとんどのアプリケーションを ports から入れているので特に障害だとは思わない。しかし、native Java のビルドのために同等バージョンの linux 版 JDK を入れるのは何か変だ、とは思う。そんなこんなで、まぁ、バイナリ配布があったほうがプラットフォームの普及には役立つだろう、という論旨には賛成だ。 ant は java ツリーのビルドのみならずサイトの更新にも使っているので重要。 Eclipse はコードベースを視覚的に捉えたい時に活躍する。フォントの調整が面倒だがこれは Eclipse のせいじゃなくてツールキットの問題なので痒いところだ。 checkstyle がないとすぐにコードがグズグズになってしまうので、コルセットというか矯正ギブスというかそんな感じで自虐的に利用。チェックルールファイルは Sun のものを何点か緩くして使っている。 たまに Jude でクラス図を描いたりもする。PNG 出力ができるので気に入っている。 jad とか jadclipse とかは表向きには my マシン上には存在していないことになっているので、うわなにをすdrftgyふじこ

gtkdiff
多数のファイルはを含むローカルツリー同士の比較にも威力を発揮するのはもちろん、同梱されている gtkdiff-cvs がかなり便利。

global
nvi からタグジャンプできて便利なのだが、nvi を使っている時は往々にしてファイルの編集行為も行っているのでまいっちんぐ。gtags ファイルの更新が自動になればもっと死ぬほど便利だと思う。でも死んでしまうと困るので、今のままでもいいや。

オフィス

OpenOffice
奴らは主にメイルでやってくる。「我こそが majority であり、逆らうことは許さない。平家でなければ人にあらず。抵抗は無意味だ。」ってなぞんざいさだ。まったく辟易する。

AcrobatReader
給与明細が pdf で配布されたりするので、pdf が読めないとかなりアツい。また、ミドルウェアのマニュアルや気になるプレゼンの資料など web から手に入る情報の pdf 率も高くなってきているので、今後も必携のツールだと言えよう。

Tgif
その昔描いたネットワーク図など、過去の資産を見たい時が少なからずあるし、現在でもちょっとした状態遷移図やネットワーク図は tgif で描いて png に出力したりしている。本当に便利なツールだと思うのだが、今やまわりに使い手が一人もいないところが悲しい。

音声処理

aumix
GQmpeg から m で呼び出して矢印キーだけで調整するのがいつもの使い方。 右手だけで微妙な調整がきっちりできるところが気に入っている。 いきなりミュートするとかそういうドラスティックな変更を行うときは素直に mixer コマンドで指示した方が速い。

wavrec / wmrecord / mhwaveedit
AMラジオを音声入力から wav で録音など、今時の若者はやらないんだろうな…。wmrecord は昔々のテープ音源を CD 化するときに使ったが、思ったより便利だった。mhwavedit は採りすぎてしまった頭や尻の無音を切り落とすのに使用。あまり出番はない。

gogo
録音したラジオ番組を mp3 化して昼休みにニヤニヤしながら聴く…なんて、今時の若者はやらないんだろうな…。ま、CD から ripping した wave を変換する時にも使うが、頻度としてはラジオ番組の変換の方が圧倒的に多い。

mpg123
コマンドラインから使える mp3 プレーヤである。ビルド時にオプション指定をちゃんとしてあげれば、日本語の tag 名も扱える。GQmpeg のバックエンドとしても大活躍だ。

GQmpeg / xmms
gui プレーヤとしてはキーボード操作のできる GQmpeg がいちおしだ。xmms は、ま、あってもなくてもよいが依存性で引っ張られることもあるので、いっそハナから入れておく。プレーヤが2種類あるのも悪くない。

gmp3te
タグエディタ。必要最小限のことしかできない男らしさと、日本語情報の扱いへの信頼から利用している。残念なことに、あまり頻繁に使うものでもないので、いざ使おうとした時には名前を思い出せなかったりする。

dagrab / cdrdao / cdparanoia
音楽 CD のマニピュレータ。まぁよほど困ったときでないと使わないが、万一に備えて入れてある。

画像処理

enfle / gimageview
さくさく画像を見るなら enfle。 一覧して整理するときは gimageview。

ImageMagick / gimp / zphoto
定型な画像変換には ImageMagick の個別なツールが便利。最もよく利用するのは convert で、ハードコピーを png にしたり 重たい画像を png にしたりする。 ドット単位で減色する作業や、適当に重なりのある複数画像の重ね合わせなどの ちょっと複雑な画像加工には定番の gimp を利用。 呑み会やら宴会やらでマシマシ撮った写真を web に載せる時には zphoto のインパクトがたまらん。

動画鑑賞

mplayer
あんな動画やあんな動画…じゃなくて、DVD などを観覧する時に使う。ということにしておく。

mmsclient
映画の予告編を何度も見たい時など、ストリームで配っているものを一時的にローカルにキャッシュして楽しむための道具。

dvdrip
正直、ディスクがどれだけあっても足りないぜよ。

ベンチマーク

glclock / xengine
glclock は動きがきれいなので一見の価値有り。でも一見したらあとは滅多に見ないともいう。 xengine も定番なので入れておくと楽しい。 最近の X はデフォルトで glxgears なるものがついてくるらしい。ガリガリ回る。

Palm

jpilot
m100 が Palm 環境のメインだったころには大活躍したが、今はそうでもない。

エミュレータ

qemu
いろんな OS をちょっと味見する時に利用。特に CD ブートもの。

cdrtools
この中に含まれる mkisofs が CD ブートものをいじくる過程で便利。

ゲーム

gweled
これだけじゃないが、パズル系のゲームはいい気分転換になる。


10 のアプリ

生活環境として使うマシンという前提のマシンに OS クリーンインストール直後に入れた 10 をリストしてみる。

% cd /var/db/pkg/ ; ls -tr | head | cat -n
  1. xorg-manpages-6.8.2/
  2. xorg-documents-6.8.2/
  3. xorg-fonts-75dpi-6.8.2/
  4. xorg-fonts-100dpi-6.8.2/
  5. screen-4.0.2_1/
  6. ja-nvi-eucjp-1.79.20040401,1/
  7. ja-cannadic-0.95c/
  8. unzip-5.52_1/
  9. ja-qkc-1.0/
  10. libtool-1.5.10_1/

これでは悲しいので、生活環境として使うマシンとして まず準備しておきたい 10 をリストしてみる。

  1. cvsup (とその周辺)
  2. Canna (とその周辺)
  3. nvi-m17n
  4. screen
  5. kterm
  6. mnews (とその周辺)
  7. w3m
  8. WindowMaker
  9. FireFox
  10. enfle

この 10 点があればとりあえず作業できる…かな?

[$Revision: 1.7 $ $Date: 2006.08.08 06:31:40 $]
[EOF]