multi-build / docker-images

BSD 2-Clause "Simplified" License
1 stars 8 forks source link

Fixed tkinter in Alpine #32

Closed radarhere closed 2 years ago

radarhere commented 2 years ago

I was unable to use tkinter with Alpine.

Taking a look at https://github.com/multi-build/docker-images/blob/6f274490af5202038719235b2bc8e9df2a16f440/docker/Dockerfile-alpine3.15-x86_64#L1 I found that the docker-library version worked. Comparing the differences, and looking at https://github.com/docker-library/python/issues/484, I've come up with this PR.

This is sort of take two at #30, since it also fixes the problem importing ctypes.

mattip commented 2 years ago

Thanks. /usr/local does seem like a better place to look for the libraries. Does pkg-config work to solve the ambiguity?

When I set this up, there was no option to test wheels conveniently in a different docker than the manylinux* ones they were built in. Is that hypothesis still true? Maybe we should recommend that multibuild users test their wheels on the github actions runners with the setup-python action instead.

radarhere commented 2 years ago

As to whether a library should come from /usr or /usr/local? I don't know. I've found the commit where /usr/local was removed the first time around - https://github.com/multi-build/docker-images/pull/20/commits/04d759f9d3cf61aa40fd24b895d8f85210072630

build_multilinux and install_run are different, with build_multilinux defaulting to pypa, and install_run defaulting to here. You added the ability to use a custom DOCKER_TEST_IMAGE - https://github.com/multi-build/multibuild/pull/314.

I think the issue is that the lack of native support in GitHub Actions for other architectures.