-
Notifications
You must be signed in to change notification settings - Fork 559
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
[Third Party] Traditional (and Sandboxed ?) Packaging Checklist #20
Comments
We’re not really interested in this making it into repos, so unfortunately that won’t influence much in our source. I’d be up for integrating XDG_DATA_DIRS though, since I imagine certain types of builds might need it (Flatpak maybe?). You should be able to keep the .desktop/appdata as part of package automation; for official builds I use MojoSetup, so hardcoded files would technically conflict with those builds. data.zip can be extracted from the Make and Play version, which can be unzipped without running the installer, but we might host this separately, not sure (technically not my call). Will report on this one later... |
I have to say that the current license still have chances of being approved by legal teams, it's just not common, so it would need a manual review by lawyers... And, well, I'm not a lawyer... So I can't say if distributions will accept this License. Either way, this is not the primary objective of this repo, and I completely understand why you aren't interested in that :). It would just be cool if it was easily available to everyone. |
Thought about packaging it for gentoo myself, I don't think any change needs to be done so far, but an official Also one that I wonder is "We’re not really interested in this making it into repos" while putting Flatpak, is it because of some release models? EDIT: The license is fine btw (not a lawyer but non-GPL-compatible is okay) |
I’m giving Flatpak a little bit of rope because that’s the only format that might end up replacing MojoSetup later on (we’re talking like 5-10 years after they fix joystick hotplugging), so it’s not really about the repos as much as the package format and runtime. |
As #7 has been rejected, it is very unlikely that official repos will accept VVVVVV as explained in that thread by @Wuzzy2. I will still try if you wish so ;). Either way, there's still unofficial repos* or Flathub and Snap which both accept license-tricky** software :). * like RPMFusion for Fedora |
Currently I can not start working on it. |
I started creating a Desktop and Appdata entry in this gist, so we won't have to add it to source code and MojoSetup won't see any conflict ;). But I'll need a description (preferably translated) (maybe the one from Steam) and screenshots (better quality one from those I added) to add :)! If you could provide me with that, it would be awesome :). Also, I'll need a usable icon, but that is easily retrievable from data.zip and is being discussed at #18 to provide some high quality ones. |
I use Gentoo, so I guess I can test a Gentoo ebuild if need be. But I don't want to be a proxy maintainer unless the Gentoo people will let me not use my real name 😛 |
I'm definitely packaging this for NixOS. |
@LyesSaadi I have submitted a PR for NixOS: NixOS/nixpkgs#78319 |
Great! But for getting VVVVVV to other distribution like Fedora, Debian or Ubuntu, we'll still need a "redistributable" (legally) data.zip :/. @flibitijibibo, have you looked into it? |
@LyesSaadi is your intention to distribute a complete version of VVVVVV for free on those distros? That’s not something I’m planning to support, sorry. Packaging and distributing the make and play version is fine, though. |
Yes, the make & play version. Just an exception for Linux Distributions will be fine (and a license with the data.zip) ;)! |
Ah, ok then! I’ll add a general exception for including data.zip with distributions of the Make and Play edition tomorrow morning :) |
Nix supports packages that require user-provided assets to be compiled, in which case the user will be prompted and once provided the compilation will occur on the user's machine. @dkudriavtsev's nixpkgs PR uses this for the full version of the game. I'm assuming this is allowed? The workflow would be something like:
|
Also, nixpkgs supports NixOS, other Linux distributions, macOS, as well as has very buggy MinGW/Cygwin support. It'd probably best if you made sure to include package managers in general, so that it could be distributed in standard Linux distributions, along with nixpkgs and things like Homebrew or Chocolatey. |
Ah! I see that the exception to redistribute the data.zip from the Make and Play has been added (11 days ago... Yeah, I didn't see it 😓...)! Thanks @TerryCavanagh 😄! And that the possibility to load data.zip has been merged 😄! |
I only have experience with NixOS, which has great infrastructure for wrapping binaries with arguments. Do other distros have something similar, or do you have another suggestion for how to locate data.zip? |
Interestingly enough, FreeBSD already has a package in games/vvvvvv. It asks the user to supply a |
Looked over this and I think we're actually done at this point... all the compliance stuff is done and the Make and Play builds are being properly packaged and distributed in some capacity. For what it's worth I think the best way to package it for Linux is to package via Flathub, as the latest freedesktop SDK tends to be really good about keeping SDL updated (and we will probably require SDL 2.0.18 for VVV 2.4, which will at minimum be in the 22.08 SDK if not an updated 21.08). If SteamOS 3 is anything like SteamOS 2 (still waiting for a kit...), flatpak will be the preferred way to install non-Steam packages. Non-Linux targets can of course package via their usual methods (see the FreeBSD package above). |
Something isn't clear to me about the meaning of "redistributing". |
Hello!
First, a huge thanks for releasing this incredible game source code :D! This is truly awesome! But what could be even better, is to package it properly for Linux Distributions. And you seem to not be against this idea according to your comment in #2. So, this is a basic checklist to what needs to be done in order to have it packaged (at least, in RPM):
Mandatory changes
XDG_DATA_DIRS
to avoid having a .zip in the binary directory (Add -assets option to specify data.zip #139)I would be happy to help with these.
Optional changes
Legal: Adding a non-proprietary, "redistributable" data.zip: or that would mean that the user should do some further steps to get it working which would defeat the whole purpose of packaging
[REFUSED] Legal: Change the license to choose a more common one: easier to be accepted by distribution's legal teams [Docs] License is not open source #7
Progress
Documentation
I also have to insist on the importance of the legal changes if you want VVVVVV to be packaged.
If the second of the optional changes (license) is not met, it would be a LOT harder to get it to land in official repos, maybe some unofficial ones.And if the first (data.zip) is not met, packaging would be useless.But, hey, this is your (awesome) game and these are your choice. So, feel free to decide otherwise :).
Also, I would be happy to be VVVVVV's Fedora Packager.
The text was updated successfully, but these errors were encountered: