The new version mainly supports: - Modify grub.cfg at OS boot time in EFI secure boot - Install multiple kernels to one image For details, in https://github.com/Wind-River/meta-lat the following commits are added: aad9f83 lat-installer: set default kernel and kernel param at OS install time 44a22e5 genimage: do not use real time kernel in installer OS for debian cb3542a genimage: support multiple kernels for debian 170df7d debian/ostree: support multiple kernels 8ec7c6a grub-efi: load kernel.env to choose which kernel to boot 88bcd8a grub-efi: support to modify grub.cfg at OS boot time 4e51daa mttyexec: fix no output to file 25e5d7d mttyexec: fix do_compile error eab4b48 genimage: search root in grub.cfg 5900abe wic: fix EFI of USB's ISO not detected on dell-9010 host 06e6b92 lat installer: add boot parameter efibootfirst=1 95f5d70 lat installer: insert a hook to report error log 5cec871 lat installer && mttyexec: save output of install 452350f lat installer: do not call dhcp for local kickstart 2004330 package-index bbappend: add missing depends task 9cdcb08 lat installer: improve kickstart hook position 9d341a8 lat installer: filter out installer ISO from prompt f7e9bef lat installer: do not install to disk of installer ISO image 774c067 lat installer: fix conflict of multiple installer ISO image Story: 2009964 Task: 45311 PASS - Rebuild LAT container PASS - Build ISO PASS - ISO install on Qemu, PXE EFI install on Edgeline e920t, edit grub.cfg Depends-On: https://review.opendev.org/c/starlingx/integ/+/841120 Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Change-Id: Id7f3c6272fdbf40ef87fc8aa512f152e12b4611f
65 lines
2.5 KiB
Docker
65 lines
2.5 KiB
Docker
# Copyright (c) 2021 Wind River Systems, Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
FROM debian:bullseye
|
|
|
|
MAINTAINER Chen Qi <Qi.Chen@windriver.com>
|
|
|
|
ARG LAT_BINARY_RESOURCE_PATH=http://mirror.starlingx.cengn.ca/mirror/lat-sdk/lat-sdk-20220508
|
|
|
|
# Install necessary packages
|
|
RUN apt-get -y update && apt-get --no-install-recommends -y install \
|
|
python3 \
|
|
xz-utils \
|
|
file \
|
|
bzip2 \
|
|
procps \
|
|
tini \
|
|
wget \
|
|
locales-all \
|
|
python3-yaml && \
|
|
apt-get clean && \
|
|
rm -rf /var/lib/apt/lists/* && \
|
|
mkdir -p /opt/LAT/SDK
|
|
|
|
# Insert pubkey of the package repository
|
|
COPY stx/toCOPY/builder/pubkey.rsa /opt/LAT/
|
|
|
|
# Prepare executables
|
|
COPY stx/toCOPY/lat-tool/lat/ /opt/LAT/lat
|
|
# Download & install LAT SDK.
|
|
RUN wget --quiet ${LAT_BINARY_RESOURCE_PATH}/lat-sdk.sh --output-document=/opt/LAT/AppSDK.sh && \
|
|
chmod +x /opt/LAT/AppSDK.sh && \
|
|
/opt/LAT/AppSDK.sh -d /opt/LAT/SDK -y && \
|
|
rm -f /opt/LAT/AppSDK.sh
|
|
|
|
# Fix: Use Debian CDN address for geo-frendly servers
|
|
RUN sed -i 's/ftp.cn.debian.org/deb.debian.org/g' /opt/LAT/SDK/sysroots/x86_64-wrlinuxsdk-linux/usr/lib/python3.10/site-packages/genimage/debian_constant.py
|
|
|
|
# Fix: Align DEFAULT_INITRD_NAME with our custom names
|
|
RUN sed -i 's/debian-initramfs-ostree-image/starlingx-initramfs-ostree-image/g' /opt/LAT/SDK/sysroots/x86_64-wrlinuxsdk-linux/usr/lib/python3.10/site-packages/genimage/debian_constant.py
|
|
|
|
# Fix: Align kernel with custom starlingx kernel
|
|
RUN sed -i 's/linux-image-amd64/linux-image-5.10.0-6-amd64-unsigned/g' /opt/LAT/SDK/sysroots/x86_64-wrlinuxsdk-linux/usr/lib/python3.10/site-packages/genimage/debian_constant.py
|
|
|
|
RUN sed -i 's/Wind River Linux Graphics development .* ostree/StarlingX ostree/g' /opt/LAT/SDK/sysroots/corei7-64-wrs-linux/boot/efi/EFI/BOOT/grub.cfg
|
|
|
|
# Add vimrc
|
|
RUN mkdir /etc/vim
|
|
COPY stx/toCOPY/common/vimrc.local /etc/vim/vimrc.local
|
|
RUN chmod 0644 /etc/vim/vimrc.local
|
|
|
|
ENTRYPOINT ["/usr/bin/tini", "--"]
|
|
CMD ["/opt/LAT/lat/latd"]
|