A plain tar.gz archive should be made available for downloading and packaging for Linux/*NIX
- Dominant language
- Python
- Stars
- 17.3k
- Forks
- 4.6k
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 13
Description
Please make a (signed, with checksums) .tar.gz or similar archive available for Linux/*NIX distributions instead of (or, at least, as well as) the command-line installer. I have several reasons for requesting this:
1. Maintenance of an installation script is error-prone and time-consuming.
1. Many distributions (or O/S) have different ways of packaging software for clean installation and removal. Package maintainers are the experts.
1. It avoids trouble with [sudo pip](https://github.com/aws/aws-cli/issues/4175), clobbering PyPI with [download requests](https://github.com/aws/aws-cli/issues/4278), [large Docker images](https://github.com/aws/aws-cli/issues/3553) and the associated complexity of passing through user data from the host. A Docker image I built `FROM` `ubuntu:18.04` was [185MB](https://hub.docker.com/repository/docker/morancj/aws-cli-v2). The Arch package is 69MB.
1. Predicatable version installation. For example, the download URL returns `2.0.0dev3`: a few days ago, it was giving `2.0.0dev2`.
1. A clear view of dependencies: for example, the Ubuntu image mentioned previously needs `groff` and `less` persistently installed in order to use the `help` commands.
As an example, when packaging your code for Arch Linux, I've had to run operations like this:
```
package() {
./aws/install -i "${pkgdir}/opt/${pkgname}" -b "${pkgdir}/tmp"
rm -fr "${pkgdir}/tmp"
cd "${pkgdir}"
mkdir -p "${pkgdir}/usr/bin"
ln -s "/opt/${pkgname}/v2/current/bin/aws2" "${pkgdir}/usr/bin/aws2"
ln -s "/opt/${pkgname}/v2/current/bin/aws2_completer" "${pkgdir}/usr/bin/aws2_completer"
cd "${pkgdir}/opt/aws-cli-v2/v2"
rm -fr "${pkgdir}/opt/aws-cli-v2/v2/current"
ln -s "${pkgver}" "${pkgdir}/opt/aws-cli-v2/v2/current"
}
```
You can see how I have to remove your symlinks and re-create them in the fakeroot to get correct paths.
Please see similar arguments e.g. [here](https://drewdevault.com/2019/12/09/Developers-shouldnt-distribute.html) and various other places around the WWW.
Contributor guide
Assessment
This issue has not been assessed yet.