[opensuse-buildservice] Ubuntu 20.04 is broken, needs Preinstall: bash
Hey all, So I've started building stuff for Ubuntu 20.04, and I've discovered that a number of packages depend on a tool called "ucf" that is written in shell script that requires Bash, but does not have the dependency declared, so build environments fail with errors like the following: [ 136s] [193/242] installing php7.4-common-7.4.3-4ubuntu1 [ 136s] /usr/bin/ucf: line 346: getopt: command not found [ 136s] dpkg: error processing package php7.4-common (--install): [ 136s] installed php7.4-common package post-installation script subprocess returned error exit status 127 [ 136s] Errors were encountered while processing: [ 136s] php7.4-common [ 136s] exit ... To fix this, we need "Preinstall: bash" to be added so that it's included early and everything works. Thanks in advance and best regards! -- 真実はいつも一つ!/ Always, there's only one truth! -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
On Wed, Jun 10, 2020 at 7:31 PM Neal Gompa
Hey all,
So I've started building stuff for Ubuntu 20.04, and I've discovered that a number of packages depend on a tool called "ucf" that is written in shell script that requires Bash, but does not have the dependency declared, so build environments fail with errors like the following:
[ 136s] [193/242] installing php7.4-common-7.4.3-4ubuntu1 [ 136s] /usr/bin/ucf: line 346: getopt: command not found [ 136s] dpkg: error processing package php7.4-common (--install): [ 136s] installed php7.4-common package post-installation script subprocess returned error exit status 127 [ 136s] Errors were encountered while processing: [ 136s] php7.4-common [ 136s] exit ...
To fix this, we need "Preinstall: bash" to be added so that it's included early and everything works.
Bah, I misappropriated, it actually needs util-linux, not bash. I forgot that getopt is actually a program separately offered in util-linux. -- 真実はいつも一つ!/ Always, there's only one truth! -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
On Donnerstag, 11. Juni 2020, 01:40:29 CEST wrote Neal Gompa:
On Wed, Jun 10, 2020 at 7:31 PM Neal Gompa
wrote: Hey all,
So I've started building stuff for Ubuntu 20.04, and I've discovered that a number of packages depend on a tool called "ucf" that is written in shell script that requires Bash, but does not have the dependency declared, so build environments fail with errors like the following:
[ 136s] [193/242] installing php7.4-common-7.4.3-4ubuntu1 [ 136s] /usr/bin/ucf: line 346: getopt: command not found [ 136s] dpkg: error processing package php7.4-common (--install): [ 136s] installed php7.4-common package post-installation script subprocess returned error exit status 127 [ 136s] Errors were encountered while processing: [ 136s] php7.4-common [ 136s] exit ...
To fix this, we need "Preinstall: bash" to be added so that it's included early and everything works.
Bah, I misappropriated, it actually needs util-linux, not bash. I forgot that getopt is actually a program separately offered in util-linux.
hm, this should be solved via order and not preinstall... which package provides /usr/bin/ucf ? Doesn't it prerequire the right packages? Or is there a dependendency loop? A concrete example would be nice :) -- Adrian Schroeter email: adrian@suse.de SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nürnberg) Maxfeldstraße 5 90409 Nürnberg Germany -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
On Tue, Jun 23, 2020 at 1:26 AM Adrian Schröter
On Donnerstag, 11. Juni 2020, 01:40:29 CEST wrote Neal Gompa:
On Wed, Jun 10, 2020 at 7:31 PM Neal Gompa
wrote: Hey all,
So I've started building stuff for Ubuntu 20.04, and I've discovered that a number of packages depend on a tool called "ucf" that is written in shell script that requires Bash, but does not have the dependency declared, so build environments fail with errors like the following:
[ 136s] [193/242] installing php7.4-common-7.4.3-4ubuntu1 [ 136s] /usr/bin/ucf: line 346: getopt: command not found [ 136s] dpkg: error processing package php7.4-common (--install): [ 136s] installed php7.4-common package post-installation script subprocess returned error exit status 127 [ 136s] Errors were encountered while processing: [ 136s] php7.4-common [ 136s] exit ...
To fix this, we need "Preinstall: bash" to be added so that it's included early and everything works.
Bah, I misappropriated, it actually needs util-linux, not bash. I forgot that getopt is actually a program separately offered in util-linux.
hm, this should be solved via order and not preinstall... which package provides /usr/bin/ucf ?
Doesn't it prerequire the right packages?
Or is there a dependendency loop?
A concrete example would be nice :)
Debian has a class of deliberately undefined dependencies: any package marked as "essential" is not required to be populated as a dependency by other packages. So while ucf isn't essential, util-linux and bash are, and so those both are missing from ucf's dependencies (even though ucf is written in Bash shell script and requires getopt from util-linux to function). This makes it so OBS cannot ever get this right, since they're just *missing* from the dependency graph. -- 真実はいつも一つ!/ Always, there's only one truth! -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org
participants (2)
-
Adrian Schröter
-
Neal Gompa