thorium-nova
thorium-nova copied to clipboard
Create a headless server build output
This involves a couple of things
- [ ] Use pkg (https://github.com/vercel/pkg) to create the binary
- [ ] Create a step in the automated release process which generates binaries for each supported platform. This will likely be done with semantic-release
- [ ] Make sure the macOS binary is code signed properly
- [ ] Upload all of the binaries to the Github release, since that's what we currently use for distributing release assets.
Discussed in https://github.com/Thorium-Sim/thorium-nova/discussions/14
Originally posted by Tsht October 5, 2021 Idea is to have a possibility to run the server on dedicated headless (command line only) environment. This allows to have a running server, constantly running if needed, without needing any fancy graphical features and should allows easy play over the internet on servers which does not require that much resources.
I can pick this up this weekend.
Holler if you have any questions. We'll be using my Apple Developer account for macOS code signing and notarization, and the appropriate environment variables are set up in the repo secrets, so you should be able to access those in the Github Action that performs the build process. Not sure how all that will work, but it's not impossible. 😅
Here are some helpful links that I used for code signing and notarizing the Electron app https://samuelmeuli.com/blog/2019-04-07-packaging-and-publishing-an-electron-app/#code-signing https://samuelmeuli.com/blog/2019-12-28-notarizing-your-electron-app
The "Single Executable Apps" feature could be helpful for this https://openjsf.org/blog/2023/04/18/node-js-20-now-available/