From: Henning Schild <henning.schild@siemens.com>
To: Baurzhan Ismagulov <ibr@radix50.net>
Cc: <isar-users@googlegroups.com>
Subject: Re: [PATCH] images: wic: limit use of sudo and enable manual call again
Date: Thu, 1 Feb 2018 19:10:29 +0100 [thread overview]
Message-ID: <20180201191029.24608f9f@mmd1pvb1c.ad001.siemens.net> (raw)
In-Reply-To: <20180201160922.GA4056@yssyq.radix50.net>
Am Thu, 1 Feb 2018 17:09:22 +0100
schrieb Baurzhan Ismagulov <ibr@radix50.net>:
> On Thu, Feb 01, 2018 at 01:44:59PM +0100, Henning Schild wrote:
> > This patch addresses the two main issues found in the reviews. The
> > big "sudo" and the broken "call it manually". The latter one is not
> > fully solved because users will have to call "isar-wic" instead of
> > "wic".
> >
> > I would even suggest to not fold this into the series and apply it
> > on top. It kind of shows some of the hacks required to wrap an
> > unmodified wic. The patch cleanly applies on top of the series i
> > posted so far.
>
> Wow, that's an interesting approach, thanks for the effort. Splitting
> wic and isar-wic reduces user surprise, which would be a good thing.
Since i wanted wic to stay untouched i had to introduce isar-wic to
wrap it. It prepares some of the hacks we need in Isar, that code got
moved out of the bbclass into isar-wic.
> Do I understand correctly, you replace du and mkfs.* with your own
> versions and execute the respective command with superuser
> privileges? Let me read the code in more detail, but if yes, I'm not
> sure the complexity is worth the use case.
"du" and "mkfs" are symlinks to "isar-wic-handler". They are placed in
PATH before the real ones so wic calls end up in the handler. The
handler just executes them under sudo.
The other thing the handler does is act as fakeroot cmd where it does
not bail out on ret "1" from fsck.
Both hacks that where previously in wic.
> I haven't finished reading the first series yet. Some background
> questions:
>
> 1. Are there any disadvantages of using wic, compared to the
> old-school ext4-img?
That is still available as image type, however wic has the potential to
replace that eventually. As far as i understood wic builds disks not
partitions and ext4 builds a partition only.
> 2. AFAICT, Yocto still maintains both wic and image-types.bbclass.
> Why don't they move to wic completely?
I think because of disk vs. partition. You can build a disk with just
one partition and use the intermediate file as output, but i think our
wic version does not support that.
My guess is partitions where there before wic and nobody cared to clean
up. And there might be image types that wic can not do i.e. tarball
> 3. With wic-img.bbclass, how does one choose fs type? E.g., quickly
> generate the same image on ext4 and ext3.
You could write an image like that one:
> IMAGE_TYPE = 'wic-img'
> require recipes-core/images/isar-image-base.bb
> WKS_FILE = "sdimage-efi"
or with the other patch i sent
> WKS_FILE = "directdisk-isar"
For i.e. ext3 just copy the wks file and change the fstype in there.
You could move sdimage-efi.wks to sdimage-efi-ext3.wks
> 4. How to add a new fs type to wic?
This can be done with a wic plugin in any layer. Ideally one should
think whether this should be an upstream wic patch, submit it and
eventually update wic in Isar.
But this is more a wic-question, not really an Isar one.
> I see that you add wic-img.bbclass, but no image uses it. Would it be
> useful to migrate all images to wic, remove ext4-img, and remove wic
> usage from the docs? If that solution would be "clean" and we have
> answers to the questions above, I could possibly live with all-in
> sudo, although I'd still prefer keeping the sudo hack for a while.
True, i did not explain how to test this. Please refer to the example i
gave above.
For moving all images to wic, that sounds like a tempting idea. But
that needs more work.
1. the question of partitions vs. disks, as i said an update of wic
could potentially help here, because you can write in your wks that
you want to keep the partition images ... or a disk-plugin that can
handle exactly one partition and does not try to add bootloader/disk
stuff
2. the image file names are generated from wks-file-name, date,
disk-plugin-name and they do not contain all the exta-stamps to
play well with multiconfig ... i would be happy to assign this one
to people that insist on that complexity ;)
btw. all the kernels and initrds that currently end up in the
deploy/images have issues there as well
Next thing on my plate would be to make wic fetch its artifacts only
from buildchroot or rootfs. sdimage-efi actually installs the
bootloader from the host into the target! And enable legacy bios
images, a first patch was already sent.
wic plugins that deal with bootloaders very much depend on the way
there where installed, and debian installs them not the same way OE
does. So these plugins need to get forked.
For dropping manual calls to wic and removing it from the docs:
I made some effort to keep manual wic-usage, it has its value for devs
that might want to create multiple images from one rootfs probaly also
users. I would like to keep that.
Coming up with this version was a lot of trial and error. If it ends up
being not maintainable or causes trouble we can go back to the big
sudo.
For the series and this patch i would like to ask wic-users to try it
out and give feedback. Once wic plays well with multiconfig we can
integrate it into the default builds and CI.
Henning
> With kind regards,
> Baurzhan.
>
next prev parent reply other threads:[~2018-02-01 18:10 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-31 9:41 [PATCH 0/9] first wic integration Henning Schild
2018-01-31 9:41 ` [PATCH 1/9] classes: image: introduce size measuring function, for before do_*_image Henning Schild
2018-01-31 9:41 ` [PATCH 2/9] images: new class wic-img for wic intregration Henning Schild
2018-02-13 14:44 ` Alexander Smirnov
2018-02-13 16:06 ` Henning Schild
2018-01-31 9:41 ` [PATCH 3/9] wic: add a bootimg-efi-isar plugin outside the wic tree Henning Schild
2018-02-12 17:48 ` Jan Kiszka
2018-01-31 9:41 ` [PATCH 4/9] Revert "wic: Make the bootimg-efi plugin generate usable images" Henning Schild
2018-01-31 9:41 ` [PATCH 5/9] Revert "wic: Introduce the `WicExecError` exception class" Henning Schild
2018-01-31 9:41 ` [PATCH 6/9] Revert "wic: Work around mcopy error" Henning Schild
2018-01-31 9:41 ` [PATCH 7/9] Revert "wic: Use sudo instead of pseudo" Henning Schild
2018-01-31 9:41 ` [PATCH 8/9] Revert "wic: Remove sysroot support" Henning Schild
2018-01-31 9:42 ` [PATCH 9/9] wic: now truly go for the wic version we claim to have Henning Schild
2018-01-31 10:11 ` Alexander Smirnov
2018-01-31 10:55 ` Jan Kiszka
2018-01-31 11:11 ` Alexander Smirnov
2018-01-31 11:43 ` Jan Kiszka
2018-01-31 11:53 ` Baurzhan Ismagulov
2018-01-31 12:01 ` Jan Kiszka
2018-01-31 12:28 ` Baurzhan Ismagulov
2018-01-31 13:53 ` Henning Schild
2018-01-31 14:01 ` Baurzhan Ismagulov
2018-01-31 14:21 ` Henning Schild
2018-01-31 10:02 ` [PATCH 0/9] first wic integration Alexander Smirnov
2018-01-31 10:12 ` Henning Schild
2018-01-31 11:24 ` Baurzhan Ismagulov
2018-01-31 11:47 ` Jan Kiszka
2018-01-31 12:02 ` Baurzhan Ismagulov
2018-01-31 12:15 ` Jan Kiszka
2018-01-31 13:30 ` Jan Kiszka
2018-01-31 13:41 ` Baurzhan Ismagulov
2018-01-31 14:01 ` Jan Kiszka
2018-01-31 15:21 ` Baurzhan Ismagulov
2018-01-31 15:46 ` Henning Schild
2018-01-31 16:13 ` Jan Kiszka
2018-01-31 13:35 ` Baurzhan Ismagulov
2018-01-31 13:47 ` Henning Schild
2018-01-31 14:00 ` Baurzhan Ismagulov
2018-01-31 13:46 ` Henning Schild
2018-01-31 13:36 ` Henning Schild
2018-01-31 13:40 ` Baurzhan Ismagulov
2018-01-31 13:05 ` Henning Schild
2018-02-01 12:41 ` [PATCH] images: wic: limit use of sudo and enable manual call again Henning Schild
2018-02-01 12:44 ` Henning Schild
2018-02-01 16:09 ` Baurzhan Ismagulov
2018-02-01 18:10 ` Henning Schild [this message]
2018-02-01 18:55 ` Henning Schild
2018-02-12 19:07 ` Henning Schild
2018-02-12 17:27 ` [PATCH 0/9] first wic integration Henning Schild
2018-02-12 18:21 ` Alexander Smirnov
2018-02-12 18:30 ` Henning Schild
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=20180201191029.24608f9f@mmd1pvb1c.ad001.siemens.net \
--to=henning.schild@siemens.com \
--cc=ibr@radix50.net \
--cc=isar-users@googlegroups.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