-
-
Notifications
You must be signed in to change notification settings - Fork 14.9k
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
gradle2nix: init #77422
gradle2nix: init #77422
Conversation
It seems like we are still having some IFD problems or something similar. |
Looks like everything built fine except
This is strange because it depends on version |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reviewed the changes to shattered-pixel-dungeon
. I still have to actually build and test it.
edit: oops, I didn't notice the WIP status
@petabyteboy Looks like Also, I have a concern with the approach here. Since the same So there are a few options here:
Thoughts? |
I packaged mxisd / ma1sd a while ago but stopped using both packages due to architectural changes in the matrix protocol (not relevant to this PR). This however is the reason why I am not paying much attention to the packages atm. I would be fine with removing at least mxisd soon and hope that somebody cares for ma1sd enough. Maybe some other user of ma1sd wants to take over! |
Thanks for noticing, I did not really think about this.
... I think option 1. is the best. since it is okay to require all gradle2nix applications to be updated when gradle2nix is has changes to the gradle-env.json format. Additionally I will add an updater script to each individual package to make this easier.
I already wanted to implement an updater script for each package even without the possibility of changes to gradle-env.json, but now it is even more useful.
I am strongly opposed, since this would lead to code duplication, and in the end it would not be less work to do a proper upgrade of gradle2nix.
I am not sure what exactly you mean by this. I think the gradle2nix application itself is already easy to package. For other packages using buildGradle, I would see it as a big disadvantage if we have to duplicate the whole buildGradle expression for each package, so I am very happy with the current approach.
|
Sounds good! There's also the possibility to include separate versions of gradle2nix if we need to make incompatible changes in the future, although I don't forsee this happening. Not a big deal for this PR, of course. I wrote a skeleton |
Oh, that's neat. I already wrote updater-scripts for ma1sd and mxisd and fixed the NixOS test for them. |
I have noticed there is one big caveat to using update scripts: |
FYI, I pushed 1.0.0-rc2 which fixes a breaking behavior for Kotlin-based projects. |
Hello, I'm a bot and I thank you in the name of the community for your contributions. Nixpkgs is a busy repository, and unfortunately sometimes PRs get left behind for too long. Nevertheless, we'd like to help committers reach the PRs that are still important. This PR has had no activity for 180 days, and so I marked it as stale, but you can rest assured it will never be closed by a non-human. If this is still important to you and you'd like to remove the stale label, we ask that you leave a comment. Your comment can be as simple as "still important to me". But there's a bit more you can do: If you received an approval by an unprivileged maintainer and you are just waiting for a merge, you can @ mention someone with merge permissions and ask them to help. You might be able to find someone relevant by using Git blame on the relevant files, or via GitHub's web interface. You can see if someone's a member of the nixpkgs-committers team, by hovering with the mouse over their username on the web interface, or by searching them directly on the list. If your PR wasn't reviewed at all, it might help to find someone who's perhaps a user of the package or module you are changing, or alternatively, ask once more for a review by the maintainer of the package/module this is about. If you don't know any, you can use Git blame on the relevant files, or GitHub's web interface to find someone who touched the relevant files in the past. If your PR has had reviews and nevertheless got stale, make sure you've responded to all of the reviewer's requests / questions. Usually when PR authors show responsibility and dedication, reviewers (privileged or not) show dedication as well. If you've pushed a change, it's possible the reviewer wasn't notified about your push via email, so you can always officially request them for a review, or just @ mention them and say you've addressed their comments. Lastly, you can always ask for help at our Discourse Forum, or more specifically, at this thread or at #nixos' IRC channel. |
Still important te me. |
I marked this as stale due to inactivity. → More info |
I'm not planning to work on this anymore |
Motivation for this change
Based on #77417
@tadfisher has done a wonderful job on gradle2nix and this is an attempt to integrate it into nixpkgs.
I have chosen a strategy similar to the one used for yarn2nix: Only the required .nix files are copied from the upstream repository to nixpkgs, the nix code generator itself remains in a seperate repository and is packaged as a normal application.
Todo:
Things done
sandbox
innix.conf
on non-NixOS linux)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
./result/bin/
)nix path-info -S
before and after)Notify maintainers
cc @