Month: October 2011

ninix-aya用のプラグインを作ってみた

 - by Don

ninix-ayaのプラグインを作ってみようと思ったのですが、何を作ったらいいかわからないので、とりあえずSSPのプラグインを移植してみようと思い立ちました。

nikolat/HitThunder – GitHub

使ってみて気が付きましたが、ninix-ayaはNOTIFY SSTP/1.1に対応していないのですねver 4.3.2で対応されました。プラグイン自体はSSTPを送信するだけのシロモノなので、先にSSPを起動しておいた後にninix-ayaを起動し、実体化プラグインを実行するとSSPのゴーストに通知されるので正常に実行されていることが確認できます。

SSPの場合はPLUGIN/2.0の仕様に従ってプラグインに対してイベントが通知される形式なので、色々と情報が取得できる上、ベースウェアが起動している間ずっと常駐できます。しかしninix-ayaの場合はPythonスクリプトを実行するだけのシンプルな構成なのであまり凝ったことはしない方が賢明のようです。プラグイン実行ゴーストなどもSSPであればSenderなどで取得できますが、ninix-ayaでは判別するのも難しいかも。

ninix-ayaでpluginを使用する

 - by Don

ninix-aya 4.3.1がリリースされましたのでユーザーレビュー的な記事を書いてみようと思います。

ver4.3ではWindows用インストーラが配布開始されたことと、プラグインに関してのサポート強化が特徴のようです。

Windows用インストーラ

ダウンロード – ninix-aya – SourceForge.JP

こちらからninix-aya-4.x.x.win32.exe をダウンロードして実行します(ninix-ayaの起動に必要な環境が揃っているものとします)。

ninix-aya-installer-error

ninix-aya-installer-error

(´・ω・`)

NOBさんのところではインストールできたらしいので、きれいな心とクリーンなPC環境を備えた人であればインストールできることでしょう。

私はCygwinでmake installしました。

プラグイン

Windows用インストーラには含まれているのかな?ダウンロードページにotenkiyanというのがありますが、多分これですね。

DLしたZIPを展開すると、plugin.txtという定義ファイルと思しきテキストファイルとotenkiyan.pyというPythonスクリプトファイルが入っていました。どうすんだこれ。

多分 ~/.ninix/plugin/ とかいうディレクトリを掘ってそこにフォルダごと突っ込んでおけばいいのだろう。

ninix-aya-plugin-menu

ninix-aya-plugin-menu

(`・ω・´)Bingo!

でもクリックしても無反応(´・ω・`)

何かやり方が間違ってるのかな?プラグインに関するドキュメントっぽいものが書かれる予定があるらしいのでそれまで待つことにします。タイトルは釣りでした。

Windowsでは(多分PyGTKのバグで)Drag and Dropが効かないですが、LinuxではコンソールへのDnDでnarをインストールできるらしいので(試してない)、pluginのzipもDnDでインストールできるのかもしれない(試してない)。仮にそうだとしたら、定義ファイルはplugin.txtとかじゃなくてinstall.txtとdescript.txtで定義したほうが…とか思ったけどninix-ayaの独自規格なら統一する必要もないのかなーとか、うーん。

追記

pluginもConsoleのInstallボタンからインストールできるようです。

動作にはpywapiが必要ということで、インストールしておきます。

設定から"IfGhostに一致するゴーストがいない場合に他のゴーストで再生(SEND/1.4)"(Allowembryo)をONにします。

ninix-plugin-boot-1

ninix-plugin-boot-1


ninix-plugin-boot-2

ninix-plugin-boot-2

これでSEND SSTP/1.4が有効になってplugin実行ゴーストでスクリプトが再生されます。

Windows+Python2.7+ninix-aya

 - by Don

Windowsでninix-ayaを起動するための必要最小限の構成を目指します。

ninix-ayaがPython2.7でも動くらしいことがわかったので、Python2.7を新規インストールするついでのメモです。

自分の環境にはGitとMercurialがインストールされているのでソースを落とすときに利用していますが、ソースを入手するだけなら普通にWebからダウンロードできるはずなので本来は不要です。easy_installやpipでソースからビルドする時にVC++コンパイラを使用するためVisual Studioのcl.exeが必要かもしれない。無ければWindows用のインストーラもあるので大丈夫です。

必要なモジュール

  • Python2.7
  • PyGTK(GTK+)
  • Python for Windows extensions
  • Numpy
  • httplib2(ninix-aya 4.2.10からは不要)
  • ninix-aya

Python2.7

Python 2.7.2 ReleaseからWindows x86 MSI Installer (2.7.2)を落としてインストール

Python27/Scripts と Python27/Lib/site-packages にPathを通しておく

ez_setup.pyをダウンロードしてeasy_installのセットアップ

> python ez_setup.py

終わったらpipをインストール

> easy_install pip

PyGTK

pipではインストールできないのでWindows用インストーラを落とす

ftp.gnome.org

pygtk-all-in-one-2.24.0.win32-py2.7.msiを選択してインストール

Python for Windows extensions

これもpipでインストールできなかったのでソースを落としてビルドする

> hg clone http://pywin32.hg.sourceforge.net:8000/hgroot/pywin32/pywin32 pywin32
> python pywin32/setup.py install

ビルド環境が無い場合はWindows用インストーラもある

Python for Windows extensions – Browse Files at SourceForge.net

Numpy

pipでインストールできる

> pip install numpy

ビルド環境が無い場合はWindows用インストーラもある

Numerical Python – Browse /NumPy at SourceForge.net

httplib2

pipでインストールできる

> pip install httplib2

ninix-aya

> git clone git://git.sourceforge.jp/gitroot/ninix-aya/master.git ninix-aya

Gitが無い場合はサイトからダウンロード

ダウンロード – ninix-aya – SourceForge.JP

真面目にビルドして起動しようとするとCygwinが必要?でもPythonでlib/main.pyを実行すればCygwinなくてもきっと動く。

とりあえずPython2.7でninix-ayaが起動できました。

WindowsでGoogle App Enigne/Pythonの開発環境を再構築してみる

 - by Don

バージョン違いの複数のPythonを整理したくなってきたのでPython2.5を再インストールした。

2.5はGAE/Pでさえ動けば良いのでsslとPILだけ入れれば大丈夫。のはず。

Python 2.5

Python 2.5.4 のインストーラは公式にあるけれど、Python 2.5.6はソースしか置いていない。どこかにインストーラないかなーと探していたらActivePythonがあった。これでインストール。

Python 2.5はVisual Studio 2003でビルドされているらしく、easy_installやpipを使うとsetup.pyでVS2003が無いとエラーで弾かれる。「Cygwinを使ってもインストールできるよー」ってメッセージが出るけどgccのPermissionがどうのこうの言われてうまくいかない。なのでsslとPILはWindows用インストーラから入れることに。

PIL

本家にWindows用インストーラがある。

Python Imaging Library (PIL)

ssl

Windows用のインストーラが pypi.python.org で配布されていたんだけど無くなってしまったらしい。でもやっぱり探すとミラーしてる人がいらっしゃった。

これでとりあえずGAEの開発環境は復元できた。

自動サーフィス生成

 - by Don

SoSiReMiを更新しました。アップロードされたNARにSurface10に相当する画像が入っていなかった場合に、自動で1×1のダミーPNGを挿入するようにしました。既にアップロードされているNARについては、次回アップロード時に反映されます。