After upgrading to poky pyro, generation of grub2 menuentry in grub2
became broken. Our init-install.sh script, origianlly coming from an old
poky version, was modified in poky
c2e63957d5abaa4bb10507da5ba16f01112d0bf5 to adapt to the fact that
/etc/grub.d/40_custom was not there anymore. We need to do the same,
otherwise the menyentry is not appended to the grub config and the
installed image won't boot correctly.
poky script ./meta/recipes-core/udev/udev-extraconf/mount.sh is called
by systemd-udev rules every time a storage device is found, and it is
responisble to automount them. The init script waits until the device is
automounted to finish the boot process.
The mount.sh script sues "stat", and right now our busybox doesn't have
it enabled. As a result, stat is not found, the script fails, the
device is not mounted, and the init script hangs forever.
mtd-utils-native needs to be available for do_deploy, so add the
dependency there. DEPENDS is meaningless for us so remove it too.
Use specific tasks as dependency to workaround an issue with poky
master where glibc-initial and glibc-locale would be direct deps.
Clone the recipe to deal with the different tasks. I wasn't able
to get the other tasks in place for dora.
In modern Poky the facade is gone and the data dictionary needs
to be accessed directly. This commit is catching up with it. It
was build tested on dora as well. I have not checked if it is
changing the checksums of a dora build.
ERROR: image-rauc-ubi-1.0-r0 do_populate_lic: QA Issue: image-rauc-ubi: Recipe file does not have license file information (LIC_FILES_CHKSUM) [license-checksum]
This glib-2.0 version was required by rauc and should have been
placed in the recipes-extra (or recipes-fixes) directory.
Yocto master has imported gobject-introspecition and this requires
a newer version of glib-2.0. For Yocto master this recipe has
replaced the newer one. By moving it to the yocto-dora directory
we continue to use the old version on dora and the default version
on master.
Our initramfs images are supposed to be small and don't have a
/etc/opkg folder so attempting to put feed config in there will
fail. Reset the FEED_URIS that come from our local.conf.
This change adds an initramfs module to mount the data partition and
restore the backup to the overlay. It is enabled by adding it to the
image-rauc-slot-initramfs recipe.
Signed-off-by: Jan Luebbe <jluebbe@debian.org>
[hfreyther: keep udev out of the dependencies]
Create a sysmocom-nitb-rauc-image and create a rauc packagegroup
with the default depdencies and an include file to be used by
other images. This assumes that sysmocom-image.inc has been
included first.
By using initramfs for the rescue we occupy 8mb + ~3mb for the
kernel and can reduce the size of that slot. With glibc it is
difficult to reduce this even further. Let's see if a uclibc
build can help us
Splitt of the actual rescue root filesystem to
image-rauc-rescue-initramfs and build image-rauc-ubi using
kernel+initramfs (like normal rauc slots).
Signed-off-by: Jan Luebbe <jluebbe@debian.org>
Hopefully, this installs a different /etc/default/udhcpc file on
sysmocom-idu machines. Not sure if adding a machine subdir suffices.
The idea is that the machine-specific subdir symocom-idu should replace
the udhcpc.default file used for the idu packages, only, which has both
resolv.conf mods and default route disabled by default.
The IDU requires that udhcpc does neither touch resolv.conf nor install a
default route. Add a flag to switch off default route installation, the
resolv.conf part is already switch-off-able.
* We never need the BTS firmware. We never want to do GSM from
within rescue image
* Remove various udev hardware dbs. I think we couldn't care less
about identifying peripheral devices by name and such.
The system should be as small as possible and besides tools to
touch flash and block files, SSHD and rauc there should be nothing
else. We might continue to have opkg on it to allow updating it
The partition layout needed for rauc is different from the one created
by the existing installer (based on the live image).
An initramfs-framework module for installation to the sysmocom-idu is
added. It is included in a corresponding initramfs image for use on an
USB memory stick.
- remove file with wrong path to ifplugd
recipes-core/busybox/files/busybox-ifplugd.sh
DAEMON=/usr/bin/ifplugd vs. /usr/sbin/ifplugd
- use lambda expression for sysmobts/sysmobsc-kernel to
include busybox-ifplugd or not
- use different defconfig files between master
and dora to enable ifplugd or not
- use different interfaces files between master
and dora to enable auto stanza or not
for the dhcp interface
Fixes: SYS#868 and SYS#1535
[hfreyther: Try to pick an option less likely to break the
Dora support but allowing us to move forward. Not entirely
compile tested due IO load of the system]
The initramfs-framework from oe-core performs an endless loop of "sleep
3600" when fatal() is called. We need to reboot instead.
Signed-off-by: Jan Luebbe <jluebbe@debian.org>
In SYS#659 we wanted that "file" will always log to a persistent
/var/log. After I changed the /etc/default/volatiles/00_core for
the IDU and made journald persistent we still ended up having the
symlink. It appears to be caused by this script.
* When "buffer" is used we don't need to care about /var/log as
it is not being used at all.
* When "file" is set we make sure that /var/log is not a symlink.
In case of the IDU the journald should now be persistent.
Related: SYS#659