[elbe-devel] [PATCH v2 02/13] use qemu from backports instead of self packaged

Torben Hohn torben.hohn at linutronix.de
Tue Dec 5 16:13:14 CET 2017


On Mon, Dec 04, 2017 at 11:20:13AM +0100, Manuel Traut wrote:
> the self packaged qemu was introduced to avoid issues if e.g. mono was
> installed on armhf.
> 
> monos postinst step runs the mono interpreter. To terminate the
> interpreter a TERM signal is send by the main thread to all childs. But
> due to a bug in qemu-user the signal was not delivered to all childs and
> the postinst step stalled forever.
> 
> The self packaged qemu-user package included a workaround for this issue
> in qemu.
> 
> The issue should be resolved in upstream now:
> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=748043
> 
> And a newer qemu is available via backports. So there is no longer a
> reason to use the self-packaged qemu-user.
> 
> This should also resolve elbe issue #128 "pbuilder aarch64: multithreading
> problems" reported on github.
> 
> Signed-off-by: Manuel Traut <manut at linutronix.de>
> ---
> 
> changes since v1:
> 
>   * specify qemu-user-static in pkg-list instead of template to avoid bricking
>      installations from bin-cdrom.iso
> 
>   * not reverting 'use debootstrap from backports' commit
> 
> 
>  elbepack/init/default-init.xml  | 1 +
>  elbepack/init/preseed.cfg.mako  | 2 +-
>  examples/elbe-init-with-ssh.xml | 1 +
>  3 files changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/elbepack/init/default-init.xml b/elbepack/init/default-init.xml
> index e1f61ed7..2df7a3f7 100644
> --- a/elbepack/init/default-init.xml
> +++ b/elbepack/init/default-init.xml
> @@ -42,6 +42,7 @@
>  		<pkg-list>
>  			<pkg>openssh-server</pkg>
>  			<pkg>debootstrap/jessie-backports</pkg>
> +			<pkg>qemu-user-static/jessie-backports</pkg>

Please do not use this syntax here.
We have a dbsfed syntax for this:
<pkg origin="jessie-backports">qemu-user-static</pkg>

this needs a bit different logic in 

elbepack/init/preseed.cfg.mako, but it would change from this:
----------------------------------------------------------------------------------------------------------
% for n in pkgs:
% if n.tag == "pkg":
%   if prj.has("mirror/primary_host") or not prj.node("mirror/cdrom") or n.et.text.find('/') == -1:
${n.et.text} \
%   else:
${n.et.text[:n.et.text.find('/')]} \
%   endif
% endif
% endfor
----------------------------------------------------------------------------------------------------------

to something like this:

----------------------------------------------------------------------------------------------------------
% for n in pkgs:
% if n.tag == "pkg":
%   if prj.has("mirror/primary_host") and n.et.attrib.has_key ("origin"):
${n.et.text}/${n.et.attrib["origin"]} \
%   elif  n.et.attrib.has_key ("version"): 
${n.et.text}=${n.et.attrib["version"] \
%   else
${n.et.text} \
%   endif
% endif
% endfor
----------------------------------------------------------------------------------------------------------

depending a bot on whether we want/need version locking. 

But this is probably necessary for aptly multiversion mirrors.



>  		</pkg-list>
>  		<preseed>
>  			<conf owner="pbuilder" key="pbuilder/mirrorsite" type="string" value="http://ftp.de.debian.org/debian"/>
> diff --git a/elbepack/init/preseed.cfg.mako b/elbepack/init/preseed.cfg.mako
> index 086ad849..9f616612 100644
> --- a/elbepack/init/preseed.cfg.mako
> +++ b/elbepack/init/preseed.cfg.mako
> @@ -105,7 +105,7 @@ apt-mirror-setup apt-setup/use_mirror boolean false
>  d-i finish-install/reboot_in_progress note
>  d-i pkgsel/include string rng-tools btrfs-tools openssh-client \
>  debathena-transform-lighttpd \
> -elbe-soap elbe-buildenv qemu-elbe-user-static \
> +elbe-soap elbe-buildenv \
>  % for n in pkgs:
>  % if n.tag == "pkg":
>  %   if prj.has("mirror/primary_host") or not prj.node("mirror/cdrom") or n.et.text.find('/') == -1:
> diff --git a/examples/elbe-init-with-ssh.xml b/examples/elbe-init-with-ssh.xml
> index b41063bf..f4f3c91b 100644
> --- a/examples/elbe-init-with-ssh.xml
> +++ b/examples/elbe-init-with-ssh.xml
> @@ -30,6 +30,7 @@
>  		<pkg-list>
>  			<pkg>openssh-server</pkg>
>  			<pkg>debootstrap/jessie-backports</pkg>
> +			<pkg>qemu-user-static/jessie-backports</pkg>
>  		</pkg-list>
>  		<portforwarding>
>  			<forward>
> -- 
> 2.15.1
> 
> 
> _______________________________________________
> elbe-devel mailing list
> elbe-devel at linutronix.de
> https://lists.linutronix.de/mailman/listinfo/elbe-devel

-- 
Mit freundlichen Grüßen
Torben Hohn

Linutronix GmbH

Standort: Bremen

Phone: +49 7556 25 999 18; Fax.: +49 7556 25 999 99

Firmensitz / Registered Office: D-88690 Uhldingen, Bahnhofstr. 3
Registergericht / Local District Court: Amtsgericht Freiburg i. Br.; HRB
Nr. / Trade register no.: 700 806

Geschäftsführer / Managing Directors: Heinz Egger, Thomas Gleixner

Eine Bitte von uns: Sollten Sie diese E-Mail irrtümlich erhalten haben,
benachrichtigen Sie uns in diesem Falle bitte sobald wie es Ihnen
möglich ist, durch Antwort-Mail. Vielen Dank!
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: Digital signature
URL: <http://lists.linutronix.de/pipermail/elbe-devel/attachments/20171205/cb581cc6/attachment.sig>


More information about the elbe-devel mailing list