[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]
Re: [MD:6382] new netinstall
- X-ml-count: 6400
- Subject: Re: [MD:6382] new netinstall
- From: "M.Fujii" <boochang@xxxxxxxxxxxx>
- Date: Sun, 13 Mar 2005 23:18:42 +0900 (JST)
- X-mailer: Mew version 4.1 on Emacs 21.4 / Mule 5.0 (SAKAKI)
藤井です。
From: "M.Fujii" <boochang@xxxxxxxxxxxx>
Subject: Re: [MD:6382] new netinstall
Date: Sun, 13 Mar 2005 23:02:44 +0900 (JST)
> > 藤井さんは Meadow の commit 権限持ってるんですよね??
> > じゃあ netinstall repository もアクセスできるはずなので。
> > (URL は Meadow の隣りです)
>
> ありがとうございます。遅ればせながら、ソースを commit しました。
commit したソースは一応動作するところまで作成しました。
インストール作業が単にファイルを展開するだけで良いパッケージならば、い
ままでどうりのパッケージと setup.ini が用意されていれば動作します。
あとの作業としては、こんなところだと思います。
- 外見の調整
- 日本語版
- 機能改善・デバッグ
以下長文ですが、変更した。setup.exe についてまとめました。
<<< 実装の方針 >>>
なお、現状は従来の netinstall の仕組みをそのままキープするのではなく、
Cygwin setup の持つ機構をそのまま利用する方向で実装されています。
このあたりは、パッケージ作成者やユーザの皆さんとの議論を踏まえて改善し
ていければと思っています。
<<< ビルド方法 >>>
Cygwin を利用します。bash から以下のようにビルドできます。
$ ./configure -C --host=i686-pc-mingw32 --build=i686-pc-cygwin \
'CC=gcc -mno-cygwin' 'CXX=g++ -mno-cygwin'
$ make
<<< ディレクトリ構成 >>>
ディレクトリ構成は以下のように、Meadow のバージョン番号を含まないツリー
となります。
Meadow
+ bin
+ bitmap
+ data
+ etc
+ info
+ leim
+ lisp
+ lock
+ packages ------------- Netinstall用のdir
| + etc
| + info
| + lisp
| + default.el ------------ auto-autoloads.elをロードする
| + pkginfo
| | + $PKGNAME ------------ パッケージ名
| | | + MANIFEST ---------- file list (?)
| | | + Makefile.pkg ------- makefile for package
| | | + _pkginfo ------- オリジナル Elisp URL.
| | | + auto-autoloads.el -- パッケージ個々のdefault設定
| | ...
| + postinstall ------------- インストール後処理スクリプトを置く(New!!)
| + preremove --------------- インストール前処理スクリプトを置く(New!!)
| + setup ------------- Netinstall install DB and log
+ site-lisp
<<< パッケージの作り直しについて >>>
現状では、info 関連以外のパッケージはそのままでも利用可能です。
info 関連のパッケージは、スクリプト実行について従来の処理を実装してい
ないので、作り直しが必要です。
<<< レジストリの書き込み >>>
以下に書き込みます。
HKEY_LOCAL_MACHINE\Software\GNU\Meadow\netinstall3
したがって、setup.exe 本体の実行には Administrators (もしくは Power
Users) 権限を持つユーザで実行する必要があります。(従来どおり)
<<< スクリプト実行について >>>
以下のようにスクリプトをインストール後、アンインストール前にそれぞれ実
行することができます。バッチファイルが実行されるとき、カレントディレク
トリは Meadow のインストールディレクトリに設定されています。
[ インストール後のスクリプト実行について ]
パッケージに packages/postinstall/*.bat が存在すれば、インストール後
に実行されます。拡張子が bat であれば、ファイル名は任意です。
なお、実行されたスクリプトはファイル名末尾に .done が付加されます。
従来のインストール後処理は実装されていません。
[ アンインストール前のスクリプト実行について ]
アンインストール前に c:/Meadow/packages/preremove/<パッケージ名>.bat
の呼び出しを試みます。インストール時に上記ファイルが展開されていればそ
れが実行されます。
なお、実行されたスクリプトはファイル名末尾に .done が付加されます。
従来のアンインストール前処理は実装されていません。
<<< MANIFEST について >>>
パッケージのアンインストール時にはパッケージ中の MANIFEST ファイルは参
照されません。setup.exe が自前で管理します。
<<< setup.ini について >>>
依存関係なども記述できます。
文法などについては以下を参照下さい。
http://sourceware.org/cygwin-apps/setup-head.ini.html
<<< 既知のバグ >>>
インストールの最後の画面で Meadow の install.exe を実行するかどうかを
選択できるようにしています。
現状この機能の実行時に問題があり、install.exe を -s オプション付きで起
動して、スタートメニューへのアイコン登録をしないようにさせています。
オプションなしで起動した場合には、以下のような問題が発生します。
この画面から Meadow の install.exe を実行すると、スタートメニューにア
イコンを登録するあたりで install.exe が固まります。setup.exe も
install.exe の終了を待っているので同じく固まります。
とりあえず install.exe が動作している DOS 窓で CTRL-C で終了させる。
setup.exe 自体は一応終了するですが、しばらくすると Windows が不安定に
なり、再起動せざるを得なくなります。
以上です。
--
藤井 正行 / Masayuki FUJII ( boochang@xxxxxxxxxxxx )