crystal-lang / distribution-scripts

40 stars 24 forks source link

Update installer script #91

Closed straight-shoota closed 3 years ago

straight-shoota commented 3 years ago

https://github.com/crystal-lang/crystal/issues/10626

straight-shoota commented 3 years ago

Git doesn't pick up that bintray/scripts/install.sh was moved to packages/scripts/install.sh and modified (probably too many modifications).

The script has a lot of changes because OBS has specific repos for each distribution release. So instead of checking for deb vs. rpm, we need more specific information. This is drawn from /etc/os-release which should usually be available. If it does not work, the env variable DISTRO_REPO can be used to specify a value.

Alternative channels are still missing, mostly because it's hard to set up on OBS without current nightly releases working. I'll add that once our nightlies are back.

I've added test cases for more relevant distro releases.

There were a couple minor issues with i386 packages themselves (ATM rebuilding and re-checking), but the installer should be good.

bcardiff commented 3 years ago

Looks good. Thanks for keeping the tests.

straight-shoota commented 3 years ago

Yeah, the tests are great 👍

bcardiff commented 3 years ago

So OBS receives a tarball and package it as .deb/.rpm. I think that whatever is needed to push a tarball should be included in this repo also and then used in the main repo. So we can have nightlies in OBS.

Another task artifact that would need to be updated at some point is the travis build script at https://github.com/travis-ci/travis-build/blob/master/lib/travis/build/script/crystal.rb#L104-L106 .