Initial commit

This commit is contained in:
Your Name
2026-04-23 17:07:55 +08:00
commit b7e39e063b
16725 changed files with 1625565 additions and 0 deletions
@@ -0,0 +1,3 @@
DESCRIPTION = "Debug tools tarball for use with OpenBMC Phosphor"
inherit obmc-phosphor-debug-tarball
@@ -0,0 +1,10 @@
DESCRIPTION = "A basic OpenBMC image with no features enabled."
LICENSE = "Apache-2.0"
inherit obmc-phosphor-image
# The /etc/version file is misleading and not useful. Remove it.
# Users should instead rely on /etc/os-release.
ROOTFS_POSTPROCESS_COMMAND += "remove_etc_version ; "
IMAGE_LINGUAS = ""
@@ -0,0 +1,64 @@
DESCRIPTION = "Image with Phosphor, a software stack for hardware management \
in devices with baseboard management controllers. The image supports the \
full OpenBMC feature set for devices of all types."
LICENSE = "Apache-2.0"
inherit obmc-phosphor-image
# The /etc/version file is misleading and not useful. Remove it.
# Users should instead rely on /etc/os-release.
ROOTFS_POSTPROCESS_COMMAND += "remove_etc_version ; "
IMAGE_LINGUAS = ""
IMAGE_FEATURES += " \
obmc-bmc-state-mgmt \
obmc-bmcweb \
obmc-chassis-mgmt \
obmc-chassis-state-mgmt \
obmc-console \
obmc-devtools \
obmc-fan-control \
obmc-fan-mgmt \
obmc-flash-mgmt \
obmc-fru-ipmi \
obmc-health-monitor \
obmc-host-ctl \
obmc-host-ipmi \
obmc-host-state-mgmt \
obmc-ikvm \
obmc-inventory \
obmc-leds \
obmc-logging-mgmt \
obmc-remote-logging-mgmt \
obmc-rng \
obmc-net-ipmi \
obmc-sensors \
obmc-software \
obmc-system-mgmt \
obmc-user-mgmt \
obmc-user-mgmt-ldap \
${@bb.utils.contains_any('DISTRO_FEATURES', \
'obmc-ubi-fs phosphor-mmc obmc-static-norootfs', \
'read-only-rootfs overlayfs-etc', '', d)} \
ssh-server-dropbear \
obmc-debug-collector \
obmc-network-mgmt \
obmc-settings-mgmt \
obmc-telemetry \
obmc-dmtf-pmci \
"
# The shadow recipe provides the binaries(like useradd, usermod) needed by the
# phosphor-user-manager.
ROOTFS_RO_UNNEEDED:remove = "shadow"
# We need to set overlayfs-etc so that the dropbear/openssh keys don't end up
# in a volatile file system, but we always have our own init that sets these
# up. Add enough bogus values here that rootfs-postcommands.bbclass does what
# we want without overlayfs-etc.bbclass messing things up.
OVERLAYFS_ETC_USE_ORIG_INIT_NAME="0"
OVERLAYFS_ETC_MOUNT_POINT = "/this/is/unused"
OVERLAYFS_ETC_FSTYPE = "not_a_fs_type"
OVERLAYFS_ETC_DEVICE = "/dev/null"
python create_overlayfs_etc_preinit:append() {
os.unlink(preinitPath)
}
@@ -0,0 +1,26 @@
DESCRIPTION = "Small image capable of booting a device. The kernel includes \
the Minimal RAM-based Initial Root Filesystem (initramfs), which finds the \
first 'init' program more efficiently."
LICENSE = "MIT"
# Needed for the set_user_group functions to succeed
DEPENDS += "shadow-native"
inherit core-image
export IMAGE_BASENAME = "obmc-phosphor-initramfs"
BAD_RECOMMENDATIONS += "busybox-syslog"
PACKAGE_INSTALL = "${VIRTUAL-RUNTIME_base-utils} base-passwd ${ROOTFS_BOOTSTRAP_INSTALL} ${INIT_PACKAGE}"
PACKAGE_INSTALL:remove = "shadow"
# Init scripts
INIT_PACKAGE = "obmc-phosphor-initfs"
INIT_PACKAGE:df-phosphor-mmc = "phosphor-mmc-init"
# Do not pollute the initrd image with rootfs features
IMAGE_FEATURES = "read-only-rootfs"
IMAGE_LINGUAS = ""
IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}"
IMAGE_ROOTFS_SIZE = "8192"
IMAGE_ROOTFS_EXTRA_SPACE = "0"
PACKAGE_EXCLUDE = "shadow"