-
-
Notifications
You must be signed in to change notification settings - Fork 14.7k
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
Why isn't Intellij community edition build from source? #26866
Comments
Probably because nobody made the effort to build it from source. Archlinux seems to have taken the same route: https://git.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/intellij-idea-community-edition It look like it requires intellij to build intellij, which would make bootstrapping challenging. |
Might be nice to make a Project (that tab next to Pull Requests) for "big gnarly binary packages that we'd like to build from source" so we can track things like this, Electron, bazel, openjdk for mac, and a few others. Then motivated folks could go browse them and figure out how to turn them into source builds. I wouldn't say that bootstraps are fundamentally bad but they do make builds more annoying. The OpenJDK build for Linux currently has a bootstrap expression for building a bootstrap compiler that then gets fetched to build the one we actually use. It's a fairly common pattern and not an awful one (unless you want source builds because you're afraid of Ken Thompson attacking you; then you're probably out of luck) |
Okay, did the project thing. Feel free to add stuff. |
AFAIK Java stuff in nixpkgs is often handled this way, as there are yet few nixpkgs contributors that work on Java packages. |
Yeah, and also bootstrapping the java package world from scratch is genuinely terrifying. |
The advantage is that you can "update" arbitrary packages independently, AFAIK, so it wouldn't seem too terrifying to me to start with the most interesting stuff for the interested (potential) contributors. |
Yeah, just saying that building all the really low-level maven stuff that everyone else uses is going to be a big PITA. |
IMO there should be a meta field to protect people who don't want blobs from accidentally installing those packages. Licence doesn't express that. |
See another thread for that. |
Thank you for your contributions. This has been automatically marked as stale because it has had no activity for 180 days. If this is still important to you, we ask that you leave a comment below. Your comment can be as simple as "still important to me". This lets people see that at least one person still cares about this. Someone will have to do this at most twice a year if there is no other activity. Here are suggestions that might help resolve this more quickly:
|
Arch builds it from source now: https://github.com/archlinux/svntogit-community/blob/packages/intellij-idea-community-edition/trunk/PKGBUILD |
I marked this as stale due to inactivity. → More info |
Is the goal for this to compile just the ide from source, or the ide+dependencies? Former seems somewhat redundant, latter is probably a pretty big task |
Also, theres mention of a docker build method in the readme, which might be worth a shot |
ive looked into this some more, turns out they have their own build system (JPS), but also use others in various places (ant, gradle, maven). As far as I can tell, JPS is exclusive to jetbrains and has no documentation, or at least none that I can find. They do include a bootstrap utility, but it downloads classes via maven that are part of the source tree, which means we have three options: using the downloaded classes (kinda defeats the point of building from source), making a JPS builder that doesn't have this problem (a lot of effort) or using past versions to build our way up to the current one (hacky, also a lot of work) |
Theres also a |
Im not very well versed in java build systems, so theres a good chance I've missed something, but the way the docker container does it seems like a no-go |
From commit history, looks to be "DBus menu wrapper" https://github.com/JetBrains/intellij-community/tree/master/native/LinuxGlobalMenu |
pull #259373 isn't done, but might be of interest |
This can be closed as completed |
Closing, assumed this is right. |
No description provided.
The text was updated successfully, but these errors were encountered: