Install設定¶
install.txt¶
install.txt¶
概要¶
ファイル構成「インストール」のページも参考に。
ゴースト、バルーン、シェル他の伺か/SSPコンテンツアーカイブ(.narなど)のインストール設定ファイル。 全てのアーカイブは解凍して手動でインストールする事もできるが、適切に設定されたinstall.txtの存在によって、インストーラ機能が有効になり、アーカイブのD&Dなどの簡易な手段でのインストールが可能となる。
記述例と基本の書き方¶
ゴーストの場合(バルーンやプラグインもtype部分を変えるだけでほぼ同じ)
charset,Shift_JIS
name,凡例さん
type,ghost
directory,example
追加シェルの場合
charset,Shift_JIS
name,凡例さんアルティメットフォーム
type,shell
directory,ultimate
accept,凡例さん
ゴーストのサプリメント(追加ファイル)の場合
charset,Shift_JIS
name,凡例さん猫化パッチ
type,supplement
accept,凡例さん
ゴーストにバルーンを同梱する場合
charset,Shift_JIS
name,凡例さん
type,ghost
directory,example
balloon.directory,example_balloon
balloon.source.directory,balloon
※SSPのみ 複数インストール用パッケージの場合の最上位に置くもの
(同梱する各内容に置くinstall.txtは普通どおりの記述でよい)
charset,Shift_JIS
name,凡例さんファミリー一括入居パッケージ
type,package
charset指定は必ず1行目で行う(Shift_JISの場合省略可)。
name、typeは必須。directoryもtypeがsupplementかpackage以外の場合は必須。
それ以外の項目は、必要に応じて指定する。
追加シェルやサプリメントの場合、想定外のゴーストにインストールされる事を避けるためにaccept指定が利用できる。
特にサプリメントは予期せぬファイルの上書き破損事故の危険性があるためほぼ必須。
accept指定に用いるのはゴースト名ではなく本体側名であることに注意。
SSPでは、バルーンやプラグインをゴーストかシェルに同梱させる場合、*.directoryを利用する。
詳しくは「同時インストール」を参照。
なおnameは主に、インストール系SHIORI EventのReferenceでの通知内容に用いられる。
ゴーストによってはこの情報を利用して、インストールされた直後の対象へ切り替えを実行できるような機能を備えている場合があるが、descript.txtにある実際のゴーストのnameとinstall.txtでの表記が異なると、その切り替えが正常に働かなくなるので注意。
同時インストール¶
概要¶
SSPでは、ゴーストやシェルのアーカイブにバルーンなどを同梱して、まとめてインストールさせる事ができる。
同梱する内容は「*.」で始まるエントリで指定し、*の部分には同梱する内容の種別が入る。
*に書けるのは下記の5種類。
- balloon: バルーン
- headline: ヘッドラインセンサ
- plugin: プラグイン
- calendar.skin: カレンダーの外見ファイル
- calendar.plugin: カレンダーのスケジュールセンサ
typeでの表記と異なり、カレンダー系はドット区切りである事に注意(calendar skinではなくcalendar.skin)。
アーカイブ自身のtypeを問わず機能するが、実用上はtypeがghostかshellのアーカイブで用いる。
複数同梱する場合の番号の付け方¶
同じ種別のものを複数同梱する場合は、*の部分を balloon0、balloon1、… のように、種別の後ろへ0始まりの番号を付けて並べる。(SSP 2.7.00以降)
探索は無印→0→1→2…の順に行われ、見つからない番号が出た時点で打ち切られる。
そのため欠番を作ってはいけない。例えばballoon0とballoon2だけを書いた場合、balloon1が無い時点で打ち切られるため、balloon2は読まれない。
無印と0は別のものとして扱われる。balloonとballoon0を両方書けば、バルーンが2個インストールされる。
*.directory、*.source.directory、*.refresh、*.refreshundeletemaskは、いずれも番号ごとに独立して指定できる。
なお、ゴーストやシェルに紐づくバルーンとして設定されるのは最初の1個だけである。
2個目以降はインストールされるだけで、そのゴーストの標準バルーンにはならない。
記述例¶
ゴーストにバルーン2個とプラグイン1個を同梱する場合
charset,Shift_JIS
name,凡例さん
type,ghost
directory,example
balloon0.directory,example_balloon
balloon0.source.directory,balloon_normal
balloon1.directory,example_balloon_ex
balloon1.source.directory,balloon_special
plugin0.directory,example_plugin
charset,文字コード¶
表示する文字コード。旧い環境との互換性を考慮する場合はShift_JIS、それ以外はUTF-8を推奨。
既定値: (OSの標準設定またはSSP->国際化->省略時の文字コード->テキスト定義)
対応: SSP / CROW
name,オブジェクト名¶
そのオブジェクトの名前。
既定値: 省略不可
対応: Materia / SSP / CROW
type,種別¶
アーカイブの内容の種別。種類は下記の通り。
- ghost: ゴースト
- shell: ゴーストへの追加シェル
- supplement: ゴーストへの追加ファイル
- balloon: バルーン
- plugin: プラグイン
- headline: ヘッドラインセンサ
- language: (SSPのみ)言語パック
- calendar skin: (SSPのみ)カレンダーの外見ファイル
- calendar plugin: (SSPのみ)カレンダーのスケジュールセンサ
- package: (SSPのみ)複数インストール用パッケージ
[旧仕様](install-txt/SSPのみ) calendar のみを書くと calendar skin と同等の扱いになる。
calendar pluginが無かった時代の互換用途であり、現在は書いてはいけない。
既定値: 省略不可
対応: Materia / SSP / CROW
accept,本体側名¶
アーカイブを受け取ることができるゴーストの本体側の名前(=\0名,sakura名)。
もしくはゴースト側descript.txtのinstall.acceptに設定してある名前でも可。
追加シェルや追加ファイル(supplement)など、特定ゴーストに渡す内容では必ず用いる。
既定値: 挙動なし
対応: Materia / SSP / CROW
directory,ディレクトリ名¶
そのアーカイブインストール後のディレクトリ名。半角英数推奨。
既定値: 省略不可/type,packageの場合のみ不要。
対応: Materia / SSP / CROW
bootghost,ディレクトリ名¶
type,packageのみ有効。initial_install.narまたはnar関連付けからSSPを起動した際に、起動すべきゴーストのディレクトリ名を指定する。
対応: SSP 2.7.52
refresh,数値¶
数値に1をセットすると同じディレクトリのファイルを全て消去してからインストールする。
既定値: 1以外の任意値(refresh無効)
対応: Materia / SSP / CROW
refreshundeletemask,ファイル名1:ファイル名2...¶
refreshの消去から除外するファイル名。
複数ある場合はコロン「:」で区切る。
パス指定不可。全てのディレクトリの指定したファイル名のファイルが除外される。
既定値: 挙動なし
対応: Materia / SSP / CROW
*.directory,ディレクトリ名¶
同時インストールする内容のインストール後のディレクトリ名。半角英数推奨。
*部分の書き方と、同じ種別を複数同梱する場合の番号の付け方は「同時インストール」を参照。
ここに指定できるのは1階層のディレクトリ名だけで、パス区切りは使えない(「_」に置換される)。
アーカイブ自身のtypeを問わず機能するが、実用上はtypeがghostかshellのアーカイブで用いる。
既定値: 挙動なし
対応: SSP
*.source.directory,ディレクトリ名¶
同時にインストールする内容のアーカイブ内でのディレクトリ名。半角英数推奨。
同時にインストールする内容の、設置後のディレクトリ名とアーカイブ内でのディレクトリ名が一致しない場合に設定。
番号付き(balloon0.source.directoryなど)も同様に指定できる。
SSP 2.9.00以降は、extra\bal1 のようにアーカイブ内の階層を辿る相対パスも指定できる。
区切りは「\」「/」のどちらでもよい。「..」による上位階層への参照はできない(取り除かれる)。
2.9.00未満では区切りが「_」に置換されるため、1階層のディレクトリ名しか指定できない。
既定値: *.directoryで設定したディレクトリ名
対応: SSP
*.refresh,数値¶
同時にインストールする内容のrefresh設定。
番号付き(balloon0.refreshなど)も同様に指定できる。
既定値: 1以外の任意値(refresh無効)
対応: SSP
*.refreshundeletemask,ファイル名1:ファイル名2...¶
同時にインストールする内容のrefreshundeletemask設定。
番号付き(balloon0.refreshundeletemaskなど)も同様に指定できる。
既定値: 挙動なし
対応: SSP
delete.txt¶
delete.txt¶
概要¶
ファイル構成「ネットワーク更新」のページも参考に。
クライアント(ユーザ)のファイルは、更新時にサーバ(作者)のファイルで上書きされるだけで、同期されるわけではない。
つまり、一度クライアント側にダウンロード・作成されたファイルは、例えサーバ側で削除したとしても取り除く事ができない。
従って、公開後に一度公開したファイルを削除する必要がある場合にはdelete.txtにそのファイルを記載しなければならない。
なおdelete.txtは削除実行後も自動で削除されず、一度記載した内容は、変更しない限り永久に除外され続ける。
以下はSSPのみの仕様。
- charset,(文字コード): ファイルの文字コードを指定する
記述例¶
ghost\master\ai.dtx
ghost\master\testdict\
shell\master\surface110.png
相対パス¶
ネットワーク更新時に削除するファイルをゴーストのホームフォルダからの相対パスで列挙する。
相対パスの階層は「\」区切り。
フォルダごとの指定も可能で、その場合は末尾を\で終える。
既定値: 挙動なし
対応: Materia / SSP / CROW
developer_options.txt¶
developer_options.txt¶
概要¶
ファイル構成「ネットワーク更新」・ファイル構成「インストール」のページも参考に。
SSPがアーカイブやネットワーク更新情報ファイルの作成時に、対象とするファイルにオプションを設定するためのもの。
SSPにゴーストなどのパッケージのフォルダをD&Dすることで、アーカイブ(.nar)やupdateファイル(updates2.dau)を作成する機能があるが、その機能の実行時に参照される。
従って原則的には他のツール、「そだて」や「ゴースト配布系自動化システム」を使ってそれらのファイルを作成した場合は全く無関係なので注意。
例外として、「さとりすと」のようにdeveloper_options.txtを読み取って利用する機能が実装されているものもある。
記述例¶
ghost/master/savedata.txt,noupdate
shell/old/,nonar
ghost/master/profile/,nonar,noupdate
注意点¶
設定は一つの対象(ファイル・フォルダ)に対して1行で行う事に注意。例えば以下のような記述を行うと、後ろ(下)で行っている設定だけが反映されて、nonarオプションが無効になる。
ghost/master/profile/,nonar
ghost/master/profile/,noupdate
二つのオプションを指定する場合、正しくは先述の通り
ghost/master/profile/,nonar,noupdate
とする。
相対パス,オプション1,オプション2,...¶
ゴーストのホームフォルダからの相対パスで指定したファイル・フォルダについて、カンマ区切りでオプションを指定する。
相対パスの階層は「\」でなく「/」で区切る。
フォルダを指定する場合は、末尾に/を付ける。
ワイルドカードとして*と?を使用可能 (SSP 2.5.17より)
オプションの内容は以下。
- nonar: nar作成時に対象をnarに含めない。
- noupdate: updates2.dau(updates.txt)作成時に対象を更新対象に含めない。
いずれもファイル作成時の制御であるため、SSPや本ファイルを認識可能なアプリの機能でnar、更新ファイルを作成する場合に限って有効である事に注意。
既定値: 挙動なし
対応: SSP
自動的に除外される対象¶
SSPがnar/updates2.dau(updates.txt)を作成する場合、developer_options.txtの指定がなくとも以下のファイル・フォルダは自動的に対象から除外される。
ファイル
- desktop.ini
- thumbs.db
- folder.htt
- mscreate.dir
- .DS_Store
- _CATALOG.VIX
フォルダ
- profile/
- var/
- __MACOSX/
- XtraStuf.mac/
.narignore / .updateignore / .narinclude / .updateinclude¶
.narignore / .updateignore¶
developer_options.txtの記法より柔軟性をもたせるため、.gitignoreの記法をそのまま使えるようにしたものが、.narignore/.updateignoreである。
記法は .gitignoreのマニュアル を確認するか、LLM(テキスト生成AI)にやりたいことを質問して生成してもらうとよい。
ただし.gitignoreと異なり、サブディレクトリに置いても機能しない。ゴーストのルートディレクトリ直下に置いた場合のみ有効である。
伺か限定の特殊機能として、include:指定がある。たとえば
include:.narignore
と書くと、.narignoreファイルの内容をまるごとこの行の位置に挿入したかのように処理する。
include:に指定する相対パスは、ゴーストのルートディレクトリを基準とするのではなく、その行が書かれているファイル自身があるディレクトリを基準に解決される。読み込んだ先のファイルの中でさらにinclude:を書くこともでき、その場合の基準ディレクトリは「今読み込んだファイルのあるディレクトリ」へとその都度更新される(親から子、子から孫へと基準が移動していく)。
この再帰読み込みには上限があり、最大3階層まで辿れる。それを超える深さのinclude:は読み込みを拒否される。パスの区切り文字は / と \ のどちらで書いてもよい。
例えばゴーストのルートディレクトリ直下の.narincludeにinclude:sub/extra.txtと書くと、sub/extra.txtを読み込む。そのextra.txt内でさらにinclude:foo.txtと書いた場合は、ゴーストのルートディレクトリではなく、extra.txtが置かれているsub/ディレクトリを基準に、sub/foo.txtを読み込む。
.narinclude / .updateinclude¶
.narignore/.updateignoreのホワイトリスト版。ここに書いたものだけが更新ファイル/NARに格納される。
サブディレクトリの扱いがgitignoreと異なり、たとえばshell/masterとだけ書いてshell/は書かなくても、親ディレクトリをきちんと含んで処理する。
また.narignore/.updateignoreと同様、.gitignoreと異なりサブディレクトリに置いても機能しない。ゴーストのルートディレクトリ直下に置いた場合のみ有効である。
updates_def.txt¶
補足¶
[旧仕様]であり、現在はdeveloper_options.txtで指定する。
相対パス,ignore¶
ゴーストのホームフォルダからの相対パスで指定したファイルについて、カンマ区切りでオプションを指定する。
フォルダごとの指定は不可。
ignoreオプションがあると、updates2.dau(updates.txt)作成時に対象を更新対象に含めない。
既定値: 挙動なし
対応: SSP