Bug#603114: live-build: be more careful in passing arguments to debootstrap
On 11/15/2010 09:50 PM, Michael Hudson wrote:
>> that's for the first two changes which are fine as i said,
>
> No, it's not.
hm? i don't understand..
>> but i've asked about the second two changes:
>>
>> - ${LB_ROOT_COMMAND} debootstrap ${DEBOOTSTRAP_OPTIONS}
>> --download-only "${LB_DISTRIBUTION}" chroot "${LB_MIRROR_BOOTSTRAP}"
>> "${LB_DEBOOTSTRAP_SCRIPT}"
>> + ${LB_ROOT_COMMAND} debootstrap ${DEBOOTSTRAP_OPTIONS}
>> --download-only "${LB_DISTRIBUTION}" chroot "${LB_MIRROR_BOOTSTRAP}"
>> ${LH_DEBOOTSTRAP_SCRIPT:+"$LH_DEBOOTSTRAP_SCRIPT"}
>
>> i don't think they make sense. could explain why you think this should
>> be changed?
>
> This is the difference between passing '' and passing nothing as the
> last argument:
>
> $ foo=; set -- "${foo}"; echo $# x${1}x
> 1 xx
> $ foo=; set -- ${foo:+"$foo"}; echo $# x${1}x
> 0 xx
>
> It's passing an empty final argument to qemu-debootstrap rather than no
> final argument that confuses it.
but LB_DEBOOTSTRAP_SCRIPT is never empty.
>> not for 2.x, since that's in maintenance mode. for 3.x, we're going to
>> drop a lot of code and support multistrap only. and multistrap already
>> allows to cross-bootstrap, so there's not much point in adding
>> qemu-debootstrap support. what do you think?
>
> I'm not sure, to be honest. It'll likely be a while before we catch up
> to 3.0 anyway -- we're still invoking 'lh build', not 'lb build'...
once squeeze is released, 2.x is dead and you'll have to maintain it on
your own for anything non-serious that isn't affecting squeeze. i hope
you can update to 3.x by then, and suggest you help working on 3.x
rather than wasting time with 2.x.
--
Address: Daniel Baumann, Burgunderstrasse 3, CH-4562 Biberist
Email: daniel.baumann@panthera-systems.net
Internet: http://people.panthera-systems.net/~daniel-baumann/
Reply to: