Vita上でpkgをzRIFと合わせてインストール出来る pkgi がリリース

GitHubで、mmozeiko氏がHENkaku環境のVita上でpkgをzRIFと合わせてインストール出来る
pkgi v0.05 をリリースしていました。

zRIFはご存じ無い人もいるでしょうが、どういった物かと言いますと、NoNpDrmで作成可能な偽ライセンスを圧縮・文字列化した物です。
あんな小さなファイルを何故圧縮するのか、というのは当然の疑問ですが、pkgを展開する際に合わせて使用する事で、
"/sce_sys/package/"内にあるファイルが完全な物になるからです。NoNpDrmが出てすぐにTheRadziu氏がMOD版PkgDecryptをリリースされました。
最初はそのMOD版PkgDecryptで偽ライセンスに含まれるklicenseeをpkg展開の際に使うという方針だったようですが、
それだと"/sce_sys/package/"にあるファイルは不完全な物になってしまうため、偽ライセンスその物をzRIFとして圧縮・文字列化してpkg展開時に使用する
という事なったようです。現在のMOD版PkgDecryptはzRIFに対応しています。

pkgiにはpkgをVita上でダウンロードと同時に展開してインストールする機能が搭載されています。
pkgをダウンロードするためのURLとzRIFはメモリーカードに置いたtxtファイルから取得するようになっているようで、
この時にメモリーカード内にpkgを配置していればそのpkgを使用する仕組みになっています。
pkgのURLはzeusやares(ソニーのサーバー。aresはDRMフリーのアプリやゲーム)のURLでも良いですし、
自分でサーバー立ててそこにpkgを置いてそのリンクを使う形でも良いです。
pkgのURLとzRIFをtxtファイルから取得する、で勘の良い人は気づいたと思いますが、他者とtxtファイルを共有すれば実質海賊アプリになってしまいます。
善良な心を持ったpkgiユーザーは自分で用意したURLとzRIFを使いましょうね。

一応、使用方法は以下に書いておきます。




●用意するもの
・PS Vita 3.60 HENkaku導入済み
・NoNpDrm
・pkgi
・pkgのURLとzRIF
・PC



●導入方法


▼準備
1、NoNpDrmを導入し、ゲームの偽ライセンスを手に入れる
http://cmd0725.blog.fc2.com/blog-entry-1524.html

2、MOD版PkgDecryptに同梱のmake_keyを使用して偽ライセンスをzRIF化する
https://github.com/weaknespase/PkgDecrypt/releases

面倒な人は以下のサイトがオススメ。偽ライセンスを投げるとzRIFが返って来ます
https://rawgit.com/mmozeiko/pkg2zip/online/zrif.html

3-Aパターン、PCでExcelを使ってcsvファイル(カンマ区切り)を作成、A1~H1に以下の英単語を順番に入れる
contentid,flags,name,name2,zrif,url,size,checksum

・contentid列…アプリやゲームのコンテンツIDを記述(例:UP2120-PCSE00747_00-TOWERFALLVITA000)
・flags列…現バージョンのpkgiでは未使用の列。0を記述
・name列…pkgi上で表示する任意のゲーム名(UTF-8)を記述
・name2列…現バージョンのpkgiでは未使用の予備name列。空白で良い
・zrif列…コンテンツIDと一致しているzRIF文字列を記述
・url列…pkgのURLを記述
・size列…バイト単位でpkgのサイズを記述。不明の場合は0を記述
・checksum列…32バイトのSHA-256。pkgが改変されていない事を確認するために使うが、スキップする場合は空白にしておく

必要な内容を書き終えたらcsvファイルをpkgi.txtにリネームしておく

3-Bパターン、Excelが無い場合はpkgi.txtを作成する
一行ずつこの順で内容を記述していく
contentid,flags,name,name2,zrif,url,size,checksum

contentid,flags,name,name2,zrif,url,size,checksum
コンテンツID,0,あいうえお,,ZRIF,http://~~~,100000,,
※一番最初の行に「contentid,flags,name,name2,zrif,url,size,checksum」が必要
※こうする事でExcelのcsvファイルと同じになる



▼ここから本番
1、pkgi-v0.05.vpk をダウンロードし、インストール

2、ux0パーティションにpkgiフォルダを作成

3、ux0:pkgi/ に pkgi.txt または config.txt を配置

4、pkgをローカル参照する場合は ux0:pkgi/ にpkgを配置
※ダウンロードする場合は配置しなくて良い

5、PKGiを起動

6、Enjoy !



●PSDLE

Chromium系のブラウザを使用している方は、拡張を入れる事でストアから自分の所持しているゲームのpkgのリンクを取得可能です。
PSDLE

PSDLEでcsvにエクスポート後、そのcsvファイルをpkgiで使える形に編集するのが現実的な手順かもしれません。



[ 2017/10/26 01:30 ] カテゴリ PS Vita | コメント(11)

▼コメント




猫大好き 2017/11/04 16:12 
ダウンロードし終わってインストールが始まったと思ったらインストール出来ませんでしたと表示されました。
どうすればいいでしょうか?


管理人 kood 2017/11/04 19:56 
>>猫大好きさん
pkgi.txtを見直して問題が無いにも関わらずそうなるのならPCでPkgDecryptやpkg2zip使ってください。
https://github.com/weaknespase/PkgDecrypt
https://github.com/mmozeiko/pkg2zip


KEN 2018/04/05 22:41 
pkgをフォルダに配置していてもダウンロードが始まってしまいます。またダウンロード後に「installatio failed」とエラーがでてインストールできません。
nonpdrmに関しては、偽ライセンスが作成されているので作動していると思います。
pkgi.txtを作成し、pkgiで表示されているので大きく間違ってはいないと思うのですが原因がわかりましたら教えていただきたいです。


管理人 kood 2018/04/06 02:29 
>>KENさん
フォルダに配置するpkgはダウンロードした際のファイル名(URL通りのファイル名)かコンテンツIDをファイル名にしてください。
私の環境はVitaTV+有線LANですが、LANケーブルを引っこ抜いた状態でもDownloadingと表示されたのでローカルを参照しているかどうかを
確認するにはネットに接続していない状態にするしか無いと思われます。

で、今試してみました。私の環境ではその症状はとある条件下で再現出来ました。
私がKENさん同様の症状を再現したのは、Download処理(ローカルを参照しているのでただの展開処理)をキャンセルし、
その後に再度pkgiで展開処理をして(この時展開処理は途中からの再開になる)、プログレスバーが最後まで来た時です。
その時にKENさん同様の症状を確認出来ました。
解決策ですが、ux0:pkgi にあるタイトルIDフォルダを削除し、pkgiでキャンセルせず展開処理を完走する、という事になります。
これで私の環境ではインストールが成功しました。

pkgiは "ux0:pkgi/タイトルID" にpkgを展開します。
私はインストールが失敗した際にこれをappフォルダに移動してLiveareaのリフレッシュを実行してみたのですが、バブルは作成されませんでした。
更にはVitaShellのPFS復号機能を使おうにもこのタイトルIDフォルダのみでエラーが発生しました。
ここから考えるにおそらく「pkgiでローカルに置いてあるpkgの展開処理をキャンセルして再開」,この部分にPFS関連のエラーなり破損なりが発生しているのではないかと。

もしux0:pkgiにあるタイトルIDフォルダを削除してもうまくいかなかったのなら、私には解決策は分かりません。


KEN 2018/04/06 20:34 
pkgファイルをダウンロードしていると思いましたが、展開作業をしていました。
wifi切ってもその動作は行われていました。
ux0:pkgiのタイトルIDフォルダを削除し、pkgiで展開作業中にキャンセルせずに作業を終わらせましたが、やはりエラーが出ます。
展開したファイルのjpgはすべてエラーで開けない状態でした。
また、違うpkgファイルも追加して新たに動作させましたが、やはり同様のエラーがでてインストールが完了しませんでした。


KEN 2018/04/06 21:31 
3.60 enso 使用で、SD2VITAを利用して試していたのですが、SD2VITAの設定を外したところ問題なくインストールできました。
なぜ使用できなくなるのかわかりませんが、いったん使用可能なことはわかりました。
もしSD2VITAを使用するときの設定などあれば教えていただけるとありがたいです。


管理人 kood 2018/04/08 06:48 
>>KENさん
SD2VITAはプラグインを有効にするだけなので設定らしい設定はありません。
既に使用されているとは思いますが、SD2VITAのプラグインは以下のHomebrewで簡単に導入可能です。
http://cmd0725.blog.fc2.com/blog-entry-2016.html
https://github.com/Applelo/SwitchSD2Vita/releases

SD2VITA使用時のみpkgiでインストールが出来ないのであれば、SD2VITAを、というよりmicroSDカードの中身を疑ってください。
もしuma0としてマウントしていらっしゃるのなら私のこの予想は外れです。
ux0としてマウントしている場合はメモリーカードの内容をmicroSDにコピーしたはずです。それをもう一度やってください。
やる場合はまずmicroSDカードをフォーマットしてください。もしmicroSD側に必要なデータがあるならCMAでバックアップしておいてください。
まあ、これで解決するかは分かりませんが…


KEN 2018/04/08 17:21 
いろいろ試してなんとか動作しました。
どうもありがとうございました。


hishinsu 2018/07/31 14:29 
投稿者さんはじめまして。私はパソコンに疎いため3-A・Bパターンの、CSVファイルとconfigtxtの作り方(記載方法)がわかりません。画像等や記載方法を詳しく教えてください。3-A例題にある○○列というのは記載するのでしょうか?3-B例題にある一行ずつとは
contentid,○○ID
flags,0,というふうにうつのでしょうか?



管理人 kood 2018/07/31 20:41 
>>hishinsuさん
csvファイルはカンマで項目を区切ったただのテキストファイルです。拡張子が.txtから.csvになっているだけです。
Excelで作成する場合、ファイルを保存する際に形式を選ぶことが可能で、その中にcsvがあります。
テキストエディタで作成する場合、1行目に項目名を、以降の行はカンマを列の区切りとして情報を入れていきます。
Bパターンの部分で例を載せているのでそれを参考にしてください。

PKGiはこの記事にあるようにやれば使えるはずですが、今となっては既に古いアプリとなっています。
今はPKGiがベースとなっているPKGjが主流です。そちらはVitaに置いたPKGを使う事は出来ずDLのみです。
https://github.com/blastrock/pkgj
PKGjはcsvのサポートが除外され、csvのカンマがタブになったtsvファイルがサポートされています。
ただしVitaに配置したtsvを使用するのではなくtsvのURLを指定するので、自分でtsvを作るというのは向いていません。
邪道な使い方として、私以外にやってる人がいるのか不明ですがキャッシュファイルを編集する方法があります。
それに関してはこの記事のように詳しく記事にするか迷っている次第です。需要あんのかな、と。


hishinsu 2018/08/02 09:57 
管理人さんご返答ありがとうございました。管理人さんの解説通りpkgi.txtを作成しPKGJでは認識されませんでしたがPKGIでは認識されました。また何か質問等があったらまた解説、ご返答お願いします。本当にありがとうございました。


(記入必須)


(記入必須)






※「英数字90%以上 or URL含む」でコメントを規制中です。コメントを投稿する際は日本語で、かつURLは含めないでください。
(URLは最初のh抜いて規制回避可能)
※上にある送信ボタンを押すとコメント送信の確認フォームに移ります。確認フォームより送信ボタンを押してください。
※確認フォームにある「メールアドレス」に入力された内容は管理人のみ確認可能です。空欄で構いません。
※確認フォームにある「タイトル」「パスワード」は当ブログでは使用していません。
※確認フォームにある「URL」は名前のリンクとして機能します。
※確認フォームには非公開コメントのチェック項目がありますが、非公開コメントは受け付けていません。
メールフォームより連絡頂ければメールにてお返事致します。


お売りください。駿河屋です。