Ruby Packer – Distribute Ruby code as a compiled binary
github.com
github.com
Regardless the idea itself: it does work, and I think it's good for those who want to distribute (small) programs that for one reason or another can't be written in compiled languages.
I think a difficulty was certificates, but there was a strategy to make them work (that is, to pack the ones from the current O/S).
[1] https://www.ruby-toolbox.com/categories/packaging_to_executa...
* Invoke ruby program * Find all in-memory dependencies * Statically link ruby and the discovered dependencies * Compile with an args interface with the Pascal compiler * Spit out exe
This was for windows only if I recall correctly.
Does anyone know of a project that'll do that? I tried 4-5 projects (IIRC Nuitka, py2exe, pyinstaller, shiv and some others) with no success.
Really? I think many of solutions you've tried (including Nutika, py2exe and pyinstaller) do produce an executable with an embedded Python runtime [1]. I guess you were rather unable to produce a working executable, which can happen mainly due to peculiar dependency requirements. A list of dependencies you needed would help.
[1] (Added later:) see the following reply for what this exactly means.
[1] https://pyinstaller.readthedocs.io/en/stable/operating-mode....
Looking at you, old “hub” CLI from Github.
The node.js binaries were about 50 MB which sounds large for hello world but the size would stay practically the same for a full featured application since everything is baked in already. I'd imagine the Ruby version is relatively similar in size but cannot say for sure.
Personally I think I’d favour small static builds over linked binaries.
1. https://sorbet.org/blog/2021/07/30/open-sourcing-sorbet-comp...
You want to send a simple script / program to someone without telling them to install Ruby. For 99% of people around they world, including programmers, they will much prefer to double click on an executable rather than yet another instruction set to install and run the program.
(At issue here is library reuse where Ruby to Crystal, while not 1:1, would be close)