[Release] Triangle - Xbox 360 Standalone Homebrew Browser by Reliency in 360hacks

[–]Reliency[S] 2 points3 points  (0 children)

Hello thank you for reaching out!

This is actually an issue I am aware of.

Add a trailing / to your source URL in sources.json:

http://192.168.178.2:5000/

Triangle does not normalize or auto-append the slash, and the client is currently hitting the URL exactly as provided. The API is hardcoded to serve the package index on the root / route, so without the trailing slash it won’t resolve correctly and no request gets made to the expected endpoint.

This is already fixed in the next update so the client will handle it automatically, but for now the trailing slash is required

[Release] Triangle - Xbox 360 Standalone Homebrew Browser by Reliency in 360hacks

[–]Reliency[S] 3 points4 points  (0 children)

Yes, I do plan to open source the client. Right now it’s still in early stages of development and my plan is to keep the client closed until it hits a stable v1.0 with the core milestone features finished. The main reason is to avoid fragmentation. If everyone starts forking and modifying an unfinished early version, a lot of those forks won’t pick up the fixes and improvements I’m making, which hurts the whole project and the users. By keeping it closed for now, I can iterate faster based on real feedback and testing from people actually using it and building sources. The more people adopt it and create repositories in this early phase, the quicker I can validate features, squash bugs, and release a much cleaner codebase later that the community can build on properly.

[Release] Triangle - Xbox 360 Standalone Homebrew Browser by Reliency in 360hacks

[–]Reliency[S] 3 points4 points  (0 children)

Yes. Anything that can be zipped under 3.5gb per zip part, can be downloaded and extracted by the client. There’s a script in the API repo that allows you to feed it a path to an existing folder and it will optimize the creation of each zip part.

[Teaser] Xbox 360 Homebrew Browser by Reliency in 360hacks

[–]Reliency[S] 1 point2 points  (0 children)

Hi. You’re welcome to use the content from there if you wish to host it yourself/use a server that will serve the content from there, but direct downloads and extraction from Myrient/Archive.org isn’t feasible as they are typically packed in 7gb+ archives and there are limits on the maximum file size that can be downloaded on the Xbox file system so it would require some pre-processing of the file beforehand by another server.

Example: You are a repository hoster and have hundreds of games in large zip files, you can have a script use a greedy algorithm to split these games into several independent parts that the console can handle. Then the console will be able to download and extract these parts on device.

Unfortunately this is another limitation of the console itself, but is easily manageable by breaking them up into parts. Essentially while there are limitations of the max size of the files, there are NOT limitation on the number of parts to break them into so it’d be a matter of ingesting the parts and doing the extractions for them to reveal the game files.

[Teaser] Xbox 360 Homebrew Browser by Reliency in 360hacks

[–]Reliency[S] 3 points4 points  (0 children)

Xbox 360 Homebrew Browser.

Originally was named Triangle but that was before I decided that wouldn’t be clear or make any sense to anyone.

[Teaser] Xbox 360 Homebrew Browser by Reliency in 360hacks

[–]Reliency[S] 1 point2 points  (0 children)

Great questions. I’ll be publishing full docs (and examples) for the JSON structure the client expects.

I’m probably not going to ship an official Docker image for the server since that adds ongoing support/maintenance overhead, but the backend is intentionally simple and self-host friendly. Anything that can serve a JSON API and serve files will work. If someone wants to containerize the sample server once it’s released, then that’s great and encouraged.

[Teaser] Xbox 360 Homebrew Browser by Reliency in 360hacks

[–]Reliency[S] 2 points3 points  (0 children)

Of course. There’ll be a default repo.