Skip to content

torzu: drop#406445

Merged
winterqt merged 2 commits intoNixOS:masterfrom
pbsds:drop-torzu-1747052726
May 13, 2025
Merged

torzu: drop#406445
winterqt merged 2 commits intoNixOS:masterfrom
pbsds:drop-torzu-1747052726

Conversation

@pbsds
Copy link
Member

@pbsds pbsds commented May 12, 2025

This PR was prompted by #403752. If this is merged then it makes sense to close #403752 and close #295587.

I propose to drop Torzu. It seems torzu was added to nixpkgs with little scrutiny despite the massive list of DMCA takedowns by Nintendo including followups addressing Torzu. The Switch 2 is about to launch and I predict more action is bound to come from Nintendo. As such I think redistributing torzu is a legal liability for nixpkgs.

It seems torzu was already asked to leave Codeberg, moving to NotABug. While it is still listed there it does not load for me. I take this as either the host choosing to shadow block it or it being subject to some denial of service. Torzu nixpkgs bumps in response seem to jump to whichever rehosted copy is available at the time.

I don't think Torzu will improve liability wise, and the developers has opted to evade future takedowns by continuing development using "Dark Git"/onion routing. This is in stark contrast to projects like Azahar which take drastic measures to address the legal concerns.

I can't find yuzu or citra mentioned in aliases.nix anymore for some reason, this PR also re-adds the original entries to prevent future confusion.

Any objections?

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@pbsds pbsds added the 9.needs: community feedback This needs feedback from more community members. label May 12, 2025
@pbsds pbsds force-pushed the drop-torzu-1747052726 branch from aaeafef to e0828b8 Compare May 12, 2025 13:17
@pbsds
Copy link
Member Author

pbsds commented May 12, 2025

A pretty good observation (link) by @nyanloutre:

For some additional context there is an official maintained yuzu Debian package but I can't find what is their take on the takedown drama.

salsa.debian.org/debian/yuzu
packages.debian.org/source/sid/yuzu

@github-actions github-actions bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux. labels May 12, 2025
Copy link
Member

@emilazy emilazy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like we switched to a fork opened by the PR author in #388823 without any review scrutiny. Even that fork’s readme says:

A lot of fake Torzu websites have popped up. These are not mine. This project will not have a clearnet website for the foreseeable future! I highly advice against downloading anything from these websites, specially if their intention is clearly to make money through advertisements.

Regardless of the Nintendo side of it, I don’t think we can support packages without canonical clearnet upstreams in Nixpkgs, at least in the absence of a fetchtor or something. I agree that we probably shouldn’t package at least this specific software.

Copy link
Contributor

@patka-123 patka-123 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fully agreed with the reasoning. We should definitely remove this.

Is there something we can do/document so we can learn from this? Maybe we can add a link to this PR in the doc addition in #405187 somewhere? It's always a risk to make documents too long, but simple links to examples might be beneficial.

@liberodark
Copy link
Contributor

Hi, sorry, but I don't really see why you want to delete my package, which is also an emulator that works very well.
I didn't see a valid reason for this deletion; maybe I missed something.

Best Regards

@liberodark
Copy link
Contributor

liberodark commented May 12, 2025

It looks like we switched to a fork opened by the PR author in #388823 without any review scrutiny. Even that fork’s readme says:

A lot of fake Torzu websites have popped up. These are not mine. This project will not have a clearnet website for the foreseeable future! I highly advice against downloading anything from these websites, specially if their intention is clearly to make money through advertisements.

Regardless of the Nintendo side of it, I don’t think we can support packages without canonical clearnet upstreams in Nixpkgs, at least in the absence of a fetchtor or something. I agree that we probably shouldn’t package at least this specific software.

Hi,

I've clarified this change.
It's also important to put a few things into context: I hadn't heard anything about how we couldn't replace a dead repository.
Over time, I've learned a little more about the nixpgs rules.
Also made this update to help a user in need as my main motivation is to help.

#388823 (comment)

Best Regards

@liberodark
Copy link
Contributor

Fully agreed with the reasoning. We should definitely remove this.

Is there something we can do/document so we can learn from this? Maybe we can add a link to this PR in the doc addition in #405187 somewhere? It's always a risk to make documents too long, but simple links to examples might be beneficial.

Hi,

I'm neither really for nor really against this removal.
Let me explain.
I'm against it as it stands because no valid reason was given. You haven't received a removal request from Nintendo that I know of.
I'm for it if adding this application actually poses a problem.
I could keep it outside of nixpkgs, but as it stands, I don't see the reason for such approval.
Could you shed some light on this perhaps?

Best Regards

Copy link
Member

@winterqt winterqt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've had opinions about this when I originally was made aware that we have this package, and those haven't changed: this needs to go, it's a liability. It's always possible to maintain out-of-tree if @liberodark wishes.

Regardless, the fact that upstream is (I guess) unresponsive and that we're just using a mirror provided by the maintainer is also... iffy at best.

@patka-123
Copy link
Contributor

patka-123 commented May 12, 2025

@liberodark

no valid reason was given

I think the reasons given are plenty valid.

Could you shed some light on this perhaps?

Sure. Nintendo is taking down and going after all Yuzu (adjacent) software. Torzu itself gets taken down all the time to the point they don't want a clearnet website. Just taking the software and putting a copy somewhere paints a massive target on your back, which nixpkgs should avoid. The risk itself is simply not worth it for nixpkgs as a whole.

If you want to have the software you can keep it out-of-tree, and do with it as you please.

@liberodark liberodark mentioned this pull request May 12, 2025
13 tasks
@winterqt
Copy link
Member

Going to merge in 24h or so if nobody else objects -- will put out a call for opinions in #dev.

IMO we should go as far as backporting, but given 24.11 has weeks to live, it's less of an issue.

@liberodark
Copy link
Contributor

liberodark commented May 12, 2025

@liberodark

no valid reason was given

I think the reasons given are plenty valid.

Could you shed some light on this perhaps?

Sure. Nintendo is taking down and going after all Yuzu (adjacent) software. Torzu itself gets taken down all the time to the point they don't want a clearnet website. Just taking the software and putting a copy somewhere paints a massive target on your back, which nixpkgs should avoid. The risk itself is simply not worth it for nixpkgs as a whole.

If you want to have the software you can keep it out-of-tree, and do with it as you please.

Thank you for your comment and explanation.
Sorry for causing such inconvenience.

@nyabinary
Copy link
Contributor

Shouldn't we in the save vain remove ryujinx and ryubing too technically?

@winterqt
Copy link
Member

Ryujinx is different in that legal action hasn't been taken against it or its forks, merely the author was compelled by Nintendo to delete the upstream.

@nyabinary
Copy link
Contributor

Ryujinx is different in that legal action hasn't been taken against it or its forks, merely the author was compelled by Nintendo to delete the upstream.

Yuzu code technically isn't 'illegal' (even in America courts) the settlement prohibited the Yuzu devs from using that code and developing it further. This I feel like its overzealous, I do agree with suyu drop though as that fork is dead.

@AndersonTorres
Copy link
Member

Any objections?

Except maybe invalidating Hydra caches, none.

@Pandapip1 Pandapip1 added the 1.severity: legal This PR or issue raises or fixes a legal issue, e.g. licensing compliance label May 13, 2025
@winterqt winterqt merged commit a6e10b5 into NixOS:master May 13, 2025
22 of 23 checks passed
@emilazy emilazy mentioned this pull request Jul 27, 2025
13 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

1.severity: legal This PR or issue raises or fixes a legal issue, e.g. licensing compliance 9.needs: community feedback This needs feedback from more community members. 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants