Hacker News new | ask | show | jobs
by darren0 551 days ago
Seems very similar to https://dist.sh/ but distillery seems a bit more robust.
3 comments

Nice! Shame that I didn't knew about it earlier
nice work marverix, love seeing bash used like this.
Thanks! <3
dist author here. since darren0 was so kind to reference my tool, I'll just add dist is written in go, is cross platform, can handle github, gitlab, homebrew packages (with caveats), and a few others and you can create custom aliases as well. there are a few additional features in the works right now. also supports signature and checksum verification if available.
There's also https://github.com/zyedidia/eget, which is also written in Go.
Here is my HN submission about eget: https://news.ycombinator.com/item?id=41479539

It's great to see movement in this space. The main problem in my experience is github api and throttling. It's really hard to download 40 binaries while building an image for CI/CD. Binaries themselves are CDNed, but github apis to find them are easily throttled, especially behind NAT.

Need to have some caching mechanism avoid this. Eget seems currently abandoned, maybe gah can start looking stuff in a cache.

the dist project referenced above supports both caching and authentication for both github and gitlab.
yes, i added it to my blog post, will investigate
cool. please let me know when you post, I would like to read. I'm the author of dist if that wasn't clear. Also looking for feedback on the project should you find it useful.
DuckDB binary downloaders compared

`eget` wins:

    eget duckdb/duckdb
    2 candidates found (unsure architecture): please select manually
    (1) duckdb_cli-osx-universal.zip
    (2) libduckdb-osx-universal.zip
    Enter selection number:
Afterwards it correctly unzips. Can use cmdline flag to match artifacts

`gah` fails:

    gah install duckdb/duckdb
    Fetching release info for: duckdb/duckdb [latest]
    Found release: v1.1.3 Bugfix Release
    Downloading:
    Warning: output file name has no length
    curl: option -o: is badly used here
(Using curl 8.4.0 on macOS)

`dist` also fails:

    dist install duckdb/duckdb
    • determining latest version 
    • version: 1.1.3
    ⨯ no matching asset found, score too low
    ⨯ closest matching: duckdb_cli-osx-universal.zip (34) (threshold: 40)