You are not logged in.
Pages: 1
We have been using arch-bootstrap to assist in creating an ISO that we use for devices. It's been working fine for the last 6 months or so. I just noticed a couple of days ago that it's failing now on 32-bit. Here's the error we're seeing:
--- install packages: acl archlinux-keyring attr bzip2 curl expat glibc gpgme libarchive libassuan libgpg-error libnghttp2 libssh2 lzo openssl pacman pacman-mirrorlist xz zlib krb5 e2fsprogs keyutils libidn2 libunistring gcc-libs lz4 libpsl icu libunistring zstd filesystem coreutils bash grep gawk file tar systemd sed
:: Synchronizing package databases...
error: failed retrieving file 'core.db' from mirror.archlinux32.org : error setting certificate verify locations:
CAfile: /etc/ssl/certs/ca-certificates.crt
CApath: none
error: failed to update core (download library error)
error: failed retrieving file 'extra.db' from mirror.archlinux32.org : error setting certificate verify locations:
CAfile: /etc/ssl/certs/ca-certificates.crt
CApath: none
error: failed to update extra (download library error)
error: failed retrieving file 'community.db' from mirror.archlinux32.org : error setting certificate verify locations:
CAfile: /etc/ssl/certs/ca-certificates.crt
CApath: none
error: failed to update community (download library error)
error: failed to synchronize all databases
When searching for that error most say to reinstall ca-certificates* but it's not at a point yet where I can do that.
I realize this is a little off-topic but x86_64 boostraps work fine, and it was working up until recently.
Thanks!
Last edited by rchamberlin (2018-10-09 17:24:28)
Offline
I guess that's fairly early on in the bootstrap process; those are the first things it's trying to download from t'internet. I've no experience of this arch-boottrap project beyond the logfile you've posted there, but I wonder if it's looking in the right places for the files it's trying to get. It's correct that there's no core.db under https://mirror.archlinux32.org/ natively, you need to go into the $arch/$repo (i686/core in this case) subfolder first, but maybe that's just the format of that error message that strips of all but the hostname.
I note in the defintion of the bash function 'get_core_repo_url' in the main shell script that if $arch is not 'aarch64' or 'arm' it sticks an extra 'os' in between the repo name and the arch folder. The archlinux32 mirrors site uses the same folder format as aarch64 and arm in that respect, so that might need patching.
Architecture: pentium4, Testing repos: Yes, Hardware: EeePC 901+2GB RAM+OS half on the SD card.
Offline
Thanks for your reply. Sorry, I forgot to mention that we've modified the script a little so it works with the i686 arch. We've added/changed the below, and it was working up until recently (I noticed it this week).
DEFAULT_i686_REPO_URL="http://mirror.archlinux32.org"
get_default_repo() {
local ARCH=$1
if [[ "$ARCH" == arm* || "$ARCH" == aarch64 ]]; then
echo $DEFAULT_ARM_REPO_URL
elif [[ "$ARCH" == i686 ]]; then
echo $DEFAULT_i686_REPO_URL
else
echo $DEFAULT_REPO_URL
fi
}
get_core_repo_url() {
local REPO_URL=$1 ARCH=$2
if [[ "$ARCH" == arm* || "$ARCH" == aarch64 || "$ARCH" == i686 ]]; then
echo "${REPO_URL%/}/$ARCH/core"
else
echo "${REPO_URL%/}/core/os/$ARCH"
fi
}
get_template_repo_url() {
local REPO_URL=$1 ARCH=$2
if [[ "$ARCH" == arm* || "$ARCH" == aarch64 || "$ARCH" == i686 ]]; then
echo "${REPO_URL%/}/$ARCH/\$repo"
else
echo "${REPO_URL%/}/\$repo/os/$ARCH"
fi
}
It successfully downloads the files to the temp directory. I get the error in the original post when it gets to the step of installing the packages.
Offline
Okay, that's worth knowing. Unfortunately, I've been trying to identify where those CAfile and CApath errors come from and they don't seem to be in the github source, and neither in any of my /usr/bin/pac* files using strings to check them, so I'm at a loss at the moment.
Architecture: pentium4, Testing repos: Yes, Hardware: EeePC 901+2GB RAM+OS half on the SD card.
Offline
It looks like the error above is actually coming from curl:
https://github.com/curl/curl/blob/e13f0 … ssl.c#L287
That error exists in quite a few places in the curl source.
I'm not sure if that helps any or not though.
Last edited by rchamberlin (2018-10-09 18:16:26)
Offline
Ah, okay. I note the certificate for https://mirror.archlinux32.org/ was only valid from the 28th of last month, so presumably issued around that date. Maybe you need to update your OS certificates by doing an upgrade of that. You should be able to 'curl -o /dev/null https://mirror.archlinux32.org' before you can expect this tool to work.
Architecture: pentium4, Testing repos: Yes, Hardware: EeePC 901+2GB RAM+OS half on the SD card.
Offline
Did you resolve this? I am running into the exact same thing and literally made the same changes to the arch-bootstrap script ( https://github.com/tokland/arch-bootstrap/issues/37 and https://github.com/CypherpunkArmory/arc … abec514245 ). If you made any progress, please share.
Offline
Copying the tls-ca-bundle.pem from an x86_64 image to this one before trying to use pacman gets things a lot further, but it ultimately fails later when trying to actually use the rootfs (cannot install any new packages). Seems like something basic is missing from the starting filesystem.
Offline
Pages: 1