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

cannot build builders #252

Open
xdbgjhjreedwef opened this issue Feb 16, 2024 · 2 comments
Open

cannot build builders #252

xdbgjhjreedwef opened this issue Feb 16, 2024 · 2 comments

Comments

@xdbgjhjreedwef
Copy link

While running kubler build -C larry -v i get the following error (After kubler clean, kubler update):
kubler build -C larry -v

»»»»»[init]» generate build graph
»»» required engines:    docker
»»» required stage3:     stage3-amd64-hardened-nomultilib-openrc
»»» required builders:   kubler/bob
»»» build sequence:      larry/figlet larry/openldap
»[✔]»[init]» done.
»»»»»[portage]» download portage snapshot
gpg: Signature made Fri Feb 16 07:56:40 2024 +07
gpg:                using RSA key E1D6ABB63BFCFB4BA02FDF1CEC590EEAC9189250
gpg: Good signature from "Gentoo ebuild repository signing key (Automated Signing Key) <[email protected]>" [unknown]
gpg:                 aka "Gentoo Portage Snapshot Signing Key (Automated Signing Key)" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: DCD0 5B71 EAB9 4199 527F  44AC DB6B 8C1F 96D8 BF6D
     Subkey fingerprint: E1D6 ABB6 3BFC FB4B A02F  DF1C EC59 0EEA C918 9250
»»»»»[portage]» bootstrap kubler-gentoo/portage image
DEPRECATED: The legacy builder is deprecated and will be removed in a future release.
            Install the buildx component to build images with BuildKit:
            https://docs.docker.com/go/buildx/

Sending build context to Docker daemon  45.69MB
Step 1/9 : FROM busybox:latest AS builder
 ---> 3f57d9401f8d
Step 2/9 : COPY portage-20240216.tar.xz /
 ---> Using cache
 ---> addad5b62cb2
Step 3/9 : COPY patches/ /patches
 ---> Using cache
 ---> 15c2eebd8020
Step 4/9 : RUN set -x &&     mkdir -p /var/db/repos/ &&     xzcat /portage-20240216.tar.xz | tar -xf - -C /var/db/repos &&     mv /var/db/repos/portage /var/db/repos/gentoo &&     mkdir -p /var/db/repos/gentoo/metadata &&     rm /portage-20240216.tar.xz &&     cd /var/db/repos/gentoo &&     patch -p1 -i /patches/0002* &&     patch -p1 -i /patches/0003* &&     patch -p1 -i /patches/0004*
 ---> Running in 80f5e7c0706f
+ mkdir -p /var/db/repos/
+ xzcat /portage-20240216.tar.xz
+ tar -xf - -C /var/db/repos

+ mv /var/db/repos/portage /var/db/repos/gentoo
+ mkdir -p /var/db/repos/gentoo/metadata
+ rm /portage-20240216.tar.xz
+ cd /var/db/repos/gentoo
+ patch -p1 -i /patches/0002-Revert-user-info.eclass-Fixing-user-group-creation-w.patch
patching file eclass/user-info.eclass
Hunk 2 FAILED 44/43.
                # lookup by uid/gid
                local opts
                if [[ ${key} == [[:digit:]]* ]] ; then
-                       [[ ${db} == "user" ]] && opts=( -u ) || opts=( -g )
+                       [[ ${db} == "user" ]] && opts="-u" || opts="-g"
                fi

-               # Handle different ROOT
-               [[ -n ${ROOT} ]] && opts+=( -R "${ROOT}" )
-
                pw show ${db} ${opts} "${key}" -q
                ;;
        *-openbsd*)
-               grep "${key}:\*:" "${EROOT}/etc/${db}"
+               grep "${key}:\*:" /etc/${db}
                ;;
        *)
-               # getent does not support -R option, if we are working on a different
-               # ROOT than /, fallback to grep technique.
-               if [[ -z ${ROOT} ]]; then
-                       # ignore nscd output if we're not running as root
-                       type -p nscd >/dev/null && nscd -i "${db}" 2>/dev/null
-                       getent "${db}" "${key}"
-               else
-                       if [[ ${key} =~ ^[[:digit:]]+$ ]]; then
-                               grep -E "^([^:]*:){2}${key}" "${ROOT}/etc/${db}"
-                       else
-                               grep "^${key}:" "${ROOT}/etc/${db}"
-                       fi
-               fi
+               # ignore nscd output if we're not running as root
+               type -p nscd >/dev/null && nscd -i "${db}" 2>/dev/null
+               getent "${db}" "${key}"
                ;;
        esac
 }
The command '/bin/sh -c set -x &&     mkdir -p /var/db/repos/ &&     xzcat /portage-20240216.tar.xz | tar -xf - -C /var/db/repos &&     mv /var/db/repos/portage /var/db/repos/gentoo &&     mkdir -p /var/db/repos/gentoo/metadata &&     rm /portage-20240216.tar.xz &&     cd /var/db/repos/gentoo &&     patch -p1 -i /patches/0002* &&     patch -p1 -i /patches/0003* &&     patch -p1 -i /patches/0004*' returned a non-zero code: 1
»[✘]»[portage]» fatal: Failed to build kubler-gentoo/portage:20240214
»[✘]»[portage]» fatal: /home/user/.kubler/tmp is not a directory

Might be related to #216

@ctr49
Copy link

ctr49 commented Feb 16, 2024

You may need to use the master version of kubler (or -9999 when running in Gentoo) as the required versions of the patches are not in the latest release.

@xdbgjhjreedwef
Copy link
Author

Thanks, master version works.

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

2 participants