imjasonh / ideas

A place for me to file issues against myself for things I want to build when I'm bored
5 stars 0 forks source link

apkfuse #113

Open imjasonh opened 1 year ago

imjasonh commented 1 year ago

Implement a FUSE filesystem mounted under /something and add /something to your PATH.

When invoking a command like go, if go is not found earlier in the PATH, the shell will check if /something/go exists, and the FUSE implementation will be asked if that file exists.

To answer that question, the FS will query the configured APK repo, find packages either named go, or that provides cmd:go. There may be many different versions that match, but we'll just select the latest version of the package. Then it can install all the dependencies of that package, and the package itself, into some other location on disk, so it can be served from there for future invocations.

The result is, I can run my mounted FUSE filesystem, and invoke arbitrary commands which are downloaded and installed just-in-time.

Open Questions: