{citra,yuzuPackages}: remove package#293312
Conversation
|
No one had made git clones of them? |
AndersonTorres
left a comment
There was a problem hiding this comment.
In my heart I am disapproving this.
|
https://github.com/pineappleEA/pineapple-src is still up, but for how long 😓 |
|
Citra can be done in a second PR? 🤔 |
|
You can delete it here too. |
|
I'm not a lawyer, but I imagine that they need to be purged off from Hydra too? |
|
Better safe than sorry. |
|
Software Heritage has up-to-date archives if you didn't get them in time, and there are out-of-tree yuzu flake's on other forges for maintaining the nix expressions. |
|
Removed now Citra too 😭 |
|
This feels a bit premature. There was no ruling that Yuzu is illegal. The out of court settlement, from my understanding, is mostly based on the situation that the company developing Yuzu took money for early access releases that specifically supported a yet unreleased game and also did not forbid discussion of piracy on their private Discord. I feel like for now it may make more sense to point this to a fork that contains the commits references from nixpkgs, and maybe switch it to a more active community maintained one once such is established. As Yuzu itself is GPL licensed, it will not disappear anytime soon. |
|
Right now our expression does compile nothing. Waiting for an "oficial fork" does not make much sense. On the other hand, there are copies of it floating around the forges currently. |
|
Can't we remove mainline only and keep EA that is fetched from another repo? If it starts failing to compile at some point and there is no new upstream, then remove it. |
My main issue with it is that the name itself is confusing: it should have been called This is also why I think we need to wait until the situation stabilises: it may as well that pineappleEA becomes the new upstream, but I think this is still too soon to say. |
Also, I am less concerned about the source code itself being available (as pointed above, Hydra caches FOD forever), and more about if we have an upstream giving the code proper support. |
pineapple-ea just publishes GPL'ed Yuzu EA source code. Even if their repository stays online it's not a fork, it's more like a mirror, and the code is still unmaintained, there's no upstream, etc.. I think it's best to remove for now and see what happens in the future. |
|
Backport failed for Please cherry-pick the changes locally and resolve any conflicts. git fetch origin release-23.11
git worktree add -d .worktree/backport-293312-to-release-23.11 origin/release-23.11
cd .worktree/backport-293312-to-release-23.11
git switch --create backport-293312-to-release-23.11
git cherry-pick -x ef72e8b3a9b9743544b3ca6bca9da5770e20f51f 9b90f685e58c1483cbdea6388069e1ed8f57edae |
|
Could it be re-added under suyu https://gitlab.com/suyu-emu/suyu ? |
|
@RGBCube it will only make sense to do so if they prove to support the fork for real. |
Nope.
Let's wait they gain more traction. |
I fully agree that this is a problem. What I do not agree on is that a package must be removed due to such a problem. For the time being, Yuzu builds for anyone who can access cache.nixos.org which is practically everyone. Besides, we have lots of packages where the source isn't available anymore (or never was, proprietary software anyone?). Some of our packages that have far worse issues than the upstream source having died that are still in the tree and don't hurt anyone.
I'm similarly cautious but it doesn't really matter as we don't have to trust the forks for this purpose specifically. Because they contain all the previous revisions, we'd treat them as a mirror and simply lock the srcs to the specific revisions they would have pointed at before. It'd just be a different URL that serves the same content; hash would stay the same. I'd certainly not have this reach the stable channel (absolutely no good reason for the breakage) and will propose to revert this. How to handle "the Yuzu issue" requires a bit more discussion still and I see no point in removing it this soon already because it might potentially cause minor issues years down the line. |
For packages that are open source and the source is not available anymore, we should strive to remove them. Unmaintained software is a maintenance burden and we already have way too many packages in nixpkgs, IMO. For proprietary software, AFAIK we generally have either of those 2 approaches:
The first approach is really difficult to check if the source is still available, while the second one AFAIK people generally works to keep it up-to-date or at least available, so I don't see much of the issue here. |
Yes and that's exactly my point. If it's not an issue for other packages, why would it be an issue for Yuzu? |
I am arguing it is an issue for other packages, it is just more difficult to track. Yuzu/Citra kinda was really easy to reason its removal because it was in news everywhere, but most packages will disappear in the world and nobody will blink an eye. But my argument here is that if we find those packages we also need to remove them from nixpkgs. |
I don't think so. The upstream does not exist anymore, and keeping an expression for it makes few to no sense.
Hey, this is an argument for cleaning up the codebase, not an argument for keeping it bit-rotting! |
No. We do not as a general rule need to remove building, working packages where the upstream source happened to have gone MIA. Especially not if a substitute is likely to come up within a month or so and doubly enjoyed so if it's used by thousands. We should create issues on them, ping maintainers, mark them as problematic etc. because a fetchable upstream is obviously something we want but removal without notice is not an appropriate action for any such package.
You cannot use graphical applications from revisions other than your system revision without terrible hacks. This is not an option for users and you should not be recommending it without mentioning that major gotcha.
For anyone who can use cache.nixos.org, it does indeed exist. If that went away too, then I'd start considering touching the package at all. Even in that case removal without notice is not the appropriate action for a widely used package but marking the source as broken and/or looking for a mirror.
I do not understand what this sentence is trying to say.
Even if this was valid (which it is not, the src is cached), this only concerns the src, not the rest of the drv. While others are preferable of course,
I have yet to see a good argument for how this "cleaning up" is going to help anyone. Actually dead code that does not build anymore, where the package has no responsive maintainers and/or causes a concrete issue, yeah remove that shit. |
Thankfully it does not happen very often, but that kind of "what to do" should be documented somewhere to avoid this kind of situations. |
The previous occurrence was way worse: #157959 And at least in the previous case we had a still-alive source code. |
|
I will not lock this thread (or at least yet) but can we please keep the discussion in #295587 instead? For one this PR is already merged, for another having the same discussion happening in 2 different places is confusing. |
|
This pull request has been mentioned on NixOS Discourse. There might be relevant details there: |
Description of changes
Yuzu has been taken down because of Nintendo.

The Git repos are already gone https://github.com/yuzu-emu/yuzu
Things done
nix.conf? (See Nix manual)sandbox = relaxedsandbox = truenix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/)Add a 👍 reaction to pull requests you find important.