Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ryujinx.json & ryujinx-ava.json: Update manifests to point to a mirror with builds #1241

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

IsaacShoebottom
Copy link

This PR changes the manifests of ryujinx and ryujinx-ava to a mirror of the project based on the latest code at the time of the upstream disappearing.

I tested both manifests locally and both installed just fine. The build architecture on the mirror is basically the same as before, except for the version number, which is now the short hash of the git commit. This means that this is now technically a nightly release but the mirror does not expect to be accepting any major changes, so this should act as a stopgap until another project appears or if the old developers regain control of the infrastructure and restart development under the same name.

The only thing about this I am not that happy about is using an archive.org URL for the documentation during setup. Since the entire GitHub organization disappeared the wiki did as well, which is unfortunate. It didn't feel right to link to unofficial sources, so I figured an archived source will have to do

Closes #1239

Copy link
Contributor

github-actions bot commented Oct 5, 2024

Your changes do not pass checks.

ryujinx-ava

  • Description
  • License
  • Hashes
  • Checkver
  • Autoupdate

ryujinx

  • Description
  • License
  • Hashes
  • Checkver
  • Autoupdate

@IsaacShoebottom
Copy link
Author

This regex for the checkver might be non-ideal. I tried to keep it as close to base checkver as possible, while maintaining simplicity. If \w is too broad, [0-9a-zA-z] could work, but it's more verbose.

@babo4d
Copy link
Contributor

babo4d commented Oct 5, 2024

I would recommend against linking to some random mirror until the community has formed a consensus on which ones are trustworthy, especially when autoupdate is involved. I found downloads for the last official build on archive.org here where this file has checksum matching the download available from uptodown.

Also, I am not sure if there is a reason to keep the "ava" avalonia UI version around as it is the default UI now. The archive checksums differ but the contents appear to be identical.

@IsaacShoebottom
Copy link
Author

I would recommend against linking to some random mirror until the community has formed a consensus on which ones are trustworthy, especially when autoupdate is involved. I found downloads for the last official build on archive.org here where this file has checksum matching the download available from uptodown.

Also, I am not sure if there is a reason to keep the "ava" avalonia UI version around as it is the default UI now. The archive checksums differ but the contents appear to be identical.

I can edit the ryujinx manifests to non auto update fixed at last build release from archive.org, as long as they match the current hash in the manifest as is (I haven't checked yet), and make a new manifest called ryujinx-mirror that acts a new potential upstream, as it seems to have gathered quite a lot of GitHub stars and mentioned on the emulation wiki already. It's non ideal imo to hammer archive.org's servers, as they can be really slow/finicky sometimes, in my experience.

Ava version was only kept because I didn't want to rock the boat/delete a manifest, as users might not change their installed version over, and would have stopped receiving updates, but if a maintainer says its okay to remove then I will.

@babo4d
Copy link
Contributor

babo4d commented Oct 6, 2024

Sounds good to me.

as long as they match the current hash in the manifest as is

Agreed. Unfortunately it looks like they don't match. Will look around for another mirror.

Checking hash of ryujinx-1.1.1403-win_x64.zip ... ERROR Hash check failed!
App:         games/ryujinx
URL:         https://archive.org/download/ryujinx-1.1.1403_202410/ryujinx-1.1.1403-win_x64.zip
First bytes: 50 4B 03 04 14 00 00 00
Expected:    9cc815591e77f5f2ca0e7a74c0b374a5b3778078635722d5918e78ed1e99daef
Actual:      beaf664cb09b7d2ef3ab97c4531375153cc170a1ae99c7b4f7f3db45efb2d549
Checking hash of test-ava-ryujinx-1.1.1403-win_x64.zip ... ERROR Hash check failed!
App:         games/ryujinx-ava
URL:         https://archive.org/download/ryujinx-1.1.1403_202410/test-ava-ryujinx-1.1.1403-win_x64.zip
First bytes: 50 4B 03 04 14 00 00 00
Expected:    00b1f832c88e6a2c11101c0c91c3839ca14d61a826df6dbb8e29ab91562fba6a
Actual:      62d9068e3cd1a9a70e5c7931b216f59fce854c51d97d085d6c05d42e32366e01

Ava version was only kept because I didn't want to rock the boat/delete a manifest, as users might not change their installed version over, and would have stopped receiving updates, but if a maintainer says its okay to remove then I will.

That's reasonable. IMO since scoop status tells you when a manifest is removed or deprecated that should be enough information to get the user to look for the other manifest to install instead.

@babo4d
Copy link
Contributor

babo4d commented Oct 6, 2024

This one matches (no ava version though): https://archive.org/download/ryujinx-1.1.1403-win_x64

@IsaacShoebottom
Copy link
Author

This one matches (no ava version though): https://archive.org/download/ryujinx-1.1.1403-win_x64

Looks good. I'll edit the manifests/pr soon

@Bergbok
Copy link
Contributor

Bergbok commented Nov 8, 2024

I know it's been decided to not use the ryujinx-mirror repo, but thought I should mention that installing newer versions of the mirror using the current submission will fail.

Since release r.cfa287f, there isn't a subfolder in the zip so the "extract_dir": "publish" will fail. Also, the regex would need to be updated to "/releases/tag/(r(\\.?)\\w{7})" to account for the dot present in newer releases.

@IsaacShoebottom
Copy link
Author

I know it's been decided to not use the ryujinx-mirror repo, but thought I should mention that installing newer versions of the mirror using the current submission will fail.

Was probably fine to let the dust settle. Seems there is newer actively developed continuations of the project anyways. With the internet archive situation and it being down it's probably better to switch to a more actively developed fork such as this one

Since release r.cfa287f, there isn't a subfolder in the zip so the "extract_dir": "publish" will fail. Also, the regex would need to be updated to "/releases/tag/(r(\\.?)\\w{7})" to account for the dot present in newer releases.

What horrible versioning. Will probably rework the PR eventually, or someone else feel free to take over, or open an new PR. I think I left editing open

@Calinou Calinou added the package update A package needs to be updated label Nov 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
manifest-fix-needed package update A package needs to be updated
Projects
None yet
Development

Successfully merging this pull request may close these issues.

ryujinx@1.1.1403: download via aria2 failed (Upstream is no longer available)
4 participants