Commit Graph

189 Commits

Author SHA1 Message Date
muwa00 471f25e046 fix bash warning message in dockcross.sh 2026-02-25 22:19:46 +07:00
David M. Lary f3fc294a08 manylinux: add builder group to own python files
The manylinux images can take over a minute to start on spinning disks
(not SSDs) because pre_exec.sh is changing the ownership of all the
python install directories to be writable by the BUILDER_UID.  This is
detailed further in #853.

I changed the build steps for manylinux images to add a group called
`builder`, then change the python directories to be owned by the
`builder` group, and group writable.  I then changed pre_exec.sh to add
BUILDER_USER to the builder group prior to the gosu switch to become
BUILDER_USER.  The result is that BUILDER_USER is in the `builder`
group that can write to the python directories, allowing the user to
install python packages without permission denied errors.

There was one additional change to support this, and that was the
arguments to `gosu` in entrypoint.sh.  Previously the arguments were
`$BUILDER_UID:BUILDER_GID`, but providing the gid prevents `gosu` from
loading additional groups (such as `builder`) from /etc/group.  I
removed the GID argument to allow `gosu` to pick up additional groups
from /etc/group.

fixes #853
2026-01-21 15:58:45 -06:00
Matt McCormick 1d3b81221c Merge pull request #904 from deckstose/push-pytvwvzxrmql
fix: use more portable `type -P` to find executable
2026-01-05 14:17:18 -05:00
Matt McCormick 63e91f59aa common: install rustup into /opt/rustup
To avoid long-running chown's per https://github.com/dockcross/dockcross/issues/901
2025-10-09 08:17:27 -04:00
Jean-Christophe Fillion-Robin e52623c8dc fix(install-cmake-binary): Revert back to installing upstream CMake package
Since the Centos 5 image is not maintained anymore, there is no need to install
the custom CMake package originally intended to support GLIBC version from Centos 5.
2025-08-27 12:34:45 -04:00
Jean-Christophe Fillion-Robin 9f4e0b7413 chore(imagesfiles): Refactor script introducing fetch_source function
Update options preferring their more explicit long form:
`-f` is `--fail`
`-s` is `--silent`
`-S` is `--show-error`
`-L` is `--location`

Additionally, `-O` is removed in favor of explicitly specifying the output file using `-o`
2025-08-27 11:57:08 -04:00
Steffen Winter 4a8ba629f6 fix: use more portable type -p to find executable
`which` is not guaranteed to be installed on all machines. Since the
script is meant to be run on the user's host machine it is more portable
to use `type -p` here.

Closes: https://github.com/dockcross/dockcross/issues/880
2025-08-25 22:36:16 +02:00
Jean-Christophe Fillion-Robin 14a29475ca Merge pull request #897 from jcfr/update-install-gosu-binary-to-prefer-checking-against-secured-key-server
fix(install-gosu-binary): Prefer checking key from server using "hkps" protocol
2025-07-22 13:24:49 -04:00
Jean-Christophe Fillion-Robin f48bb9b136 fix(entrypoint.sh): Avoid error if rustup is not installed
Only move `/root/.rustup` and `/root/.cargo` directories if they exist.
This prevents errors when re-using the script in environments where
Rust is not installed (e.g. https://github.com/dockbuild/dockbuild).

Previously, `mv` would fail if either directory was missing:

```
mv: cannot stat '/root/.rustup': No such file or directory
mv: cannot stat '/root/.cargo': No such file or directory
```
2025-07-22 13:23:18 -04:00
Jean-Christophe Fillion-Robin fe6baacdd3 fix(install-gosu-binary): Prefer checking key from server using "hkps" protocol 2025-07-21 18:26:10 -04:00
Nicolas Boichat 52604c0b66 entrypoint.sh: Silence errors if /dev/pts/0 does not exist 2025-07-02 11:41:08 +08:00
Matt McCormick 3deaae3929 Merge pull request #891 from maxiaogood/maxiao_fix_dev_pts
fix /dev/pts/0 permissions
2025-06-10 22:35:40 -04:00
maxiao dcb6bde44b Change ownership of /dev/pts/0 to new user 2025-05-30 23:17:25 +08:00
maxiao 0ca299216e fix /dev/pts/0 permissions 2025-05-30 23:06:00 +08:00
Nicolas Boichat 27e0cf6c78 imagefiles/entrypoint.sh: Move rust/cargo directories
Presumably we do not need those as root.
2025-05-28 15:31:51 +02:00
Nicolas Boichat 494c154b87 imagefiles/entrypoint.sh: Remove sync call
This slows down the container startup for what appears to be no
good reason.

This workaround was added in 2016:
dd9d902538 ,
see also https://github.com/moby/moby/issues/13594#issuecomment-262441366 ,
and hopefully AUFS has been fixed by now.
2025-05-28 14:41:52 +02:00
Jonas Vautherin 663c6da5bf Untar perl with --no-same-owner 2025-03-08 16:25:12 +01:00
Bensuperpc ec5e88f98c Merge pull request #865 from bensuperpc/update-crosstool-ng-127
Update Crosstool-ng 1.26.0 to 1.27.0 on linux-arm64 (keep same GCC, glibc etc...)
Update OpenSSL from 1.1.1o to 1.1.1w
Update Ninja from 1.11.1 to 1.12.1
Update git from 2.42.0 to 2.48.1
Update Liquidpromt from 1.11 to 1.12 and add to env ARG
2025-03-02 20:18:18 +01:00
Bensuperpc 5020eb46ee Update liquidprompt 2025-02-28 19:28:28 +01:00
Bensuperpc 10102e86eb Update crosstool-ng to 1.27.0 2025-02-28 19:28:28 +01:00
Jonas Vautherin 133cdd4bf5 Install rustup in common.docker 2025-02-25 23:21:05 +01:00
Matt McCormick 54a4417c3d wasi: fix threads option specification for wasmtime
In recent wasmtime, `-S` flags need to come after `run`.

Also add `-W threads=y` following the wasmtime test suite,

- https://github.com/bytecodealliance/wasmtime/blob/fc3c868b13bccf5d7ed26de4cfd1a2dc4c689360/tests/all/cli_tests.rs#L580-L581

Also explicity enable the `cli` feature because this is used for CMake
try_run.
2025-01-06 22:38:55 -05:00
Matt McCormick d4e7c0aff2 web-wasi-threads: initial addition
This is a different toolchain following how wasi-sdk defines the
platform triple and how builds are configured -- everything should be
built with the flags defined in the toolchain file.

We build from web-wasi:latest, and that is built first.
2024-04-03 15:19:02 -04:00
Flávio Tapajós 424b61e9ec Merge 'dockcross/master' 2024-01-02 23:03:07 -03:00
zry98 4282105d11 install-gosu-binary: fix arch detection to match gosu releases arch naming 2023-10-29 23:59:28 +01:00
zry98 ae06c00377 install-gosu-binary: fix arch detection to match gosu releases arch naming 2023-10-29 23:59:28 +01:00
Bensuperpc 46b2600a3f Move to debian bookworm
Move to debian bookworm

Signed-off-by: Bensuperpc <bensuperpc@gmail.com>
2023-09-30 14:25:32 +02:00
Matt McCormick ae03014632 web-wasi: mount /work in emulator for access to working directory
Ensure there is access to the source tree for try_run's.
2023-02-12 22:38:02 -05:00
Mickaël Guérin c1ce207a34 Do not force platform in docker run
As the images are not multi-platform, there is no need to hard-code
`--platform linux/amd64` which doesn't work properly for x86 images
2023-01-31 09:40:22 +01:00
Mickaël Guérin 787e0cbc41 manylinux2014-aarch64: Install zlib in sysroot 2023-01-30 10:06:57 +01:00
Mickaël Guérin f152c4b25e Fix manylinux2014-aarch64 image building
* switch image to crosstool-ng 1.25.0
* remove support of ct-ng 1.13.0 and set 1.25.0 as the default version
2023-01-30 08:26:46 +01:00
Jonas Vautherin 4f590a193b Add meson to all images 2023-01-09 14:51:35 +01:00
Rainer Sabelka e7fb2a4293 cmake: don't andd toolchain file when installing 2022-09-25 12:04:17 +02:00
Matt McCormick d45d925ee6 Merge pull request #710 from thewtex/mac-m1
dockcross-script: Specify --platform flag
2022-07-02 12:29:51 -04:00
Matt McCormick 0f402e0c75 dockcross-script: Specify --platform flag
All images built for a linux/amd64 host.

Addresses warning when running an Apple M1:

  WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
2022-07-01 18:13:58 -04:00
Bensuperpc 6a0fe7b500 Merge branch 'master' into update_scripts_2 2022-05-25 09:03:44 +02:00
larry.espenshade 014fd62f30 bump to new release of flatcc, use version tags 2022-05-24 09:21:42 -04:00
Bensuperpc 18b6f27f49 Update scripts
Signed-off-by: Bensuperpc <bensuperpc@gmail.com>
2022-05-19 00:24:44 +02:00
Bensuperpc 1f84d64675 back to 7.76.0 curl
Signed-off-by: Bensuperpc <bensuperpc@gmail.com>
2022-05-18 23:44:47 +02:00
Bensuperpc 52c9e8313c Fix error
Signed-off-by: Bensuperpc <bensuperpc@gmail.com>
2022-05-18 22:34:46 +02:00
Bensuperpc 451acec74b Update curl version
Signed-off-by: Bensuperpc <bensuperpc@gmail.com>
2022-05-18 18:04:52 +02:00
Bensuperpc e21db577b4 Update openssl version
Signed-off-by: Bensuperpc <bensuperpc@gmail.com>
2022-05-18 17:56:48 +02:00
Bensuperpc c74798ebb7 Update cmake and ninja version
Signed-off-by: Bensuperpc <bensuperpc@gmail.com>
2022-05-18 17:45:56 +02:00
Silvio Ankermann 2333930f42 Fix permission errors with podman
Fix #649
2022-05-16 15:23:31 +02:00
Silvio Ankermann 4887a524ff Check for podman first 2022-05-16 15:08:20 +02:00
larry.espenshade 1004f909ac fix commit checkout script 2022-03-28 15:32:05 -04:00
larry.espenshade 1fa32c03ed rm v 2022-03-28 14:56:02 -04:00
larry.espenshade b7771a66d0 update help func name 2022-03-08 17:03:36 -05:00
larry.espenshade 1e8845e78e add flatcc to Dockcross base image 2022-02-28 13:54:59 -05:00
Matt McCormick dd1c80e0fb manylinux: Work around get-pip.py download of distutils
Re: https://github.com/pypa/setuptools/issues/2993
2022-01-03 12:37:52 -05:00