diff options
Diffstat (limited to 'meta-netboot/recipes-core')
3 files changed, 20 insertions, 7 deletions
diff --git a/meta-netboot/recipes-core/initramfs-netboot/files/init.sh b/meta-netboot/recipes-core/initramfs-netboot/files/init.sh index 87a1acb80..4a4af3180 100644 --- a/meta-netboot/recipes-core/initramfs-netboot/files/init.sh +++ b/meta-netboot/recipes-core/initramfs-netboot/files/init.sh @@ -144,12 +144,21 @@ pivot_root . boot/initramfs || bail_out "pivot_root failed." if [[ -f /lib/systemd/system/connman.service ]]; then newopts="-r -n" iface=$(find_active_interface) - [[ -n "$iface" ]] && newopts="$newopts -I $iface" + # beside discovered iface, also ignore known renames + [[ -n "$iface" ]] && newopts="$newopts -I ${iface},enp2s0,enp3s0,end0,enp0s2,enp0s1 " log_info "Adjusting Connman command line. Will be: 'connmand $newopts'" sed -i "s|connmand -n\$|connmand $newopts|g" /lib/systemd/system/connman.service fi +# workaround for systemd-network-generator bringing the interface up/down/up +if [[ -f /usr/lib/systemd/system/systemd-network-generator.service ]] ; then + mkdir /etc/systemd/system/systemd-network-generator.service.d/ + echo "[Unit]" > /etc/systemd/system/systemd-network-generator.service.d/10_disable_nbd.conf + echo "ConditionKernelCommandLine=!nbd.server" >> /etc/systemd/system/systemd-network-generator.service.d/10_disable_nbd.conf +fi + + # also use /proc/net/pnp to generate /etc/resolv.conf rm -f /etc/resolv.conf grep -v bootserver /proc/net/pnp | sed 's/^domain/search/g' >/etc/resolv.conf diff --git a/meta-netboot/recipes-core/initramfs-netboot/initramfs-netboot_1.0.bb b/meta-netboot/recipes-core/initramfs-netboot/initramfs-netboot_1.0.bb index dd61a1ea8..4aba55578 100644 --- a/meta-netboot/recipes-core/initramfs-netboot/initramfs-netboot_1.0.bb +++ b/meta-netboot/recipes-core/initramfs-netboot/initramfs-netboot_1.0.bb @@ -1,21 +1,22 @@ SUMMARY = "Extremely basic live image init script" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" + SRC_URI = "file://init.sh" -S = "${WORKDIR}" +S = "${WORKDIR}/sources" +UNPACKDIR = "${S}" -RDEPENDS:${PN} += "nbd-client" +inherit allarch do_install() { install -dm 0755 ${D}${sysconfdir} touch ${D}${sysconfdir}/initrd-release install -dm 0755 ${D}/dev install -dm 0755 ${D}${sbindir} - install -m 0755 ${WORKDIR}/init.sh ${D}${sbindir}/init + install -m 0755 ${UNPACKDIR}/init.sh ${D}${sbindir}/init } -inherit allarch - FILES:${PN} += " /dev ${sysconfdir}/initrd-release ${sbindir}/init " +RDEPENDS:${PN} += "nbd-client" diff --git a/meta-netboot/recipes-core/systemd/resolv-conf-relabel.bb b/meta-netboot/recipes-core/systemd/resolv-conf-relabel.bb index 36d096b44..6180b78c2 100644 --- a/meta-netboot/recipes-core/systemd/resolv-conf-relabel.bb +++ b/meta-netboot/recipes-core/systemd/resolv-conf-relabel.bb @@ -4,6 +4,9 @@ LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda SRC_URI = "file://resolv-conf-relabel.service" +S = "${WORKDIR}/sources" +UNPACKDIR = "${S}" + inherit systemd allarch features_check SYSTEMD_SERVICE:${PN} = "${BPN}.service" @@ -15,7 +18,7 @@ do_compile[noexec] = "1" do_install() { install -d ${D}${systemd_system_unitdir} - install -m 0644 ${WORKDIR}/resolv-conf-relabel.service ${D}${systemd_system_unitdir}/ + install -m 0644 ${UNPACKDIR}/resolv-conf-relabel.service ${D}${systemd_system_unitdir}/ } FILES:${PN} += "${systemd_system_unitdir}" |