• Stars
    star
    245
  • Rank 165,304 (Top 4 %)
  • Language
    C
  • License
    The Unlicense
  • Created about 7 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

pkg download & installation directly on Vita

pkgi

Travis CI Build Status Downloads Release License

pkgi allows to install original pkg files on your Vita.

This homebrew allows to download & unpack pkg file directly on Vita together with your NoNpDrm fake license.

Features

  • easy way to see list of available downloads, including searching, filter & sorting.
  • standalone, no PC required, everything happens directly on Vita.
  • automatic download and unpack, just choose an item, and it will be installed, including bubble in live area.
  • resumes interrupted download, you can stop download at any time, switch applications, and come back to download from place it stopped.

Current limitations:

  • no support for DLC or PSM.
  • no queuing up multiple downloads.
  • no background downloads - if application is closed or Vita is put in sleep then download will stop.

Download

Get latest version as vpk file here.

Setup instructions

You need to create ux0:pkgi/pkgi.txt file that will contain items available for installation. This file is in very simple CSV format where each line means one item in the list:

contentid,flags,name,name2,zrif,url,size,checksum

where:

  • contentid is full content id of item, for example: UP2120-PCSE00747_00-TOWERFALLVITA000.
  • flags is currently unused number, set it to 0.
  • name is arbitrary UTF-8 string to display for name.
  • name2 is currently unused alternative name, leave it empty.
  • zrif is NoNpDrm created fake license in zRIF format, it must match contentid.
  • url is http url where to download PKG, pkg content id must match the specified contentid.
  • size is size of pkg in bytes, or 0 if not known.
  • checksum is sha256 digest of pkg as 32 hex bytes to make sure pkg is not tampered with. Leave empty to skip the check.

Name cannot contain newlines or commas.

To avoid downloading pkg file over network, you can place it in ux0:pkgi folder. Keep the name of file same as in http url, or rename it with same name as contentid. pkgi will first check if pkg file can be read locally, and only if it is missing then pkgi will download it from http url.

Usage

Using application is pretty straight forward. Select item you want to install and press X. To sort/filter/search press triangle. It will open context menu. Press triangle again to confirm choice(s) you make in menu. Or press O to cancel any changes you did.

Press left or right shoulder button to move page up or down.

Q&A

  1. Where to get zRIF string?

You must use NoNpDrm plugin to dump existing games you have. Plugin will generate rif file with fake license. Then you can use either web page or make_key to convert rif file to zRIF string.

  1. Where to get pkg URL?

You can use PSDLE to find pkg URL for games you own. Then either use original URL, or host the file on your own server.

  1. Where to remove interrupted/failed downloads to free up the space?

In ux0:pkgi folder - each download will be in separate folder by its title id. Simply delete the folder & resume file.

  1. Download speed is too slow!

Typically you should see speeds ~1-2 MB/s. This is normal for Vita hardware. Of course it also depends on WiFi router you have and WiFi signal strength. But sometimes speed will drop down to only few hundred KB/s. This happens for pkg files that contains many small files or many folders. Creating a new file or a new folder takes extra time which slows down the download.

Building

You need to have Vita SDK with libvita2d installed.

Run cmake . to create debug build, or cmake -DCMAKE_BUILD_TYPE=Release . to create optimized release build.

After than run make to create vpk file. You can set environment variable PSVITAIP (before running cmake) to IP address of Vita, that will allow to use make send for sending eboot.bin file directly to ux0:app/PKGI00000 folder.

To enable debugging logging pass -DPKGI_ENABLE_LOGGING=ON argument to cmake. Then application will send debug messages to UDP multicast address 239.255.0.100:30000. To receive them you can use socat on your PC:

$ socat udp4-recv:30000,ip-add-membership=239.255.0.100:0.0.0.0 -

For easer debugging on Windows you can build pkgi in "simulator" mode - use Visual Studio 2017 solution from simulator folder.

License

This is free and unencumbered software released into the public domain.

Anyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means.

puff.h and puff.c files are under zlib license.

More Repositories

1

RcloneBrowser

Simple cross platform GUI for rclone
C++
1,303
star
2

aes-finder

Utility to find AES keys in running processes
C++
923
star
3

wcap

Simple and efficient screen recording utility for Windows 10 and 11
C
718
star
4

pkg2zip

Decrypts PlayStation Vita pkg file and packages to zip archive
C
385
star
5

CxxProfiler

Simple sampling C/C++ profiler
C++
97
star
6

TwitchNotify

Simple utility to notify when Twitch users go live for Windows 10 and up
C
69
star
7

android-native-example

simple example for building native app on Android
C
63
star
8

build-gcc-mingw

Automatic 32-bit and 64-bit Windows build of gcc, mingw-w64, gdb and make.
Shell
57
star
9

docker-mingw-w64

mingw-w64 toolchain in docker for targeting 64-bit Windows
Dockerfile
48
star
10

build-mesa

Automatic build of mesa3d for Windows
Batchfile
28
star
11

docker-unity3d

Unity3d in docker for targeting Windows and Linux
Dockerfile
25
star
12

aseprite-bin

Batchfile
22
star
13

build-sdl3

Automatic build of SDL3 libraries for Windows
Batchfile
22
star
14

symget

fast pdb debug symbol downloader
C
19
star
15

build-angle

Automatic build of angle for Windows
Batchfile
16
star
16

ScreenBuddy

Simple remote desktop sharing application for Windows
C
15
star
17

rpi

Various demos for RaspberryPi
C
14
star
18

c_d2d_dwrite

Direct2D and DirectWrite C headers
C
13
star
19

gitprj

git tags as Windows Projected Filesystem
C
11
star
20

build-sdl2

Automatic build of SDL2 libraries for Windows
Batchfile
11
star
21

build-gcc-arm

Automatic Windows build of gcc, gdb and make for targeting 32-bit and 64-bit arm bare-metal targets.
Shell
10
star
22

build-dawn

Automatic build of dawn (WebGPU) for Windows
Batchfile
10
star
23

wstream

Experiments with RTMP streaming
C
10
star
24

derpnet

Network library in C for Windows
C
5
star
25

jvpn

Python script for connecting Juniper VPN on Linux
Python
4
star
26

smhasher3

C++
4
star
27

stuff

C
3
star
28

build-ffmpeg

static build of ffmpeg binaries for 64-bit Windows
Shell
3
star
29

build-blend2d

Batchfile
2
star
30

Squares3D-iPad

Squares3D port to iPad
C++
2
star
31

Squares3D-Android

Squares3D port to Android
C++
2
star
32

Squares3D

Indago 2006 Latvian game development contest winner
C
2
star
33

kvnc

C
2
star
34

chacha20bench

chacha20 benchmarks with avx2 & avx512
Assembly
1
star
35

Squares3D-prototype

Early prototype for Squares3D. Written in Python.
Python
1
star