On 2017-04-18 14:52 +0100, Steve McIntyre wrote: > On Tue, Apr 18, 2017 at 01:44:52PM +0200, Olliver Schinagl wrote: >>Package: debootstrap >>Version: 1.0.89 >>Severity: normal >> >>Dear Maintainer, >> >>Trying to run debootstrap with just acl (the first package in the list) fails >>at unpacking due to a missing xzcat >> >>sudo debootstrap --merged-usr --variant=minbase --components=main,non-free >>--include=acl jessie /tmp/debtest http://deb.debian.org/debian >> >>I: Chosen extractor for .deb packages: ar >>I: Extracting acl... >>E: Extracting .//var/cache/apt/archives/acl_2.2.52-2_amd64.deb requires the >>xzcat command, which is not available >>$ which xzcat >>/usr/bin/xzcat >> >> >>changing /bin/sh -> dash fixes it, but I would have figued that if debootstrap >>has its shebang set to /bin/sh, it would work with any posix shell, including >>posh. >> >>(I read the warning: >>WARNING: Since many of Debian's /bin/sh scripts are not actually policy- >>compliant, using posh as your /bin/sh may reveal breakage.) > > Just tested this - it appears that posh doesn't include "type", which > is what debootstrap is using to check what's available. I don't > personally know if "type" is a hard requirement in a posix shell here.
It's not. The portable equivalent would be 'command -v', however posh does not implement that either, since it only became mandatory in POSIX.1-2008. I'm afraid there is no easy better solution: while 'which' would always work on Debian systems, it's not guaranteed to be available elsewhere. Cheers, Sven