Commit Graph

10 Commits

Author SHA1 Message Date
Tianon Gravi 6930d60e10 Update to Debian Trixie
I had two MIPS-related hiccups with this:
- the musl-upstream `musl-gcc` wrapper script has a bug that drops compiler arguments (patch included here; hopefully we can remove in the future?)
- QEMU couldn't run the resulting MUSL binaries until I applied an update to my binfmt magic/mask (https://bugs.debian.org/1041597, bb0811e353) - it also runs just fine on real musl hardware
2025-08-08 12:05:17 -07:00
Tianon Gravi a71acd2dfb Update to Bookworm + musl 1.2.5
Also, fix `CFLAGS` bug and add `norelro` to avoid huge size increases on some architectures. 🚀
2025-01-21 15:32:32 -08:00
Tianon Gravi 3fb6ebca41 Update to musl 1.2.4 2023-05-02 09:49:27 -07:00
Tianon Gravi 3332fbee42 Update to Debian Bullseye, musl 1.2.2
```
 amd64/hello-world/hello    | Bin 13336 -> 13256 bytes
 arm32v5/hello-world/hello  | Bin 8948 -> 8948 bytes
 arm32v7/hello-world/hello  | Bin 4848 -> 4848 bytes
 arm64v8/hello-world/hello  | Bin 9136 -> 9136 bytes
 i386/hello-world/hello     | Bin 12984 -> 12924 bytes
 mips64le/hello-world/hello | Bin 7680 -> 7768 bytes
 ppc64le/hello-world/hello  | Bin 66400 -> 66400 bytes
 riscv64/hello-world/hello  | Bin 4976 -> 4976 bytes
 s390x/hello-world/hello    | Bin 9192 -> 9056 bytes
```
2021-08-24 14:52:19 -07:00
Tianon Gravi 7ecae69780 Convert from glibc-based binaries to musl-based binaries
The intent of the previous implementation was to avoid libc, but it turns out that just invoking a syscall without libc is complicated (see https://github.com/docker-library/hello-world/pull/62#issuecomment-568573535 for details).

On the other hand, my personal machine can cross-compile all of musl in ~30s per architecture, which is pretty reasonable, and the resulting binary sizes are only around ~10k each, and I was able to do so successfully for every architecture we currently support.
2019-12-30 16:06:25 -08:00
Tianon Gravi c6800ec430 Remove (now unused) hola-mundo and hello-seattle bits 2019-12-02 19:06:00 -08:00
Tianon Gravi b715c35271 Update to the "get started" guide instead and update all binaries/text files
(Invoked "./update.sh")
2018-09-05 09:55:12 -07:00
Tianon Gravi b0a3459699 Update generated content (especially compiled binaries) 2018-04-09 10:19:49 -07:00
Tianon Gravi c83a065a24 Add "arch" to the produced output
```console
$ ./amd64/hello-world/hello

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://cloud.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/engine/userguide/

```
2017-11-20 07:03:38 -08:00
Tianon Gravi 7d0ee592e4 Add initial multiarchitecture support via Debian cross-compiled binaries 2017-06-13 16:17:33 -07:00