From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6721684426774806528 X-Received: by 2002:a7b:c8d4:: with SMTP id f20mr19962960wml.90.1565016517998; Mon, 05 Aug 2019 07:48:37 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a7b:ca58:: with SMTP id m24ls108750wml.1.canary-gmail; Mon, 05 Aug 2019 07:48:37 -0700 (PDT) X-Google-Smtp-Source: APXvYqzCXJs+/rKYd8FtDF/Nktg6ZiQ1CU6vw7kRKamB6s1zjuR6Djr3rpEZkIufg0mdEb2yrrw3 X-Received: by 2002:a05:600c:c6:: with SMTP id u6mr19686280wmm.153.1565016517478; Mon, 05 Aug 2019 07:48:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1565016517; cv=none; d=google.com; s=arc-20160816; b=OmwXEmNtSXvpz7DK6MpI+6EnkuY0/x+hDu2bEIsesWW0SygG9xlidYC3rLdDWmWix8 SYIgseqjmjbUP6qqPdUsuvI6bG2q3SV0qDA0oHgJqEucaa8FmnfalTCc6z91b5LAoxdT fBl8LKwSj/4CqNfhHNEWsk1l2iR6lJ4FBuv9TBjLeoZtAksloovXNmEmaQfxAzAU7Iwg 141n8vWhWDDLzKPRssSxfxINv1lAgXZroK1b04Z6/2Z9MZZvFGb6s2xkcxvgAZMxsV00 wGTQc2s9PXXZVuywylcuwZcCsX3qDnL/fXr9wb9fJm4HTGPje9jknoNBCD++ZKWzeOua rfkA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:content-language:in-reply-to:mime-version :user-agent:date:message-id:from:references:cc:to:subject; bh=+ujLdwbOIQfNfPVWFQ6d3m3AvuP+f4QOQY7BljHje4Q=; b=LGosQdWq/+PC8jUCvvbCMwk7HHzJe5AbL5uOJNOlTKVW7xVXVoZNygvPz0/dl6BKzm rYFvogrrOIIrvC8latWl670gKWWOiXL7SFKwgTwcLTsl7o2kw33c+MqClZwxB1JAoIMX nuZaj17oO3eNBwix9u3ZBmu1z0uz9hIvcMgrwY3K4NZz1ie3q10fUVPO50SvMt4rR//T Q78986oolWNuBSY6lxxFbR9eMzjib0QQdK2UrU7LZcnnufsB7fVI6qWO0/VmIzaWXu0b XU6ukndGY00UE8rtiaJDtfOKILTSpyDS/y8LrNNw9QIkM47XFEOfXSvYexcknVXZGjhL YJWA== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of jan.kiszka@siemens.com designates 192.35.17.28 as permitted sender) smtp.mailfrom=jan.kiszka@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from goliath.siemens.de (goliath.siemens.de. [192.35.17.28]) by gmr-mx.google.com with ESMTPS id p2si449666wmg.4.2019.08.05.07.48.37 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 05 Aug 2019 07:48:37 -0700 (PDT) Received-SPF: pass (google.com: domain of jan.kiszka@siemens.com designates 192.35.17.28 as permitted sender) client-ip=192.35.17.28; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of jan.kiszka@siemens.com designates 192.35.17.28 as permitted sender) smtp.mailfrom=jan.kiszka@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: from mail1.sbs.de (mail1.sbs.de [192.129.41.35]) by goliath.siemens.de (8.15.2/8.15.2) with ESMTPS id x75Emb8L004347 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Mon, 5 Aug 2019 16:48:37 +0200 Received: from [139.25.68.37] (md1q0hnc.ad001.siemens.net [139.25.68.37] (may be forged)) by mail1.sbs.de (8.15.2/8.15.2) with ESMTP id x75EmafP031860; Mon, 5 Aug 2019 16:48:36 +0200 Subject: Re: [PATCH] meta/classes: generate bill of material from image To: "[ext] Henning Schild" , "[ext] Q. Gylstorff" Cc: isar-users@googlegroups.com References: <20190805140742.11479-1-Quirin.Gylstorff@siemens.com> <20190805164327.0f59d9a1@md1za8fc.ad001.siemens.net> From: Jan Kiszka Message-ID: Date: Mon, 5 Aug 2019 16:48:36 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 MIME-Version: 1.0 In-Reply-To: <20190805164327.0f59d9a1@md1za8fc.ad001.siemens.net> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-TUID: Jt8hW2PoBu9+ On 05.08.19 16:43, [ext] Henning Schild wrote: > Hi Quirin, > > do you have a real use-case for that? In fact we do have similar things > internally already but did not propose it yet. Reason is you still need > to find all the magic switches to collect the source and binary package > versions, and you most likely want a machine readable format. The use cases are the same what we have that internal stuff for. > > In fact we should just fix that broken offline cache thing and enable > src-packages for it. That would generate a list that will hopefully be > complete and in a well defined format. Good points: The format should be easily parseable. > > Without the real use-case and the post-processing this is just another > obscure Isar feature and i am against merging it. How would you do it otherwise? Tell the beginners to remember which command to run with which switches on which subdirs? Quirin and I were also discussing the first extension: We need to collect information about additional packages that are not part of the rootfs but the image, primarily bootloaders. Providing a framework - however that may look like - for recipe authors to report them would be valuable and can be achieved by any local solution that cleanly. Jan > > Henning > > Am Mon, 5 Aug 2019 16:07:42 +0200 > schrieb "[ext] Q. Gylstorff" : > >> From: Quirin Gylstorff >> >> To create products it is necessary to have a list >> of used packages for clearance and to security monitoring. >> To get a simple list of packages use dpkg-query and generate >> a list with the following pattern: >> >> source name| source version | binary package name | binary version >> >> To use it add following line to the local.conf: >> ISAR_DO_PACKAGE_LIST ?= "1" >> >> Signed-off-by: Quirin Gylstorff >> --- >> meta-isar/conf/local.conf.sample | 4 ++++ >> .../classes/image-package-list-extension.bbclass | 16 >> ++++++++++++++++ meta/classes/image.bbclass | >> 1 + 3 files changed, 21 insertions(+) >> create mode 100644 meta/classes/image-package-list-extension.bbclass >> >> diff --git a/meta-isar/conf/local.conf.sample >> b/meta-isar/conf/local.conf.sample index 5b3a0a1..d188051 100644 >> --- a/meta-isar/conf/local.conf.sample >> +++ b/meta-isar/conf/local.conf.sample >> @@ -170,6 +170,10 @@ IMAGE_INSTALL = "hello-isar example-raw >> example-module-${KERNEL_NAME} enable-fsc # NOTE: this works on build >> host >= stretch for armhf, arm64 and amd64 targets for now. >> ISAR_CROSS_COMPILE ?= "0" >> +# >> +# Generate package list >> +ISAR_DO_PACKAGE_LIST ?= "1" >> + >> # >> # Uncomment this to enable use of cached base repository >> #ISAR_USE_CACHED_BASE_REPO ?= "1" >> diff --git a/meta/classes/image-package-list-extension.bbclass >> b/meta/classes/image-package-list-extension.bbclass new file mode >> 100644 index 0000000..558922e >> --- /dev/null >> +++ b/meta/classes/image-package-list-extension.bbclass >> @@ -0,0 +1,16 @@ >> +# This software is a part of ISAR. >> +# Copyright (C) Siemens AG, 2019 >> +# >> +# SPDX-License-Identifier: MIT >> + >> +ISAR_DO_PACKAGE_LIST ??= "0" >> +image_package_list[dirs] = "${DEPLOY_DIR_IMAGE}" >> +image_package_list() { >> + if >> [ "${@repr(bb.utils.to_boolean(d.getVar('ISAR_DO_PACKAGE_LIST')))}" = >> 'True' ]; then >> + dpkg-query --admindir=${IMAGE_ROOTFS}/var/lib/dpkg/ \ >> + -f >> '${source:Package}|${source:Version}|${binary:Package}|${Version}\n' >> -W > \ >> + ${DEPLOY_DIR_IMAGE}/${IMAGE_FULLNAME}.packages.lst >> + fi >> +} >> +ROOTFS_POSTPROCESS_COMMAND =+ "image_package_list" >> + >> diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass >> index ec6bd39..85bab64 100644 >> --- a/meta/classes/image.bbclass >> +++ b/meta/classes/image.bbclass >> @@ -68,6 +68,7 @@ inherit image-tools-extension >> inherit image-postproc-extension >> inherit image-locales-extension >> inherit image-account-extension >> +inherit image-package-list-extension >> >> # Extra space for rootfs in MB >> ROOTFS_EXTRA ?= "64" > -- Siemens AG, Corporate Technology, CT RDA IOT SES-DE Corporate Competence Center Embedded Linux