FEATURE: Clean up the horrible build system
janschiefer opened this issue · 3 comments
TODO: Merge lw.comm-server, lw.comm-server#electron_bundler and LaserWeb4 into one repsitory and remove duplicates.
TODO: Move from npm to yarn.
TODO: Migrate to newer package versions of dependencies (especially electron and electron-builder).
TODO: Implement .deb building for Linux.
There are reasons why it was setup like this.
- lw.comm-server was made to be an independant websocket to machine gateway that could serve different frontends.
- The master branch was only for development.
- The electron_builder branch was for building different OS versions of LW4.
- The Windows standalone EXE makes >90% of usage.
Sure, it would be nice to migrate to actual dependencies, but this needs a bigger effort.
Isn't .deb only for Debian but AppImage for all sorts of Linux?
My opinion as a newcomer to the project (just my 2 cents, take it only as an opinion):
- I like the separation of concerns of having gui separated from the api, in matter of fact, I think it should even go further and fully separate gui from api. API shouldn't know about gui. Gui should connect to the server by host and that is it
- I don't find any point in moving to yarn
- Definitely dependencies are quite outdated and even moving the app gui to Tauri could be a very interesting move
- You could use docker cross app (I've made a PR to make it work)
What about moving the API to something more resilient as golang? Is that of any interest to you? It would provide a better build system, a better security (code wise), a single file build without dependencies to run cross platform, less dependency hell... I wouldn't mind to work on that new version and research on how we could do it slowly.
.deb is used also by ubuntu systems I think