gardenlinux / builder

Builder used to construct Garden Linux. Re-usable for other OS-projects.
Apache License 2.0
9 stars 2 forks source link

use mmdebstrap instead of debootstrap #79

Closed nkraetzschmar closed 6 months ago

nkraetzschmar commented 6 months ago

currently building debian testing based images with debootstrap is broken due to the t64 transition and debootstrap not handling Provides: fields in the package index.

=> Let's switch to mmdebstrap which uses apt under the hood, thus handling Provides: fields correctly

fwilhe commented 6 months ago

Trying to build the latest main of Garden Linux fails on my machine (on mac, with podman machine, with a freshly created podman machine vm)

localhost/mybuilder:latest is a locally built image from this pr (with the aws pks stuff removed for faster build times, should not matter in this case)

$ ./build metal
STEP 1/1: FROM localhost/mybuilder:latest
COMMIT localhost/builder
--> fb4ed465ec00
Successfully tagged localhost/builder:latest
Successfully tagged localhost/mybuilder:latest
fb4ed465ec00cf2cbd73bdd5136b864be3b80e6a46cb08bea561d12367e3fb1b
configuring native_bin
[.build/native_bin-today-local.tar 2024-05-02 14:08:18] Reading package lists...
[.build/native_bin-today-local.tar 2024-05-02 14:08:18] Building dependency tree...
[.build/native_bin-today-local.tar 2024-05-02 14:08:18] Reading state information...
[.build/native_bin-today-local.tar 2024-05-02 14:08:18] Package openssh-client is not available, but is referred to by another package.
[.build/native_bin-today-local.tar 2024-05-02 14:08:18] This may mean that the package is missing, has been obsoleted, or
[.build/native_bin-today-local.tar 2024-05-02 14:08:18] is only available from another source
[.build/native_bin-today-local.tar 2024-05-02 14:08:18]
[.build/native_bin-today-local.tar 2024-05-02 14:08:18] Package xz-utils is not available, but is referred to by another package.
[.build/native_bin-today-local.tar 2024-05-02 14:08:18] This may mean that the package is missing, has been obsoleted, or
[.build/native_bin-today-local.tar 2024-05-02 14:08:18] is only available from another source
[.build/native_bin-today-local.tar 2024-05-02 14:08:18]
[.build/native_bin-today-local.tar 2024-05-02 14:08:18] Package policycoreutils is not available, but is referred to by another package.
[.build/native_bin-today-local.tar 2024-05-02 14:08:18] This may mean that the package is missing, has been obsoleted, or
[.build/native_bin-today-local.tar 2024-05-02 14:08:18] is only available from another source
[.build/native_bin-today-local.tar 2024-05-02 14:08:18]
[.build/native_bin-today-local.tar 2024-05-02 14:08:18] E: Unable to locate package patchelf
[.build/native_bin-today-local.tar 2024-05-02 14:08:18] E: Package 'openssh-client' has no installation candidate
[.build/native_bin-today-local.tar 2024-05-02 14:08:18] E: Package 'policycoreutils' has no installation candidate
[.build/native_bin-today-local.tar 2024-05-02 14:08:18] E: Package 'xz-utils' has no installation candidate
completed in 0 seconds

make: *** [Makefile:50: .build/native_bin-today-local.tar] Error 100
make: *** Deleting file '.build/native_bin-today-local.tar'

I could get it to build in a debian vm, but not using podman machine. No clue what the root cause is.