Skip to content

Allows you to access Juxtaposition from a web browser

License

Notifications You must be signed in to change notification settings

Milk-Cool/juxt-desktop

Repository files navigation

juxt-desktop

Allows you to access Juxtaposition from a web browser
(requires a Wii U)

Setting up

  1. Install docker and git
  2. Clone the required repos:
git clone --recursive https://github.com/Milk-Cool/juxt-desktop.git
git clone https://github.com/PretendoNetwork/Inkay.git
  1. Run the following:
docker run -it --rm -p 8082:8082 -v ./dumps:/home/mitmproxy/dumps ghcr.io/pretendonetwork/mitmproxy-nintendo:wiiu mitmdump

DO NOT CLOSE IT UNTIL TOLD TO DO SO!

  1. In another window or tab, run the following:
docker ps

Make note of the container ID

  1. Run:
docker cp CONTAINER_ID:/home/mitmproxy/.mitmproxy/mitmproxy-ca-cert.pem .

(replace CONTAINER_ID with your container ID)

  1. Go to Inkay/data, and replace ca.pem with your mitmproxy-ca-cert.pem.
  2. Compile Inkay by running following commands in the parent directory of Inkay:
docker build Inkay -t inkay-build
docker run -it --rm -v $(pwd)/Inkay:/app -w /app inkay-build

On Windows, run:

docker build Inkay -t inkay-build
docker run -it --rm -v %cd%/Inkay:/app -w /app inkay-build
  1. Inkay-pretendo.wps should now appear in the Inkay directory. Copy it to /fs/vol/external01/wiiu/environments/aroma/plugins ON YOUR WII U, replacing the file if needed.
  2. Reboot your Wii U.
  3. Go to Wii U connection settings, select your active WiFi connection and in its settings, select "Proxy", set it to your computer's local address (which can be get via ipconfig), set port to 8082 and do not use any authentication. Perform a connection test and observe that there are some lines in the mitmproxy logs.
  4. Open Miiverse, wait for it to load and precc Ctrl+C in mitmproxy ONCE. That will stop it and save the .har dump.
  5. Open the HAR analyzer, and open your HAR dump which should be located at dumps/wiiu-latest.har.
  6. Search for service_token/@me, then click on the only request on the left. On the right, copy the headers values to these environment variables (set NAME=VALUE on Windows, export NAME=VALUE on Unix-like):
X-Nintendo-System-Version -> SYSTEM_VERSION (no leading 0)
X-Nintendo-Serial-Number  -> SERIAL_NUMBER
X-Nintendo-Device-ID      -> DEVICE_ID
X-Nintendo-Region         -> REGION_ID
X-Nintendo-Country        -> COUNTRY_NAME
Accept-Language           -> LANGUAGE
  1. Search for generate, then click on the request on the left and copy the header value of X-Nintendo-Device-Cert to environment variable CERT
  2. On the right, switch to the tab Post Data and copy the value user_id to USERNAME and password to PASSWORD.
  3. You can save the environment values somewhere, just please DO NOT SHARE THEM.

Running

  1. With the varialbes set, run the proxy using mitmproxy -s juxt.py.
  2. Open a browser. Using an extension like FoxyProxy, set up a proxy pointing to localhost and port 8080.
  3. In the browser, open http://mitm.it. Download the certificate and install it in your browser's settings (google it).
  4. Finally, open https://portal.olv.pretendo.cc. You're done! Juxt should show up at this point.

About

Allows you to access Juxtaposition from a web browser

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages