====== CIP Core project ====== ===== Regular meetings ===== [[https://wiki.linuxfoundation.org/civilinfrastructureplatform/cip-core-meetings|CIP core meetings]] ===== Overview ===== The Civil Infrastructure Platform (CIP) project aims to provide an open-source base layer (OSBL) for embedded systems that require super long-term support (SLTS). OSBL is composed of the [[https://wiki.linuxfoundation.org/civilinfrastructureplatform/cipkernelmaintenance|CIP kernel]] source code, and the CIP Core source packages. CIP Core source packages are a list of Debian Long Term Support (LTS) source packages that members of the CIP project consider important and want to [[https://www.freexian.com/services/debian-lts.html|sponsor]]. CIP core has two profiles: * The tiny profile is built from Debian source code and is useful for devices with storage restrictions, extreme performance and flexibility requirements, and low-complexity applications. * The generic profile is built from Debian binary packages and covers devices that require more functionality, have less performance and flexibility requirements, and more storage. The CIP Core project provides example filesystem images using available build and image generation tools. Currently, we are using [[https://github.com/meta-debian/|meta-debian]] for Deby, and [[https://github.com/ilbers/isar|ISAR]] for isar-cip-core. However, we are open to the submission of new reference implementations using other build tools (e.g. Debos). * [[https://gitlab.com/cip-project/cip-core/deby|Deby]]: tiny profile * [[https://gitlab.com/cip-project/cip-core/isar-cip-core|isar-cip-core]]: generic profile The main goals of CIP Core are: * Contribute to the sponsoring and testing of Debian LTS * Serve as a reference base from which users can develop their OS images * Serve as a reference implementation on important topics such as software updates, security standards, or real-time. * Provide file systems for testing on the [[https://wiki.linuxfoundation.org/civilinfrastructureplatform/ciptesting/cipreferencehardware|CIP reference hardware]] boards using [[https://lava.ciplatform.org/|LAVA]]. {{:civilinfrastructureplatform:whole-picture.png}} {{:civilinfrastructureplatform:minimum-base-system.png}} ===== Package list ===== The list of CIP Core packages and the process to add or remove packages is described [[https://gitlab.com/cip-project/cip-core/cip-pkglist|here]]. ===== Deby ===== [[https://gitlab.com/cip-project/cip-core/deby|Deby]] is built with poky and [[https://github.com/meta-debian/meta-debian|meta-debian]], a layer for the poky build system that allows cross-building file system images from Debian source packages (see [[http://elinux.org/images/9/96/ELCE2016_Hayashi_Deby.pdf|Deby slides pdf]]). Deby does not use Yocto/OE source code. {{:civilinfrastructureplatform:deby.png}} ==== ISAR-CIP-Core ==== [[https://gitlab.com/cip-project/cip-core/isar-cip-core|ISAR-CIP-Core]] is a reference implementation of the generic profile and uses [[https://github.com/ilbers/isar|ISAR]]. ISAR uses bitbake to generate the filesystem image by reusing Debian binaries and rebuilding packages that need modifications for the target board (see [[https://events19.linuxfoundation.org/wp-content/uploads/2018/07/isar-ossj2019-7.pdf|ISAR slides pdf]]). {{:civilinfrastructureplatform:isar-elbe.png}} ===== Reproducible Builds ===== CIP Core WG aims to make the CIP Core images reproducible. See the [[https://wiki.linuxfoundation.org/civilinfrastructureplatform/reproducible-builds|Reproducible Builds]] page for more details about CIP's activities for this topic.