On Thu, Dec 12, 2024 at 11:44 AM Adrian Freihofer via lists.openembedded.org
<[email protected]> wrote:

> From: Adrian Freihofer <[email protected]>
>
> Support of images with different network management implementations
> without having to recompile systemd and other components.
>
> Fedora does this as well since systemd version 246.6-2:
> https://src.fedoraproject.org/rpms/systemd/blob/rawhide/f/systemd.spec#_578
> This proves that it is technically possible and officially supported by
> systemd.
>
> Signed-off-by: Adrian Freihofer <[email protected]>
> ---
>  meta/recipes-core/systemd/systemd_256.8.bb | 28 +++++++++++++++++++---
>  1 file changed, 25 insertions(+), 3 deletions(-)
>
> diff --git a/meta/recipes-core/systemd/systemd_256.8.bb
> b/meta/recipes-core/systemd/systemd_256.8.bb
> index c1915d7e941..0710377d32d 100644
> --- a/meta/recipes-core/systemd/systemd_256.8.bb
> +++ b/meta/recipes-core/systemd/systemd_256.8.bb
> @@ -412,6 +412,7 @@ PACKAGE_BEFORE_PN = "\
>      ${PN}-journal-remote \
>      ${PN}-kernel-install \
>      ${PN}-mime \
> +    ${PN}-networkd \
>      ${PN}-rpm-macros \
>      ${PN}-udev-rules \
>      ${PN}-vconsole-setup \
> @@ -440,6 +441,7 @@ SYSTEMD_PACKAGES =
> "${@bb.utils.contains('PACKAGECONFIG', 'binfmt', '${PN}-binfm
>                      ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd',
> '${PN}-journal-gatewayd', '', d)} \
>                      ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd',
> '${PN}-journal-remote', '', d)} \
>                      ${@bb.utils.contains('PACKAGECONFIG',
> 'journal-upload', '${PN}-journal-upload', '', d)} \
> +                    ${@bb.utils.contains('PACKAGECONFIG', 'networkd',
> '${PN}-networkd', '', d)} \
>  "
>  SYSTEMD_SERVICE:${PN}-binfmt = "systemd-binfmt.service"
>
> @@ -448,12 +450,13 @@ USERADD_PACKAGES = "${PN} \
>                      ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd',
> '${PN}-journal-gatewayd', '', d)} \
>                      ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd',
> '${PN}-journal-remote', '', d)} \
>                      ${@bb.utils.contains('PACKAGECONFIG',
> 'journal-upload', '${PN}-journal-upload', '', d)} \
> +                    ${@bb.utils.contains('PACKAGECONFIG', 'networkd',
> '${PN}-networkd', '', d)} \
>  "
>

Possibly an already asked and answered question (I scanned quickly, but I
didn't see it).

Is there any reason why networkd shouldn't be in the default PACKAGECONFIG
? This is a change of behaviour, that should be opt-in, not opt-out.

Bruce



>  GROUPADD_PARAM:${PN} = "-r systemd-journal;"
>  GROUPADD_PARAM:udev = "-r render"
>  GROUPADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG',
> 'polkit_hostnamed_fallback', '-r systemd-hostname;', '', d)}"
>  USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'coredump',
> '--system -d / -M --shell /sbin/nologin systemd-coredump;', '', d)}"
> -USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'networkd',
> '--system -d / -M --shell /sbin/nologin systemd-network;', '', d)}"
> +USERADD_PARAM:${PN}-networkd = "--system -d / -M --shell /sbin/nologin
> systemd-network"
>  USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'polkit',
> '--system --no-create-home --user-group --home-dir ${datadir}/polkit-1
> polkitd;', '', d)}"
>  USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'resolved',
> '--system -d / -M --shell /sbin/nologin systemd-resolve;', '', d)}"
>  USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG',
> 'timesyncd', '--system -d / -M --shell /sbin/nologin systemd-timesync;',
> '', d)}"
> @@ -620,6 +623,27 @@ FILES:${PN}-extra-utils = "\
>  FILES:${PN}-mime = "${MIMEDIR}"
>  RRECOMMENDS:${PN} += "${PN}-mime"
>
> +FILES:${PN}-networkd = "\
> +    ${bindir}/networkctl \
> +    ${datadir}/dbus-1/system-services/org.freedesktop.network1.service \
> +    ${datadir}/dbus-1/system.d/org.freedesktop.network1.conf \
> +    ${datadir}/polkit-1/actions/org.freedesktop.network1.policy \
> +    ${nonarch_libdir}/sysusers.d/systemd-network.conf \
> +    ${nonarch_libdir}/tmpfiles.d/systemd-network.conf \
> +    ${sysconfdir}/systemd/networkd.conf \
> +    ${systemd_system_unitdir}/systemd-networkd* \
> +    ${systemd_unitdir}/network/*.network \
> +    ${systemd_unitdir}/network/*.network.example \
> +    ${systemd_unitdir}/networkd.conf \
> +    ${systemd_unitdir}/systemd-networkd* \
> +"
> +# systemd-networkd-persistent-storage.service
> BindsTo=systemd-networkd.service
> +# systemd-networkd.service has Also=systemd-networkd-wait-online.service
> +SYSTEMD_SERVICE:${PN}-networkd = "systemd-networkd.service"
> +CONFFILES:${PN}-networkd = "${sysconfdir}/systemd/networkd.conf"
> +RDEPENDS:${PN}-networkd += "${PN}"
> +RRECOMMENDS:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'networkd',
> '${PN}-networkd', '', d)}"
> +
>  FILES:${PN}-udev-rules = "\
>                          ${nonarch_libdir}/udev/rules.d/70-uaccess.rules \
>                          ${nonarch_libdir}/udev/rules.d/71-seat.rules \
> @@ -630,7 +654,6 @@ FILES:${PN}-udev-rules = "\
>  CONFFILES:${PN} = "${sysconfdir}/systemd/coredump.conf \
>         ${sysconfdir}/systemd/journald.conf \
>         ${sysconfdir}/systemd/logind.conf \
> -       ${sysconfdir}/systemd/networkd.conf \
>         ${sysconfdir}/systemd/pstore.conf \
>         ${sysconfdir}/systemd/resolved.conf \
>         ${sysconfdir}/systemd/sleep.conf \
> @@ -698,7 +721,6 @@ FILES:${PN} = " ${base_bindir}/* \
>                  ${nonarch_libdir}/modprobe.d/README \
>                  ${datadir}/dbus-1/system.d/org.freedesktop.timedate1.conf
> \
>                  ${datadir}/dbus-1/system.d/org.freedesktop.locale1.conf \
> -                ${datadir}/dbus-1/system.d/org.freedesktop.network1.conf \
>                  ${datadir}/dbus-1/system.d/org.freedesktop.resolve1.conf \
>                  ${datadir}/dbus-1/system.d/org.freedesktop.systemd1.conf \
>                  ${@bb.utils.contains('PACKAGECONFIG',
> 'polkit_hostnamed_fallback',
> '${datadir}/dbus-1/system.d/org.freedesktop.hostname1_no_polkit.conf', '',
> d)} \
> --
> 2.47.0
>
>
> 
>
>

-- 
- Thou shalt not follow the NULL pointer, for chaos and madness await thee
at its end
- "Use the force Harry" - Gandalf, Star Trek II
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#208684): 
https://lists.openembedded.org/g/openembedded-core/message/208684
Mute This Topic: https://lists.openembedded.org/mt/110082903/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to