2013年3月23日土曜日

Zero Installのフィードを作成し、Tera Termをインストールする

 
2013-10-07
  • このエントリーの情報は古くなってしまったので、新バージョン用に書き直しました。新しいエントリーは こちらです。一応このエントリーも残しておきます。


内容をすべて検証しておらず、間違った情報が含まれているかもしれません。間違いを見つけ次第修正したいと思います。

2013-05-06
  • この方法だとインストールディレクトリにデータが保存できないため、TeraTermの設定ファイルなどが更新できないことに気が付きました。

はじめに


UbuntuやFedora、GentooなどのLinuxを使っているとアプリケーションをインストールするのは実に簡単なことです。これらのLinuxではコマンドとソフトウェア名を入れれば自動的にインターネットからアプリケーションをインストールしてくれますし、アップデートも自動で行ってくれます。とても便利ですし、常に最新版というのは気分のいいものです。

最近ではMacでもMac AppStoreがありますし、AndoroidスマートフォンでもGoogle Playとかあります。 ゲームであれば、Steamで購入済みのものであれば、ダウンロード、インストールが何度でも自動で出来ます。時代の潮流はまさにクラウドです。

それに比べて、我らがWindowsではどうでしょうか。せいぜいWindows8のWindows Storeでめったに使わないメトロスタイルアプリのインストールができるぐらいです。

アプリケーションをウェブからインストールしようとすると、インストール方法を調べたり、ダウンロードページが怪しくないか調べたりと結構な手間です。方法を忘れるとそれをアップデート毎・自分の使うPC毎に行なうはめになります。その労力はかなりのものです。


過去にAppSnapGetItを試してみましたが、インストールされるアプリケーションの更新がやや遅かったりしてだんだん使わなくなってしまいました。たくさんのアプリケーションの情報を随時更新するのはやはり大変なことなのだと思います。

ということでSourceForge.JPのZero Install記事を読んだ時もあまり期待はしていませんでした。しかし、使ってみて気づいたのは、インストールに使用するフィードは1つのソフトウェアについて記述する形式ため、いろいろな人が作成し公開しています。そのため(人にもよるでしょうが)現在のところ更新が早いです。また、好きなバージョンを選んでインストールできます。マルチプラットフォームです。

今のところWindowsで公開されているフィードは多くはないようですが、フィードが古かったり、公開されていなければ、フィードを簡単に作成出来ます。条件としてはソフトウェアがzipファイルなどのサポートされている圧縮形式で配布されていることぐらいです。

ということで、このエントリでは、Tera Termのローカルフィードを作成し、インストールする方法を書きます。


Zero Install Publishing toolsをインストールする


まずZero Install を使って好きなソフトウェアをインストールするためには、フィードを作成する必要があります。フィードはXMLファイルですが、使いやすい作成ツールが用意されています。ツールはZero Installでインストールできるため、まずZero Install自体をインストールしましょう。

Zero Installをダウンロードページからダウンロードします。Windows SetupZip Archiveの2つがあります。Zip Archiveはポータブルバージョンとなります。どちらでも構いませんが、ここではWindows Setupをインストールすることにします。

インストールが終わったらスタートメニュー(画面)からZero Installを起動します。 起動後、「Catalog」タブを押すとソフトウェアの一覧が表示されます。中に「Zero Install Publishing tools」というものがあります。右の「Run」というボタンを押せばダウンロードが始まり、ダウンロードが終わると実行することができます。毎回一覧から探すのは手間な場合は「+」ボタンを押して「My applications」に登録しましょう。


Zero Install Publishing toolsを起動させると、各種設定画面が表示されます。



Tera Termのフィードを作成する。


基本情報の入力

さて、フィード作成を開始しましょう。Zero Install Publishing toolsを起動し、まず「General」画面に入力して行きます。今回は以下のように入力しました。

Name:「Tera Term」を入力。
Categories:「Network」にチェック。
Summary: 「en」を選択、右に「Terminal emulator (communication program)」を入力。
   (マニュアルのはじめのページに書いてあったのでそのまま転記。)
Icon URL:「http://ttssh2.sourceforge.jp/favicon」を入力し、「Add」ボタンを押す。
Homepage:「http://ttssh2.sourceforge.jp/」を入力。



Interface URIについてはフィードをインターネットで公開する場合、公開するURLを入力します。今回は公開しないローカルフィードですので何も入力しません。

SummaryやDescriptionは複数の言語で入力出来ます。日本語の説明も入れたければ「ja」や「ja-JP」を選びます。入力された言語については、言語のところに「*」がつきます。

Iconについては、インターネット上にpngまたはicon形式のものがあれば、Zero Installの画面やショートカットアイコンとして表示出来ます。今回はプロジェクトページのfaviconを指定しました。追加したものを選んで「Preview」ボタンを押すと右に表示されます。複数追加できるようですが、Icon形式のモノについては、デスクトップなどのアイコンに、png形式のものについては、Zero Installの画面に表示されるようです。(一部未確認)

コマンドプロンプトで実行するコマンドはneeds Terminalを選択しておくと、インストール後、設定すれば、PATHが通る位置にコマンドを入れてくれます。


グループの作成


次に「Feed structure」タブを選び、メインとなるフィードの構造を入力します。


まず画面には「Interface」とだけ書かれています。この下に情報を入力してきます。フィードにはインストールするソフトウェアの複数のバージョンやプラットフォームを登録することができます。また共通の項目はグループで囲むことにより、設定を一度に記述することが可能です。

グループで設定出来る項目はバージョンや実行ファイル名、動作するプラットフォーム、ライセンス安定版など色々あります。グループは複数個、複数階層作成することが可能なので、必要なだけ作成します。とりあえずTera TermはWindows版しかありません。構成などは配布物間であまり変わりがないので、ここではグループを一つだけ作成し、その中に各バージョンの情報を入れることにします。


ではグループを作成します。「Interface」をクリックして選択したら、右の「Group」ボタンを押します。「Interface」の下に「Group」と表示されるので、「Group」をダブルクリックし、「Edit group」画面を表示させます。以下のように入力します。

License:「BSD License (revised)」を選択。
   BSDライセンスは「original」と2通りありますが、宣伝条項がないのでおそらく
   「rivised」だと思います。
Language:「en」「ja」「fr」「de」「ru」を追加。
   Tera Termを動かすと上の5つの言語が選べるようです。
   地域コードはよくわからなかったので省いています。
OS:「Windows」を選択。



インプリメンテーションの作成

グループが出来ましたので、その下にインストールするソフトウェアの情報を入力しましょう。


まず、先ほど作成したグループを選び、右の「Imprementation」ボタンを押します。グループの下に「()」という表示が出るので、ダブルクリックし、「Edit imprementation」画面を表示させます。「Edit group」画面と似たような画面ですね。Tera Termの現在のバージョンは4.77です。ここでは以下のように入力します。

Version:「4.77」と入力。
Release date:チェックボックスをチェックし、2013年2月28日を選択。
Stability:「Stable」を選択。


あと、「Main file」に実行するファイル名を相対パスで入れておけば、「Run」ボタンを押した時に実行してくれます。「ttermpro.exe」を入力しておきたいところですが、「ttpmacro.exe」も実行したくなるかもしれません。実行したいファイルが複数あるので、実行ファイルは別の場所でまとめて登録することにします。

その他についてはグループで設定されていますし、項目のほとんどは必須項目でないので、必要であれば入力を行います。


アーカイブの入力


まだソフトウェアをダウンロードする場所を設定していませんでした。ダウンロードする場所を登録するために、先ほど入力したインプリメンテーションをクリックし、「Archive」ボタンを押します。新たにアーカイブが追加されるので、例によってArchiveをダブルクリックします。


アーカイブをダブルクリックすると、「Edit archive」画面が表示されます。



まず、「Archive Url」にTera TermのダウンロードURLを入力します。登録できるファイルの形式は一番上の「Archive format」をクリックするとみることができます。ここではzipファイルを登録しますが、SourceForgeなのでダウンロードをクリックした後、JavaScriptで飛ばされて、CGIで飛ばされてとなるのですが、最終的なダウンロード先を入力して下さい。ダウンロードが始まった時点でダウンロードしているURLを見たほうが間違いないかもしれません。ここでは「http://jaist.dl.sourceforge.jp/ttssh2/58215/teraterm-4.77.zip」を入力しました。

ダウンロードURLを入力したら、「Download」ボタンを押し、アーカイブをここでダウンロードします。保存先の選択がありますが、ダウンロードして情報を取得するだけなので、どこでも構いません。ダウンロードが完了すると「Extract archive」ボタンが押せるようになります。「Extract archive」ボタンを押すと、ダウンロードしたアーカイブの解凍が始まります。解凍が終わると下の「Subdirectory」に中に入っているディレクトリの一覧が表示されます。ここではインストールするときに解凍するディレクトリを1つ選択します(トップフォルダ)。トップフォルダに含まれていないディレクトリはインストールに含まれません(未確認)。

トップフォルダを選択したら、「OK」ボタンが押せるようになるので、押します。


コマンドの登録


ここまで来たら通常インストールできますが、今回は上のグループでもインプリメンテーションでもMain fileで実行ファイルを指定していませんでした。実行ファイルを指定していない場合エラーとなるので、実行コマンドを入力します。

実行コマンドの登録はグループの下でもインプリメンテーションの下でもいいのですが、Tera Termのバージョンが変わっても実行ファイルは変わりそうにありません。ということでGroupの下に登録することにします。

では、グループを選択し、右の「Command」ボタンを押し、 追加されたものをダブルクリックします。「Command」画面が表示されるので、以下のように入力します。

Name:「run」と入力。
Path; 「ttermpro.exe」を入力。

Nameにrunを指定すると、それがデフォルトで実行されるコマンドになります(仕様未確認)。Pathには実行するコマンドを入力します。


デフォルトのコマンドを入力したら、もう一つコマンドを追加しましょう。コマンドを同じように追加したら、以下のように設定します。

Name:「macro」と入力。
Path:: 「ttpmacro.exe」を入力。

実行してみる


ここまで来たらできたフィードを保存しましょう。ここではteraterm.xmlという名前で保存します。


保存するとXMLファイルのほかXSLファイルとCSSファイルが同じディレクトリに作成されます。これはXMLファイルをHTMLに見やすく整形してくれるものです。XMLファイルをIEで開いてみましょう。



かなり見やすく表示されます。XMLとXSLとCSSをWebサーバーにアップロードすれば同じように表示してくれます。フィードを開いてアドレスバーの左側のアイコンをZero Installにドロップするとそのフィードを追加することが簡単にできます。

では、作成したフィードのテストをしてみましょう。やり方はXMLファイルをZero InstallのウィンドウのMy applicationにドロップするだけです。ドロップするとそのフィードが登録されます。


次に右の「Run」ボタンを押すと、ダウンロードが始まり、それが終わると実行されます。Runの下の左の設定のアイコンを押すと、スタートメニューやデスクトップにショートカットを作成することができます。コマンドラインのコマンドの場合は、もう一つ「Command-line」という項目が表示されるのでそれを選べばPATHが通っている位置にコマンド(正確にはコマンドを呼び出す実行ファイル)を入れてくれます。


「Run」ボタンの右の矢印を押すと「Select command」「Select version」「Update」が表示されます。別のバージョンを同時に入れることが出来るのもZero Installの利点です。先ほどttpmacroを実行するコマンドを追加しましたが、「Select command」で実行できるはずです。「Select command」を選んでみましょう。

「Select command for Tera Term」画面が表示されます。「Commands」の右に矢印が表示されています。これを押すとmacroが出てきそうですが、押してみてもrunしか出て来ません。試しに、「macro」と入力してみてから、「OK」ボタンを押すと、「ttpmacro」が実行されます。コマンドの設定は生きているようですが、メニューに出て来ません。これでは不便です。


エントリーポイントの入力


実は、メニューに表示させるにはエントリーポイントの設定が必要です。エントリーポイントの作成ですが、私は現在のPublishing toolsから設定する方法を見つけることができませんでした。というわけで、XMLファイルを直接編集することにします。XMLファイルをテキストエディッタで開いたら、一番下の行に</interface>とあると思います。その上の行に以下の行を追加します。

<entry-point command="run">
    <name xml:lang="en">Tera Term</name>
</entry-point>

<entry-point command="macro">
    <name xml:lang="en">Tera Term Macro</name>
</entry-point>


これでコマンドに名前をつけることができます。また、実行するのがコマンドラインのコマンドの場合、エントリーポイントの中に<needs-terminal />を入れて下さい。

フィードを保存したら、Updateとしたいところですが、Feed URLがないためかUpdateできません。「Run」ボタン右下の「-」ボタンを押して一度削除します。再登録すれば以下のようにコマンドが実行できるようになります。





インターネットで公開する


これでフィードの作成は終わりですが、このローカルフィードをインターネットで公開するためには、基本情報で入力しなかった「Feed URI」にフィードを公開するURLを入れて下さい。そして、フィードにGPGで署名を行い、キーサーバーに登録して下さい。

署名の仕方は、コマンドラインで「0launch http://repo.roscidus.com/security/gnupg --gen-key」を実行して、GPGのキーを作成して下さい。Publishing toolsの右上のGnuPG keyからキーが選択できるので作成したキーを選択して下さい。保存した時にキーのパスワードが聞かれるので、入力して保存して下さい。といっても私も試していないのでよくわからなかったりします。詳しくはこのページを参照して下さい。

キーサーバーへのキーを登録するとユーザーに警告無しでインストールさせることができます。詳しくは調べていませんが、ここにメーリングリストに投げてくださいと書いてあるので多分メーリングリストで申請すればいいのかと思います。

参考

Packaging guide

Feed file format specification


おわり。
















0 件のコメント:

コメントを投稿