The feature that lets you create self-contained binaries seems like a potentially simpler way to package JVM apps than GraalVM Native.

Probably a lot of other neat usecases for this, too

  smolvm pack create --image python:3.12-alpine -o ./python312
  ./python312 run -- python3 --version
  # Python 3.12.x — isolated, no pyenv/venv/conda needed

yeah, it's analogous to Electron.

Electron ships your web app bundled with a browser.

Smol machines ship your software packaged with a linux vm. No need for dependency management or compatibility issues because it is baked in.

I think this is how Codex or Claude Code should be shipped by default, to avoid any isolation issues tbh

How "fat" are the packed machines? In other words, how much bloat is inevitable, or is that entirely controlled by the base image + the user's smolvm machine spec? How does smolvm's pack compare to something like dockerc [0] in terms of speed and size? Disclaimer: I just learned about dockerc!

I can't actually create and test a pack right now because of [1], but I love the idea of using this to distribute applications you might otherwise use a Docker image for.

[0] https://github.com/NilsIrl/dockerc

[1] https://github.com/smol-machines/smolvm/issues/159

pretty light weight!

About the same size as the docker image to be honest. Join the discord and I'm happy to give you a white glove experience with onboarding :)

https://discord.gg/E5r8rEWY9J

yah, i guess everybody share the experience of "i messed up with my dev env" right? We want this "machine" to be shippable, meaning that once it is configured correctly, it can be shared to anyone and use right away.