Yes SYSTEMD_AUTO_ENABLE_${PN} doesn't apply to systemd recipe core services
as they are not installed as separate packages.

But I got it working now.

The default enable/disable service are defined in
https://github.com/systemd/systemd/blob/master/presets/90-systemd.preset

So
do_configure_append() {
    sed -i -e "s/enable systemd-timesyncd.service/disable
systemd-timesyncd.service/g" ${S}/presets/90-systemd.preset
}

does the trick

Cheers,
-Damien

On Mon, Nov 23, 2020 at 10:42 PM Konrad Weihmann <kweihm...@outlook.com>
wrote:

> The service is deployed with standard systemd package, which doesn't
> have that set as far as I see it (no SYSTEMD_AUTO_ENABLE_${PN} in the
> latest recipe revision)
>
> I think, after browsing through the code of systemd - this "autostart"
> behavior comes from [1].
> So I would say you can disable it with a drop-in file at
> /etc/systemd/system/systemd-timesyncd.service.d/disable.conf
> [Install]
> WantedBy=
>
> which also would be charming in a way that it isn't that invasive in the
> build system
>
> [1]
>
> https://github.com/systemd/systemd/blob/5b639090d0b4a49d77ba58bebe180b2a6f8da322/units/systemd-timesyncd.service.in#L55
>
> haven't tested it though, but you might wanna give that a shot, if
> Aaron's approach doesn't work.
>
> On 23.11.20 21:21, Joel A Cohen wrote:
> > I think you need to set SYSTEMD_AUTO_ENABLE = “disable” (actually any
> > value other than “enable”) in your bbappend.
> >
> > (It looks like SYSTEMD_AUTO_ENABLE_${PN} is intended to work too, but I
> > can’t verify it at the moment and reading over systemd.bbclass I’m not
> > sure if it works or not)
> >
> > —Aaron
> >
> > On Mon, Nov 23, 2020 at 11:51 AM Damien LEFEVRE <lefevre...@gmail.com
> > <mailto:lefevre...@gmail.com>> wrote:
> >
> >     Hi,
> >
> >     I would like to have systemd-timesyncd.service as part of an image
> >     but have it disabled by default.
> >
> >     Right now it is enabled by default which causes some issues.
> >
> >     I've tried systemd_%.bbappend
> >
> >     do_install_append() {
> >          rm
> "$D/etc/systemd/system/dbus-org.freedesktop.timesync1.service"
> >          rm
> >
>  "$D/etc/systemd/system/sysinit.target.wants/systemd-timesyncd.service"
> >     }
> >
> >     but those symlinks are not part of the package.
> >
> >     I've tried this to remove the link during the package deployment
> >     during do_rootfs
> >     pkg_postinst_${PN}_append() {
> >          #!/bin/sh -e
> >          rm
> "$D/etc/systemd/system/dbus-org.freedesktop.timesync1.service"
> >          rm
> >
>  "$D/etc/systemd/system/sysinit.target.wants/systemd-timesyncd.service"
> >     }
> >
> >     But at this stage the links still don't exist.
> >
> >     Which package is actually responsible for enabling the default
> >     services / creating the symlinks? How can we turn some of them off
> >     while keeping them in the image?
> >
> >     Thanks,
> >     -Damien
> >
> >
> >
> >
> >
> > 
> >
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#51539): https://lists.yoctoproject.org/g/yocto/message/51539
Mute This Topic: https://lists.yoctoproject.org/mt/78461756/21656
Group Owner: yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to