Closed plattfot closed 2 years ago
I'm completely unfamiliar with Guix so I'm not sure what it means to "not handle js that well", but since this is a 95% javascript (typescript actually but that gets turned into javascript) app I think it will be kind of difficult to reduce the javascript 😅
after looking into the thread, i guess what guix tries keep track of all the dependencies of a package to be able to always reproduce builds, and that this is difficult for things in JS land because node_module resolution is a bit of a mess. I don't think I can help here, best I could possibly do is provide a docker image which builds the app for you so GUIX doesn't need to worry about it.
I'll probably won't get around to that very soon, but it's not too difficult to do it yourself, someone in #109 already made one!
As to the title of this of this issue: no, i can't reduce the dependencies in a significant enough way to matter. Next.js, the framework used to create org-roam-ui, already has 200 dependencies, not counting those dependencies' dependencies. I cannot make the app without Next.js (or at least, I don't want to) so you'll have to look at a different solution im afraid
Yeah, I suspect as much. Docker image will not work with guix, as it wants to have full control of the dependency graph to be able to reproduce the package. And no worries, hopefully guix will be able to handle JS properly in the future.
Thank you for taking the time to answer.
@plattfot just as a note, Guix has Docker (so you should be able to run any Docker image), or of course you can include the package you made in your own channel or one of the bigger ones which will allow for such things (Nonguix, and Guix R Us are the two that come to mind).
@podiki. Yeah, just meant that Docker wouldn't be feasible to have in the dependency graph for packaging this for Guix's main channel. And yes, I'll probably see if I can contribute this to Nonguix, in the near future.
Not sure if this classifies as an enhancement, please relabel if it is not.
Is your feature request related to a problem? Please describe.
I recently package this up for guix (57891) to fix #191 for guix users. I did get some feedback about the minified js and the huge number of dependencies. Guix right now does not handle javascript that well, e.g. see this mailing thread. The feedback from the guix developer was that guix should generate those minified js files to properly bootstrap this package. But given the sheer number of dependencies this has, it might not be possible in the current state of guix.
After this long-winded explanation, is it possible to minimize the dependencies for Org Roam UI? It would help a lot for properly package this up.
Describe the solution you'd like
As I have zero javascript experience, I have no idea how feasible this is. But I do know that reducing dependencies are hard. And I'll understand completely if the answer is no.
Thank you for a great package!