-
-
Notifications
You must be signed in to change notification settings - Fork 15k
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
jetbrains.plugins: fix darwin builds #384811
base: master
Are you sure you want to change the base?
Conversation
9a4f097
to
36ccec5
Compare
Not sure who to ping here, but @GenericNerdyUsername @liff @theCapypara. |
36ccec5
to
49c742a
Compare
Looks reasonable, but I don’t have a Mac to test with. |
There were 2 issues for usage of `jetbrains.plugins.addPlugins` in darwin: - Some IDE products have spaces in name (e.g.: "IntelliJ IDEA CE"). The current code didn't escape or quoted the strings together, so it failed during build - After fixing the issue above, opening the resulting app bundle (e.g.: `open result/Applications/IntelliJ IDEA CE`) would result in an error because we modified the bundle but kept the old signature This commit fixes both those issues, the first one by quoting the IDE name using `lib.escapeShellArg` and the second one by using `darwin.autoSignDarwinBinariesHook`.
8293099
to
cef5daa
Compare
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.
Did some more cleanups and add myself as a maintainer. I think the plugins derivation looks much better now.
For reviewers: review by commit there is a commit that is just formatting with nixfmt-rfc-style
.
This comment was marked as outdated.
This comment was marked as outdated.
This comment has been minimized.
This comment has been minimized.
2 similar comments
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
While NixOS#321247 technically "fixed" JAR plugins, it fixed by creating a broken symlink. The reason it wasn't causing issues before is because the derivation before set `donFixup = true`, skipping the checks for broken symlinks in the derivation. Now that the fixup phase is re-enabled, this is causing the build to fail if you have a JAR plugin like `wakatime`. Now the symbolic links are correct, but I am not sure if this is working correctly or not.
0dc1eec
to
96a6b26
Compare
So we can build it in OfBorg.
@ofborg build jetbrains.plugins.tests.idea-ce-with-plugins |
There were 2 issues for usage of
jetbrains.plugins.addPlugins
in darwin:open result/Applications/IntelliJ IDEA CE
) would result in an error because we modified the bundle but kept the old signatureThis PR fixes both those issues, the first one by quoting the IDE name using
lib.escapeShellArg
and the second one by usingdarwin.autoSignDarwinBinariesHook
.Also it formats the code using the
nixfmt-rfc-style
and does some general clean-up in the plugin derivation.Things done
nix.conf
? (See Nix manual)sandbox = relaxed
sandbox = true
nix-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.