houseabsolute / ubi

The Universal Binary Installer
Apache License 2.0
190 stars 6 forks source link

How to match a repo with mixed release zip names? #75

Open rhysm94 opened 2 weeks ago

rhysm94 commented 2 weeks ago

Hi there!

I'm looking at using ubi with mise to install some tooling in my iOS project.

I've figured out how to get it to install an older version of Sourcery which has a release with only one zip file – Sourcery-2.0.1.zip. More recent versions of Sourcery have also started to be built for platforms other than macOS, meaning newer releases offer the following options:

I know that sourcery-2.2.5.zip is the macOS release, but I can't figure out how to force this to be selected. When I try to install using the following command:

./ubi -p https://github.com/krzysztofzablocki/Sourcery -e sourcery --debug

I get the error:

[ubi][ERROR] could not find a release for this OS (macos) from sourcery-2.2.5-ubuntu-22.04.4-lts-jammy-x86_64.tar.xz, sourcery-2.2.5.artifactbundle.zip, sourcery-2.2.5.zip

Is there a way to force ubi to download that sourcery-2.2.5.zip release bundle?

Thanks!

autarch commented 1 week ago

The way --matching works is just to filter out multiple options after the OS and arch filtering. It's not a way to just select an arbitrary file.

I don't think there's a good way for ubi to handle this case. Honestly, I think the Sourcery project should adopt a more consistent release file naming scheme.