void-linux / void-packages

The Void source packages collection
https://voidlinux.org
Other
2.56k stars 2.13k forks source link

Package request: PCSX2-2 #51246

Closed fvalasiad closed 3 months ago

fvalasiad commented 3 months ago

Package name

pcsx2

Package homepage

https://pcsx2.net/

Description

Playstation 2 emulator

Well, it happened. Like some months ago I made a post in reddit pointing out that PCSX2's version in the repos(the last stable one) was so outdated it was practically a joke. Not only a matter of GUI but game compatibility as well massively changed in these 4 years.

Back then I pointed out that the flatpak was getting almost daily updates, and suggested if maybe the package in the repos should be somewhat updated to non-"stable" versions.

People pointed out that the non stable versions weren't any less stable than the stable branch itself. And that the stable branch was basically only stable regarding secondary stuff such as translations and the like.

Void devs pointed out that the release schedule of PCSX2 is not acceptable in the void repositories as "it shows that the devs don't take this seriously".

The new release is rather big though, switching wxWidgets for Qt, bringing a big picture mode for couch gaming, as well as offering a near perfect compatibility with almost all of ps2 titles. A huge blogpost describes all changes: https://pcsx2.net/blog/2024/pcsx2-2-release/

The question essentially is, should pcsx2 make a comeback in the repos? Perhaps patience is needed to see their release schedule after this redesign, and whether it aligns with void's philosophy? Nevertheless it would be a valuable addition as not everyone likes flatpaks, and it's now a too good application to be missing from any repo without a valid reason. I'd be willing to maintain it, since it probably won't be receiving stable updates quite often.

I am opening this issue to get a solid answer whether such a PR would have any chance of being merged, to save time :)

Does the requested package meet the package requirements?

Compiled

Is the requested package released?

Yes

MIvanchev commented 3 months ago

The homepage doesn't load ATM. Please link the relevant reddit discussion.

The question essentially is, should pcsx2 make a comeback in the repos?

It doesn't matter, we can still have a template so you can build it yourself. I'll look into it. PCSX2 is great software.

fvalasiad commented 3 months ago

The homepage doesn't load ATM. Please link the relevant reddit discussion.

It loads to me, both links do.

added link to discussion.

It doesn't matter, we can still have a template so you can build it yourself. I'll look into it. PCSX2 is great software.

I personally manage just fine, it's for the rest of the community that I am proposing this. Not everyone is capable of writing templates or compiling and installing from source.

MIvanchev commented 3 months ago

I mean if you have a tempate make a MR so we can all use PCX2, who cares if it's merged 🥳

fvalasiad commented 3 months ago

I mean if you have a tempate make a MR so we can all use PCX2, who cares if it's merged 🥳

Sure I guess, I'll look into it this afternoon.

MIvanchev commented 3 months ago

Great man, thanks, I can help you if you hit some cross-building problems. Check out my MRs, https://github.com/void-linux/void-packages/pulls/Mivanchev, a lot of new packages and none of them merged but a lot of people use them, this is the Void way.

About the process, I myself am constantly asking developers to release and tag versions properly and the Void maintainers are have a point. Void is about quality and stability and it's not possible with a "every nightly is an official release" policy.

fvalasiad commented 3 months ago

Well this is more complicated than I expected it to be. Tons of dependencies and the standard build procedure defined by the project fails on void.

What sucks is that tomorrow I leave for a business trip and I return Friday, want me to share the progress made so far in case you wanna continue while I am off?

MIvanchev commented 3 months ago

Yes, it's gonna get nasty, it always does. You can open a MR prefixed by [WIP] ... and we can work on it together, yes.

ahesford commented 3 months ago

The situation is unchanged. I still see multiple tags cut daily and we are not interested in tracking this churn.

Also, this repository is not an ersatz AUR. You like WIP PRs if you are stuck on something and want to ask official maintainers for help getting you over the finish line. If you want a place to keep unacceptable templates or foster contributor collaboration in ongoing development, do so in a private fork.

fvalasiad commented 3 months ago

@MIvanchev Well well guess you can open PRs in my fork :D.

MIvanchev commented 3 months ago

@ahesford I don't challenge your authority but they do seem to have a somewhat better process where stuff are marked as pre-release and stable. In the past we have discussed much worse situations and overall I think they are currently doing a good job.

chrysos349 commented 3 months ago

see the template for pcsx2 here - https://github.com/chrysos349/void-packages/tree/pcsx2 the emulator works. tested with one game.

NOTES:

TODO

MIvanchev commented 3 months ago

Ha, good work! Just figured out myself that libbacktrace is required :/ Nice 1 @chrysos349

MIvanchev commented 3 months ago

Could you elaborate on the shaderc patch?

chrysos349 commented 3 months ago

https://github.com/PCSX2/pcsx2/blob/master/.github/workflows/scripts/common/shaderc-changes.patch

fvalasiad commented 3 months ago

I had figured out that libbacktrace was required too but I noticed that pcsx2 builds it with a script as described by their build instructions, you guys recommend that we install it manually instead of running the script? Cause the script fails at some point for whatever reason. Obviously it's solvable whatever it is but if we can work it out otherwise then it's fine I guess. Good job nevertheless!

chrysos349 commented 3 months ago

libbacktrace is optional now, so I disabled it (thanks to this https://github.com/PCSX2/pcsx2/pull/11567). Also I updated pcsx2 to 2.1.9.