非公式インストーラ仕様書
目次
はじめに
この仕様書は,伺か公式ページ内の旧仕様書,履歴などを元につくられた非公式仕様書であることに注意してください。
概要
どのようなファイルでも手動でセットアップすることは可能だが,ユーザに機械的な作業を課す必要性は薄い。配布ファイルセットに適切な設定を施し,特定の手順でアーカイブすることによって,そのファイルは稼働中のゴーストに DnD するだけでインストールすることが可能になる。
稼働中のゴーストへ URI の DnD を行うと自動的にダウンロードした後インストールすることのできるプラットフォームもあります。
フォーマット
ファイルは下記の仕様に基づいて適切な設定を施されたあと,最終的に nar という拡張子を持つ1つのファイルにまとめられる。ただし nar の実体は単なる zip ファイルであり,サーバやマスタの持つ事情によっては拡張子 zip のままリリースしてもよい。
install.txt
INSTALL で用いる書庫は基本的に単なる zip 書庫だが,書庫のルートディレクトリに install.txt が含まれるという点で異なる。MATERIAmainsystem は install.txt の定義を元に適切な設定とファイルコピーを行う。
install.txt 自体は設定のために使用されるだけでインストールされません。
nar
install.txt その他 INSTALL 仕様特有のファイルを含んだ ZIP ファイル。Nanika ARchive の略。発音「なー」
アーカイブの root となるディレクトリ (install.txt のあるディレクトリ) を MATERIA に DnD すると作成される。フォーマット自体は ZIP と何ら変わらない。従って普通に ZIP にしたのち拡張子を NAR に変更しても同じファイルができる。
INSTALL/1.4
この非公式仕様書では,本体が INSTALL/1.4 まで対応している場合に可能となることを例を挙げて書く。
install.txt で使用されるエントリは以下の通り
エントリ名とエントリ値を ,
(カンマ) で区切り,1 行 1 エントリで任意の順番で記述する。
charset | install.txt で使用される文字符号化スキーム |
type | ファイルセットの種別 |
name | ファイルセット全体の名前を表す (必ずしもゴースト等の名前とは限らない) |
directory | ファイルセットが作成するディレクトリ名 |
accept | ファイルを受け入れるゴーストの sakura 側の名前 (descript.txt の sakura.name) |
balloon.directory | バルーンディレクトリ名 |
refresh | 旧来のディレクトリをリセットするか否か (0=否, 1=する) 省略時は 0 |
refreshundeletemask | refresh にあたって削除しないファイル名のリスト (複数記述する場合は : でセパレート) |
script | ゴーストが無反応時に表示するスクリプト (公式には削除されたエントリ) |
type, name, directory は必須エントリです。type が shell 及び supplement の場合は accept も必須となります。
charset は SSP で提案されたエントリです。エントリは任意の順番で記述できるが,このエントリのみ最初の行へ記述することが推奨されている。(参考: 「非公式」伺かシェル仕様書)
ゴースト
構成
root +-install.txt +-ghost +-master +-descript.txt +-shiori.dll .... .. +-shell +-master +-descript.txt +-surfaces.txt +-surface0.png .... ..
上記のように shell を含み起動可能状態となったゴースト (ghost + shell) のアーカイブをマスターアーカイブと言います。(この呼び方は普及しませんでしたが)
install.txt
install.txt には以下のように記述する。
charset,Shift_JIS
type,ghost
name,なるアーカイブ
directory,naru
refresh,1
refreshundeletemask,ghost¥master¥userdic.txt:ghost¥master¥narusystem.txt
- type
-
ゴーストをインストールする場合は
ghost
を指定する。 - name
-
ファイルセットの名前を指定する。ゴーストの名前である必要はない。
- directory
-
ファイルセットのインストール先を指定する。ghost フォルダの下にこの名前のフォルダが作成され,ファイルセットはこのフォルダの中へ展開される。
- refresh
-
上書きインストールを行う際,それまでのゴーストを構成するファイルを削除します。ゴーストのファイル構成が大幅に変わった場合などに使用します。
- refreshundeletemask
-
refresh を行う際,例外的に残すファイルを指定します。
上記の例では既に naru ディレクトリにファイルが存在していた場合,リフレッシュ動作により ghost¥master¥userdic.txt と ghost¥master¥narusystem.txt を除くファイルが削除された後にインストールされます。
ユーザとの関わりで生成した辞書や,稼動時間などゴーストが使用する変数を残すためなどに使用します。
インストール後の構成
上記の例では次のようにファイルがインストールされます。
home +-ghost +-naru +-ghost +-master +-descript.txt +-shiori.dll .... .. +-shell +-master +-descript.txt +-surfaces.txt +-surface0.png .... ..
ゴースト with balloon
ゴーストと共に balloon をインストールすることもできる。
- balloon.directory
-
通常のデータの他に,ホームディレクトリにバルーンデータを配置し,そのディレクトリ名を balloon.directory エントリで指定することで,そのパッケージは with balloon 仕様となる。
構成
root +-install.txt +-ghost +-master +-descript.txt .... +-shell +-master +-descript.txt .... +-clover note +-descript.txt ....
install.txt
install.txt には以下のように記述する。
charset,Shift_JIS
type,ghost
name,なるwithクローバー
directory,naru
balloon.directory,clover note
インストール後の構成
上記の例では次のようにファイルがインストールされます。
home +-ghost +-naru +-ghost +-master +-descript.txt .... +-shell +-master +-descript.txt .... +-balloon +-clover note +-descript.txt ....
このようにしてインストールされたゴーストは,初回起動時にデフォルトバルーンではなく,同時にインストールされたバルーンを選択した状態で起動する。
シェル
既にインストールされたゴーストへシェルの追加を行う。
構成
root +-install.txt +-descript.txt +-surface0.png ....
install.txt
install.txt には以下のように記述する。
charset,Shift_JIS
type,shell
name,へたさくら
accept,さくら
directory,hetasakura
- type
-
シェルをインストールする場合は
shell
を指定する。 - name
-
ファイルセットの名前を指定する。シェルの名前である必要はない。
- directory
-
ファイルセットのインストール先を指定する。shell フォルダの下にこの名前のフォルダが作成され,ファイルセットはこのフォルダの中へ展開される。
- accept
-
accept はこのファイルを受け入れるゴーストの sakura 側の名前 (descript.txt の sakura.name) を表す。ここで指定されたゴースト以外はこのファイルを受け付けない(拒否される)。
上記の例では,稼働中のゴーストが さくら の時に DnD した場合にのみインストールされる。
accept が sakura.name なのは歴史的経緯によるものであり,id エントリに切り替えるべきだとは思いますが,現状 id で実装しているプラットフォームはありません。
インストール後の構成
上記の例では,ゴーストのフォルダが first とすれば次のようにファイルがインストールされます。
home +-ghost +-first +-ghost +-master .... +-shell +-master .... +-hetasakura +-descript.txt +-surface0.png ....
シェルのインストールが終了すると,自動的にそのシェルへと変更される。
サプリメント
既にインストールされたゴーストへ汎用的なファイルの追加を行う。
構成
root +-install.txt +-ghost +-master +-descript.txt +-makoto.dll .... +-shell +-advanced +-descript.txt +-surfaces.txt +-surface0.png .... ..
supplement 書庫のファイル構成は見かけ上通常のゴーストパッケージと変わらない。この構造により supplement 書庫は既存のゴーストに対しどのようなファイルでも追加できる。
install.txt
install.txt には以下のように記述する。
charset,Shift_JIS
type,supplement
name,パワーアップせりこ
accept,せりこ
- type
-
サプリメントをインストールする場合は
supplement
を指定する。 - name
-
ファイルセットの名前を指定する。
- accept
-
accept はこのファイルを受け入れるゴーストの sakura 側の名前 (descript.txt の sakura.name) を表す。ここで指定されたゴースト以外はこのファイルを受け付けない(拒否される)。
上記の例では,稼働中のゴーストが せりこ の時に DnD した場合にのみインストールされる。
accept が sakura.name なのは歴史的経緯によるものであり,id エントリに切り替えるべきだとは思いますが,現状 id で実装しているプラットフォームはありません。
インストール後の構成
上記の例では,ゴーストのフォルダが first とすれば次のようにファイルがインストールされます。
home +-ghost +-seriko +-ghost +-master +-descript.txt +-shiori.dll +-makoto.dll .... +-shell +-master +-descript.txt .... +-advanced +-descript.txt +-surfaces.txt +-surface0.png ....
dll の上書きインストールが可能なのかは検証していないので不明
インストール後にリロードされるのかは検証していないので不明
バルーン/ヘッドラインセンサ/プラグイン
以下にバルーンの場合を記す。
構成
root +-install.txt +-descript.txt +-balloons0.png +-kanon.cur .... ..
install.txt
install.txt には以下のように記述する。
charset,Shift_JIS
type,balloon
name,かのん
directory,kanon
- type
-
バルーンをインストールする場合は
balloon
,ヘッドラインセンサの場合はheadline
,プラグインの場合はplugin
を指定する。 - name
-
ファイルセットの名前を指定する。
- directory
-
ファイルセットのインストール先を指定する。
インストール後の構成
上記の例では次のようにファイルがインストールされます。
home +-balloon +-kanon +-descript.txt +-balloons0.png +-kanon.cur .... ..
INSTALL/1.5 (SSP拡張)
INSTALL/1.5 は SSP BUGTRAQ で提案されました。
ゴースト with plugin/headline
バルーンと同様,ゴーストと共にプラグイン,ヘッドラインセンサをインストールする。
構成
root +-install.txt +-ghost +-master +-descript.txt .... +-shell +-master +-descript.txt .... +-globalprop +-descript.txt .... +-sspbugtraq +-descript.txt ....
install.txt
install.txt には以下のように記述する。
charset,Shift_JIS
type,ghost
name,翔子
directory,syoko
plugin.directory,globalprop
headline.directory,sspbugtraq
- plugin.directory
-
通常のデータの他に,ホームディレクトリにプラグインデータを配置し,そのディレクトリ名を plugin.directory エントリで指定することで,そのパッケージは with plugin 仕様となる。
- headline.directory
-
通常のデータの他に,ホームディレクトリにヘッドラインセンサデータを配置し,そのディレクトリ名を headline.directory エントリで指定することで,そのパッケージは with headline 仕様となる。
インストール後の構成
上記の例では次のようにファイルがインストールされます。
home +-ghost +-syoko +-ghost +-master +-descript.txt .... +-shell +-master +-descript.txt .... +-plugin +-globalprop +-descript.txt .... +-headline +-sspbugtraq +-descript.txt ....
with balloon/plugin/headline の refresh
install.txt
balloon.refresh,true
balloon.refreshundeletemask,arrow0.png:arrow1.png
plugin.refresh,true
plugin.refreshundeletemask,log.txt
- *.refresh
-
- balloon.refresh
- plugin.refresh
- headline.refresh
それぞれ with 仕様でインストールされるファイルセットの refresh 制御を行う。
SSP では *.refresh エントリに対し,
0
,1
ではなくfalse
,true
で記述することができます。 - *.refreshundeletemask
-
- balloon.refreshundeletemask
- plugin.refreshundeletemask
- headline.refreshundeletemask
それぞれ with 仕様でインストールされるファイルセットの refresh を行う際,例外的に残すファイルを指定。
with balloon/plugin/headline のアーカイブ内ディレクトリ指定
構成
root +-install.txt +-ghost .... +-shell .... +-bln +-descript.txt .... +-plg +-descript.txt ....
install.txt
install.txt には以下のように記述する。
charset,Shift_JIS
type,ghost
name,ともよ
directory,tomoyo
balloon.source.directory,bln
balloon.directory,sharp
plugin.source.directory,plg
plugin.directory,sharp
- *.source.directory
-
- balloon.source.directory
- plugin.source.directory
- headline.source.directory
それぞれ with 仕様でインストールするファイルセットの nar 内でのフォルダ名を指定する。
インストール先のフォルダ名が同一の場合などに利用できます。
インストール後の構成
上記の例では次のようにファイルがインストールされます。
home +-ghost +-tomoyo +-ghost .... +-shell .... +-balloon +-sharp +-descript.txt .... +-plugin +-sharp +-descript.txt ....