comby-tools/comby

Github Releases for >= 1.2.x

coolaj86 opened this issue · 3 comments

Recent Pre-Built Releases?

I've been interested in adding Comby to webinstall.dev for a while and we use 1st party official, static builds wherever possible.

I believe the last time I looked at doing this either builds weren't available, or there was an issue with static builds.

Now it looks like there are a number of builds that have been pushed to Github, except for the last few releases.

Do you plan on publishing these again?

For reference

Webi is different from package managers like brew because it is very lightweight - it typically just downloads the official build from github releases (or a similar release system), and puts them in ~/.local/opt/ or ~/.local/bin, without requiring sudo or messing up system permissions, and sometimes includes a "reasonable defaults" config file.

For example: it doesn't make sense for someone to have to download all 400mb of brew when they just want a 20mb tool. Currently I've installed comby via brew but, one day, I hope to not have to have to deal with it anymore for modern tools. :)

I like what I see with Webi, this is the first time I hear about it :-) I've used an install script for binary in releases on GH and if Webi can do that, all the better.

So as far as publishing binary releases, I can only really reasonable pull off builds for Linux distros (which I've put up before, but not recently--and, in fact, they are currently not linking static dependencies). For Mac OS there's apparently a trick to force static linking for dependencies so maaybe this pans out but I haven't tried, and not sure whether that'll just work across different Mac versions (and definitely not M1). I dislike a 400MB install as much as anybody but am unsure about a clear path to victory here. If you have ideas though, let me know.

Going over some repo issue to see what I can clean up 🙂 For this issue--for the foreseeable future, I just don't see a way to support a static binary release across all platforms on this repo. Unfortunately it demands too much maintenance/upkeep from my side that I just don't have time or resources to streamline. To avoid brew on Mac, the best runner-up option is to install via opam. I'm not sure how big the size ends up being then, the situation might be a bit better, but I don't want to make any promises.

What I do plan on doing is releasing a comby-lite version that only depends on node, which will help cross-platform and some platform-specific linking issues, but I'm unsure how feasible it is to then create a static build for that. That's the best chance of aligning builds with the principles behind webi (which I like in general, just, need to find a balance of what's possible here). This is quite a ways off, and will happen in a separate repo, so I will revisit this when it's more likely to happen.