From: Alexander Dahl <ada@thorsis.com>
To: distrokit@pengutronix.de
Cc: Michael Olbrich <m.olbrich@pengutronix.de>
Subject: Re: [DistroKit] [PATCH] datapartition: Let systemd install custom udev rule
Date: Fri, 25 Jun 2021 13:29:41 +0200 [thread overview]
Message-ID: <2990520.xpvgETS0Is@ada> (raw)
In-Reply-To: <20210625112214.GG25044@pengutronix.de>
Hei hei,
Am Freitag, 25. Juni 2021, 13:22:14 CEST schrieb Michael Olbrich:
> Hi,
>
> On Fri, Jun 25, 2021 at 01:15:46PM +0200, Alexander Dahl wrote:
> > If DistroKit is used as a base layer and any upper layer enables
> > PTXCONF_SYSTEMD_UDEV_CUST_RULES, package installation might fail because
> > both packages, 'systemd' and 'datapartition' try to targetinstall
> >
> > 'usr/lib/udev/rules.d/91-mkfs-ext4.rules', like this:
> > Collected errors:
> > * check_data_file_clashes: Package datapartition wants to install
> > file
> > /home/adahl/Work/bsp/xxx/base/platform-v7a/build-target/image-root-t
> > gz/usr/lib/udev/rules.d/91-mkfs-ext4.rules>
> > But that file is already provided by package * systemd
> >
> > * opkg_solver_install: Cannot install package datapartition.
> >
> > make: ***
> > [/usr/local/lib/ptxdist-2021.02.0/rules/image-root-tgz.make:30:
> > /home/adahl/Work/bsp/xxx/base/platform-v7a/images/root.tgz] Error 255
> NACK.
>
> An now 91-mkfs-ext4.rules won't be installed unless it is copied into each
> layer that provides udev rules. Don't use SYSTEMD_UDEV_CUST_RULES with
> layers. It doesn't work properly.
Well, I tested it with ptxdist-2021.02.0 and BSP using DistroKit-2021.02.0 as
base layer. That file 91-mkfs-ext4.rules was actually copied, and I did not
duplicate it into the upper layer before.
Was there a post ptxdist-2021.02.0 change preventing that conflict outlined
above?
However, and that's probably also against this approach: the file won't get
copied anymore if someone disables SYSTEMD_UDEV_CUST_RULES in an upper layer
for any reason?
So, if I want to install my own custem udev rule from an upper layer, what am
I supposed to do, if SYSTEMD_UDEV_CUST_RULES is a no go? Create another
package like 'datapartition' for just installing that one file?
Greets
Alex
>
> Michael
>
> > Signed-off-by: Alexander Dahl <ada@thorsis.com>
> > ---
> >
> > configs/ptxconfig | 2 +-
> > rules/datapartition.make | 2 --
> > 2 files changed, 1 insertion(+), 3 deletions(-)
> >
> > diff --git a/configs/ptxconfig b/configs/ptxconfig
> > index c97e321..a4fa7e9 100644
> > --- a/configs/ptxconfig
> > +++ b/configs/ptxconfig
> > @@ -1437,7 +1437,7 @@ PTXCONF_SYSTEMD_ZSTD=y
> >
> > #
> > PTXCONF_SYSTEMD_UDEV_DRIVERS_RULES=y
> > # PTXCONF_SYSTEMD_UDEV_HWDB is not set
> >
> > -# PTXCONF_SYSTEMD_UDEV_CUST_RULES is not set
> > +PTXCONF_SYSTEMD_UDEV_CUST_RULES=y
> >
> > # end of install options
> >
> > #
> >
> > diff --git a/rules/datapartition.make b/rules/datapartition.make
> > index b79bcf0..7f3c992 100644
> > --- a/rules/datapartition.make
> > +++ b/rules/datapartition.make
> >
> > @@ -28,8 +28,6 @@ $(STATEDIR)/datapartition.targetinstall:
> > @$(call install_alternative, datapartition, 0, 0, 0644, \
> >
> > /usr/lib/systemd/system/systemd-autoformat@.service)
> >
> > - @$(call install_alternative, datapartition, 0, 0, 0644, \
> > - /usr/lib/udev/rules.d/91-mkfs-ext4.rules)
> >
> > @$(call install_finish,datapartition)
> >
> > base-commit: 085bb9b4273c8fd91105d9e149776f144f5fdd65
_______________________________________________
DistroKit mailing list
DistroKit@pengutronix.de
next prev parent reply other threads:[~2021-06-25 11:29 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-06-25 11:15 Alexander Dahl
2021-06-25 11:22 ` Michael Olbrich
2021-06-25 11:29 ` Alexander Dahl [this message]
2021-06-25 12:03 ` Alexander Dahl
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=2990520.xpvgETS0Is@ada \
--to=ada@thorsis.com \
--cc=distrokit@pengutronix.de \
--cc=m.olbrich@pengutronix.de \
/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