Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

elixir-asdf feature fails to install on Alpine #582

Open
jzebedee opened this issue Feb 20, 2024 · 0 comments
Open

elixir-asdf feature fails to install on Alpine #582

jzebedee opened this issue Feb 20, 2024 · 0 comments

Comments

@jzebedee
Copy link

The elixir-asdf installer relies on the apt-get-packages feature, which will fail on Alpine and non-apt package systems.

"ghcr.io/devcontainers-contrib/features/apt-get-packages:1.0.6" \


Repro devcontainer.json

{
	"name": "Alpine",
	"image": "mcr.microsoft.com/devcontainers/base:alpine-3.19",
	"features": {
		"ghcr.io/devcontainers-contrib/features/elixir-asdf:2": {
			"elixirVersion": "1.14.4-otp-25",
			"erlangVersion": "25.3"
		}
	}
}

Error output

 => ERROR [dev_containers_target_stage 5/5] RUN --mount=type=bind,from=de  5.7s
------                                                                          
 > [dev_containers_target_stage 5/5] RUN --mount=type=bind,from=dev_containers_feature_content_source,source=elixir-asdf_0,target=/tmp/build-features-src/elixir-asdf_0     cp -ar /tmp/build-features-src/elixir-asdf_0 /tmp/dev-container-features  && chmod -R 0755 /tmp/dev-container-features/elixir-asdf_0  && cd /tmp/dev-container-features/elixir-asdf_0  && chmod +x ./devcontainer-features-install.sh  && ./devcontainer-features-install.sh  && rm -rf /tmp/dev-container-features/elixir-asdf_0:
0.285 ===========================================================================
0.285 Feature       : Elixir (via asdf)
0.285 Description   : Elixir is a functional, concurrent, general-purpose programming language that runs on the BEAM virtual machine which is also used to implement the Erlang programming language.
0.285 Id            : ghcr.io/devcontainers-contrib/features/elixir-asdf
0.285 Version       : 2.0.19
0.285 Documentation : http://github.com/devcontainers-contrib/features/tree/main/src/elixir-asdf
0.285 Options       :
0.285     ELIXIRVERSION="1.14.4-otp-25"
0.285     ERLANGVERSION="25.3"
0.285 ===========================================================================
1.042 nanolayer
3.872 cd /tmp/tmpqpcrnza8 && chmod +x -R . && _REMOTE_USER="vscode" _REMOTE_USER_HOME="/home/vscode" PACKAGES="build-essential,autoconf,m4,libncurses5-dev,libwxgtk3.*-dev,libwxgtk-webview3.*-dev,libgl1-mesa-dev,libglu1-mesa-dev,libpng-dev,libssh-dev,unixodbc-dev,xsltproc,fop,libxml2-utils,libncurses-dev,openjdk-1*-jdk,procps" PPAS="" CLEAN_PPAS="true" PRESERVE_APT_LIST="true" FORCE_PPAS_ON_NON_UBUNTU="false" NANOLAYER_VERBOSE="" NANOLAYER_FORCE_CLI_INSTALLATION="" NANOLAYER_PROPAGATE_CLI_LOCATION="1" NANOLAYER_CLI_LOCATION="/tmp/nanolayer-3hjXg4jCPT/nanolayer" bash  -i  +H ./install.sh
3.872 Found a pre-existing nanolayer which were given in env variable: /tmp/nanolayer-3hjXg4jCPT/nanolayer
4.036 skipping usage of pre-existing nanolayer. (required version v0.4.46 does not match existing version v0.5.5)
4.776 nanolayer
5.408 Traceback (most recent call last):
5.408   File "<string>", line 1, in <module>
5.410   File "nanolayer.__main__", line 50, in main
5.410   File "typer.main", line 328, in __call__
5.410   File "typer.main", line 311, in __call__
5.410   File "click.core", line 1157, in __call__
5.410   File "typer.core", line 778, in main
5.410   File "typer.core", line 216, in _main
5.410   File "click.core", line 1688, in invoke
5.410   File "click.core", line 1688, in invoke
5.410   File "click.core", line 1434, in invoke
5.410   File "click.core", line 783, in invoke
5.410   File "typer.main", line 683, in wrapper
5.410   File "nanolayer.cli.install", line 88, in install_apt_get_packages
5.410   File "nanolayer.installers.apt_get.apt_get_installer", line 112, in install
5.410 AssertionError: apt-get should be used on debian-like linux distribution (debian, ubuntu, raspian  etc)
5.559 Traceback (most recent call last):
5.560   File "<string>", line 1, in <module>
5.560   File "nanolayer.__main__", line 50, in main
5.560   File "typer.main", line 328, in __call__
5.560   File "typer.main", line 311, in __call__
5.560   File "click.core", line 1157, in __call__
5.560   File "typer.core", line 778, in main
5.560   File "typer.core", line 216, in _main
5.560   File "click.core", line 1688, in invoke
5.560   File "click.core", line 1688, in invoke
5.560   File "click.core", line 1434, in invoke
5.560   File "click.core", line 783, in invoke
5.560   File "typer.main", line 683, in wrapper
5.560   File "nanolayer.cli.install", line 66, in install_devcontainer_feature
5.560   File "nanolayer.installers.devcontainer_feature.oci_feature_installer", line 134, in install
5.562   File "nanolayer.utils.invoker", line 59, in invoke
5.562 nanolayer.utils.invoker.Invoker.InvokerException: The command 'cd /tmp/tmpqpcrnza8 && chmod +x -R . && _REMOTE_USER="vscode" _REMOTE_USER_HOME="/home/vscode" PACKAGES="build-essential,autoconf,m4,libncurses5-dev,libwxgtk3.*-dev,libwxgtk-webview3.*-dev,libgl1-mesa-dev,libglu1-mesa-dev,libpng-dev,libssh-dev,unixodbc-dev,xsltproc,fop,libxml2-utils,libncurses-dev,openjdk-1*-jdk,procps" PPAS="" CLEAN_PPAS="true" PRESERVE_APT_LIST="true" FORCE_PPAS_ON_NON_UBUNTU="false" NANOLAYER_VERBOSE="" NANOLAYER_FORCE_CLI_INSTALLATION="" NANOLAYER_PROPAGATE_CLI_LOCATION="1" NANOLAYER_CLI_LOCATION="/tmp/nanolayer-3hjXg4jCPT/nanolayer" bash  -i  +H ./install.sh' failed. error: Return Code: 1. see logs for details.
5.671 ERROR: Feature "Elixir (via asdf)" (ghcr.io/devcontainers-contrib/features/elixir-asdf) failed to install! Look at the documentation at http://github.com/devcontainers-contrib/features/tree/main/src/elixir-asdf for help troubleshooting this error.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant