BOINC/boinc-client-docker

Docker build of baseimage-ubuntu fails

garethrandall opened this issue · 12 comments

Hi,

On a Debian 9.9 x86_64 system, I did:

# git clone https://github.com/BOINC/boinc-client-docker.git
# cd boinc-client-docker/
# docker build -t boinc/client -f Dockerfile.baseimage-ubuntu .

....

Setting up libxext6:amd64 (2:1.3.3-1) ...
Setting up libxss1:amd64 (1:1.2.2-1) ...
Setting up libldap-2.4-2:amd64 (2.4.45+dfsg-1ubuntu1.4) ...
Setting up libcurl4:amd64 (7.58.0-2ubuntu3.7) ...
Setting up boinc-client (7.16.1+dfsg+201908161115~ubuntu18.04.1) ...
debconf: unable to initialize frontend: Dialog
debconf: (TERM is not set, so the dialog frontend is not usable.)
debconf: falling back to frontend: Readline
debconf: unable to initialize frontend: Readline
debconf: (Can't locate Term/ReadLine.pm in @INC (you may need to install the Term::ReadLine module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.26.1 /usr/local/share/perl/5.26.1 /usr/lib/x86_64-linux-gnu/perl5/5.26 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.26 /usr/share/perl/5.26 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at /usr/share/perl5/Debconf/FrontEnd/Readline.pm line 7.)
debconf: falling back to frontend: Teletype
usermod: group 'render' does not exist
Could not assign boinc user to group 'render'.
invoke-rc.d: syntax error: unknown option "--skip-systemd-native"
dpkg: error processing package boinc-client (--configure):
 installed boinc-client package post-installation script subprocess returned error exit status 1
Processing triggers for libc-bin (2.27-3ubuntu1) ...
Errors were encountered while processing:
 boinc-client
E: Sub-process /usr/bin/dpkg returned an error code (1)
The command '/bin/sh -c apt-get update && apt-get install -y --no-install-recommends     software-properties-common &&     add-apt-repository -y ppa:costamagnagianfranco/boinc &&     apt-get update && apt-get install -y --no-install-recommends     boinc-client &&     apt-get remove -y software-properties-common &&     apt-get autoremove -y &&     rm -rf /var/lib/apt/lists/*' returned a non-zero code: 100

This is the most recent repo commit:

# git log | head -4
commit 26f3f9f8ca9d4aac16da0be2c84be41266615e31
Author: Adam Radocz <adam.radocz@gmail.com>
Date:   Wed Aug 14 19:31:25 2019 +0200

There are several lines of enquiry here, but perhaps someone could look at this and tell me whether I have missed something out or whether this is a bug with the latest version. Thank you.

There is an existing issue opened in BOINC repo, currently unresolved, please read discussion there: BOINC/boinc#3250

As a fix to allow building right now, change Dockerfile.baseimage-ubuntu to use ubuntu:19.10 instead of ubuntu:18.04, as in the following diff:

# git diff
diff --git a/Dockerfile.baseimage-ubuntu b/Dockerfile.baseimage-ubuntu
index 0f689ff..3173fc2 100644
--- a/Dockerfile.baseimage-ubuntu
+++ b/Dockerfile.baseimage-ubuntu
@@ -1,4 +1,4 @@
-FROM ubuntu:18.04
+FROM ubuntu:19.10
 
 LABEL maintainer="BOINC" \
       description="Ubuntu base image for lightweight BOINC client." \

This was inspired by the following comment: BOINC/boinc#3250 (comment)

However, since 19.10 is not a LTS (Long Term Support) release, this is probably not a long term solution.

smoe commented

Please also install the backport of init-system-helpers from @LocutusOfBorg's PPA (see a few comments later of that same thread BOINC/boinc#3250 (comment)).

It's working now.

Hi @adamradocz . What config did you use to make this work?
I've just tried to verify by using this revision of the repo:

commit 26f3f9f8ca9d4aac16da0be2c84be41266615e31
Author: Adam Radocz <adam.radocz@gmail.com>
Date:   Wed Aug 14 19:31:25 2019 +0200

but:

# docker build -t boinc/client -f Dockerfile.baseimage-ubuntu .

fails with:

Reading package lists...
Hit:1 http://ppa.launchpad.net/costamagnagianfranco/boinc/ubuntu bionic InRelease
Hit:2 http://archive.ubuntu.com/ubuntu bionic InRelease
Hit:3 http://security.ubuntu.com/ubuntu bionic-security InRelease
Hit:4 http://archive.ubuntu.com/ubuntu bionic-updates InRelease
Hit:5 http://archive.ubuntu.com/ubuntu bionic-backports InRelease
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 boinc-client : Depends: init-system-helpers (>= 1.57) but 1.57~ubuntu18.04.1~ppa1 is to be installed
E: Unable to correct problems, you have held broken packages.
The command '/bin/sh -c apt-get update && apt-get install -y --no-install-recommends     software-properties-common &&     add-apt-repository -y ppa:costamagnagianfranco/boinc &&     apt-get update && apt-get install -y --no-install-recommends     boinc-client &&     apt-get remove -y software-properties-common &&     apt-get autoremove -y &&     rm -rf /var/lib/apt/lists/*' returned a non-zero code: 100

fixing shortly

@LocutusOfBorg can you notify us when it's working again.

theoretically calling the version 1.57ubuntu instead of 1.57~ubuntu fixes the issue because it is seen as an higher version

sorry you all for the troubles I caused!

(should be already ok since an hour or two)

It builds successfully now. Well done!