なるアプリを書いてみた。
というか、正確にはもともと Gip という名前で、インターネット計算機とか IP アドレス計算機とか言われていたアプリを書き直しただけなんだけれど。このオリジナルの Gip は C++ 言語と gtkmm を使ったアプリで、かなり前 (2005年くらい) からリリースが止まっている。気になるほどではないバグが残っているだけで、特に不便はないのだけれど、C++ ではなく C言語の GObject を使ってクラスを実装し、ついでに GTK+ のツールキットをアップグレードしてみた。主な変更点は次のとおり:
- ビルド環境を autotools にした
- ツールキットを GTK+ バージョン3にアップグレードした
- GtkBuilder クラスのユーザ・インタフェースにした
- オリジナルにあったバグを修正した
- GOject 化した
- うちのサイトで公開した
ツールキットは違うけれど、ユーザ・インタフェースの構成はほぼ同じ (芸がなくて済みません):
Gip (オリジナル)
GIP-NG
オリジナルと変わらない操作性なので違和感はないとは思うけど、起動時にデスクトップの中央に配置されるようにした (ホントはウィンドウマネージャに委譲するのがスジだとは思うけど)。
ソース tarball をダウンロードするか、リポジトリをチェックアウトするかしてビルドできる。実際にインストールしなくてもその場で実行して試せるビルド・オプション (–enable-run-in-place) なんかを用意した。デバッグ文は環境変数 (export MKF_DEBUG=x) を指定すると表示されるようになっている。debian パッケージの debhelper 関連のファイルもあり:
$ tar xvfJ gip-ng-1.9.90.tar.xz $ cd gip-ng-1.9.90 $ ./configure --enable-debug --enable-run-in-place もしくは $ git clone git://mikeforce.net/gip-ng $ cd gip-ng $ ./autogen.sh --enable-debug --enable-run-in-place $ make $ export MKF_DEBUG=x $ ./src/gip-ng # make install
オリジナルで実装されている機能は全て移植済み。あと、一応 Gip の開発者向けメーリングリストにも告知しておいた (が、もしかしたらメーリングリストも停止している!? )。
細かい話しだと、GtkTable を使っていたり、desktop ファイルが l10N 化されてないなどあるけど、こちらは別の機会に移植メモでもまとめる予定。
あと、ここで言うのも何だけど、各国語のメッセージ翻訳カタログの更新などは大歓迎 (And updating and new translations are always welcome.)。
あっ、そうそう GIP-NG は GIP Next Generation の略です (こちらも芸がなくて済みません)。
GIP-NG バージョン 1.9.90: 開発版のソース tarball (xz 圧縮)
Git リポジトリ: 開発リポジトリ
バグの報告はメールの他にこちらにて。