-
Notifications
You must be signed in to change notification settings - Fork 25
Description
As I type this, it appears that LLamaBarn v0.11.0, released on 13 Nov., comes prepackaged with llama.cpp's llama-server version b6942, which was released back on 4 Nov 2025. The latest version of llama-server as I type this is version b7134, released just 10 hours ago on 23 Nov. And there have been nearly 150 releases from then 'til now.
Is there any plan to possibly have LLamaBarn be able to update the version of llama.cpp / llama-server without necessarily having to update the entire macOS application? That is, as written, LLamaBarn will be perennially running an outdated version of llama-server. And to update the version of llama-server, it likely will require a new build of LLamaBarn.
Considering the speed at which llama.cpp versions come out (again, nearly 150 releases occurred since b6942 up to b7134), one of following two scenarios plays out with the current setup. Either
- LLamaBarn needs to push out updates every time llama.cpp has an update (which seems both onerous and unnecessary, as the actual LLamaBarn app (i.e., Swift code) likely hasn't changed at all; or
- LLamaBarn is perennially outdated
Instead, much as you are doing with the curated models, would it be possible to have LLamaBarn download/self-update the version of llama.cpp / llama-server? Possibly have LLamaBarn not come with a version by default, so the app itself never changes. Then have LLamaBarn pull down the latest current version of llama.cpp and simply use that.
For example, it could simply have a button allowing the user to update to the latest current, where it then goes and pulls the latest .zip for the respective system's architecture (arm64 or x64) and decompresses it to some given directory (e.g., /opt/llamabarn/, where you then have all the files in /opt/llamabarn/build/bin/). Or it could even check what the current latest version is on GitHub--possibly on LLamaBarn startup--and indicate an update is available when that version differs from the currently installed one.
Point being the menu bar app itself likely does not really change that often. But the llama-server is constantly being updated, much as the models used update more often. (Of course, you can get fancier and add even more, like allowing the user to specify specifically which version of llama-server to install, in case they want to regress to test something.)
Anyway, it feels like an opportunity to both keep the LlamaBarn app itself simpler while also providing more functionality.
[NOTE: This wouldn't be so much of an issue if the version of llama.cpp didn't change so often. For example, there is a companion FLOSS macOS menu bar app to Syncthing, the CLI file sync program, called Syncthing for macOS. This app also bundles the version of Syncthing inside itself in a similar manner.
The difference is that they DO update the Syncthing for macOS app whenever the Syncthing tool itself is updated. But thankfully Syncthing does not update nearly as often.
(Currently that project is in a transitional phase as Syncthing came out with v2. But until that point they were pretty lock-step in keeping the underlying version of Syncthing up to date.)
Just figure I would mention this as I tinkered around. Otherwise, this app seems quite nice.]