Open bpollack opened 6 years ago
(As part of this, it might be interesting to extend the deployment vocab to optionally build a Docker image, not just an executable.)
+1 Docker. +1 also for snap or flatpak.
Is this issue still of interest?
I tried out a naïve way to package the command line REPL of 0.98 in this repo, but it is quite large (~250MB) and holds all of the gtk
related deps needed for the GUI.
I imagine quite a bit of work is necessary to split what is distributed in a CLI-only image vs. the binary that contains the nice GUI for the desktop. If you can give me any hints concerning what can be left out of the build for a minimal CLI, I could perhaps pick this up.
You can make a docker image that builds Factor and bootstraps without the ui with the following command:
./factor -i=boot.windows-x86.64.image -exclude=ui
In that case you won't need any of the GTK packages and the image can be relatively small. It would be cool to have a docker image that builds factor, bootstraps, and run some tests like at the end of the .travis.yml
file.
What other ideas/use cases did you have for making a docker image?
unrelated, links about snap/flatpak:
Exercism v3 will use docker images to allow people to do Exercism exercises entirely in the browser, without having to download and run the native binary CLI like Exercism v1 and v2 did.
I'll eventually need to create a Factor docker image for Exercism, which only needs command-line interaction features. This specific feature for Factor in Exercism v3 has not even been started on yet, though, it's in the future.
Hi, I've created a Flatpak build recipe for Factor, currently at: https://github.com/valpackett/org.factorcode.Factor
Ideally submitting to Flathub should be done by the project authors themselves but I can be the submitter/maintainer as well, hopefully with the maintainers' permission. ;)
If I were to contribute a factor docker image, where should I put the stuff? (Dockerfile, Makefile?, GitHub CI?)
I'm interested in this both for an Exercism exercise runner and also for some discord bots I'm running for concatenative programming languages
Especially given we're already on Travis, I don't think it'd be too hard to build Docker images as part of our release cycle. That'd be very handy in server contexts, even if it wouldn't be too useful for us.