From: Claudius Heine <claudius.heine.ext@siemens.com>
To: "[ext] Henning Schild" <henning.schild@siemens.com>,
Alexander Smirnov <asmirnov@ilbers.de>
Cc: isar-users@googlegroups.com, Frank Lenormand <lenormf@gmail.com>
Subject: Re: [PATCH 1/6] meta-isar-bin: Enable caching of deb packages
Date: Thu, 7 Sep 2017 13:13:42 +0200 [thread overview]
Message-ID: <96a8f85e-ae75-f7c6-0b4a-b3112cd93b0b@siemens.com> (raw)
In-Reply-To: <20170906162140.50ce9210@md1em3qc>
Hi,
On 09/06/2017 04:21 PM, [ext] Henning Schild wrote:
>> --- a/meta/classes/image.bbclass
>> +++ b/meta/classes/image.bbclass
>> @@ -11,18 +11,34 @@ inherit ${IMAGE_TYPE}
>>
>> do_populate[stamp-extra-info] = "${MACHINE}-${DISTRO}"
>>
>> -# Install Debian packages, that were built from sources
>> +# Install Debian packages from the cache
>> do_populate() {
>> + readonly DIR_CACHE="${DEBCACHEDIR}/${DISTRO}"
>> +
>> if [ -n "${IMAGE_INSTALL}" ]; then
>> - sudo mkdir -p ${S}/deb
>> + if [ "${DEBCACHE_ENABLED}" != "0" ]; then
>> + sudo mkdir -p "${S}/${DEBCACHEMNT}"
>> + sudo mount -o bind "${DIR_CACHE}" "${S}/${DEBCACHEMNT}"
>> +
>> + sudo chroot "${S}" apt-get update -y
>> + for package in ${IMAGE_INSTALL}; do
>> + sudo chroot "${S}" apt-get install -t
>> "${DEBDISTRONAME}" -y \
>> + --allow-unauthenticated "${package}"
>
> With do_populate using apt-get we now how to deal with package-name
> collisions. We could have the case where our repo contains a package
> that already exists in upstream debian.
>
> We will have to decide how to deal with them if they occur. My
> suggestions/first idea would be:
> - a recipe that creates a .deb with a taken package name fails by
> default -EBUSY
> - a recipe can set a variable to force itself in "OVERRIDE_DEBIAN =
> True"
> - a recipe that overrides the upstream package has to "win", we need
> a proper apt Pin-Priority
If all packages that are created by isar have for instance 'isar' in the
version, then it should be possible to specify this version explicitly
when installing them from the repository. I think pining is only
necessary if upgrading packages on the target is a required feature.
One option for this would be that another meta package (maybe created in
the image recipe) has explicit version dependencies on all packages
created by isar. This way apt would not upgrade those packages because
it would break the version dependency.
Cheers,
Claudius
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-54 Fax: (+49)-8142-66989-80 Email: ch@denx.de
next prev parent reply other threads:[~2017-09-07 11:13 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-27 15:13 [PATCH 0/6] Isar apt cache implementation Alexander Smirnov
2017-08-27 15:13 ` [PATCH 1/6] meta-isar-bin: Enable caching of deb packages Alexander Smirnov
2017-08-28 15:18 ` Henning Schild
2017-08-29 6:40 ` Alexander Smirnov
2017-08-29 7:51 ` Henning Schild
2017-08-29 8:20 ` Alexander Smirnov
2017-08-31 10:55 ` Claudius Heine
2017-08-31 11:20 ` Henning Schild
2017-08-31 12:08 ` Claudius Heine
2017-09-06 14:21 ` Henning Schild
2017-09-07 11:13 ` Claudius Heine [this message]
2017-08-27 15:13 ` [PATCH 2/6] classes/image: Provide /dev/null for Stretch apt Alexander Smirnov
2017-08-28 15:20 ` Henning Schild
2017-08-28 15:26 ` Henning Schild
2017-08-27 15:13 ` [PATCH 3/6] classes/dpkg: Split install for cache Alexander Smirnov
2017-08-28 8:00 ` Claudius Heine
2017-08-29 7:18 ` Alexander Smirnov
2017-08-30 8:54 ` Claudius Heine
2017-08-28 15:30 ` Henning Schild
2017-08-27 15:13 ` [PATCH 4/6] meta-isar-bin: Enable apt repo generation for amd64 Alexander Smirnov
2017-08-27 15:13 ` [PATCH 5/6] classes/dpkg: Properly update packages in the cache Alexander Smirnov
2017-08-28 15:32 ` Henning Schild
2017-08-29 7:20 ` Alexander Smirnov
2017-08-29 7:57 ` Henning Schild
2017-08-29 11:26 ` Jan Kiszka
2017-08-27 15:13 ` [PATCH 6/6] doc/technical_overview: Describe binary cache Alexander Smirnov
2017-08-28 15:36 ` Henning Schild
2017-08-29 7:29 ` Alexander Smirnov
2017-08-29 8:06 ` Henning Schild
2017-08-29 11:29 ` Jan Kiszka
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=96a8f85e-ae75-f7c6-0b4a-b3112cd93b0b@siemens.com \
--to=claudius.heine.ext@siemens.com \
--cc=asmirnov@ilbers.de \
--cc=henning.schild@siemens.com \
--cc=isar-users@googlegroups.com \
--cc=lenormf@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox