Git Product home page Git Product logo

coreos-overlay's Introduction

Overview

This overlay contains Container Linux specific packages and Gentoo packages that differ from their upstream Gentoo versions.

See the portage-stable repo for packages which do not have Container Linux specific changes.

Licensing information can be found in the respective files, so consult them directly. Most ebuilds are licensed under the GPL version 2.

Upstream Gentoo sources: https://gitweb.gentoo.org/repo/gentoo.git

Important packages

coreos-base/coreos is the package responsible for everything that gets built into a production image and is not OEM specific.

coreos-base/coreos-dev is the package responsible for everything that gets built into a developer image and is not OEM specific.

coreos-devel/sdk-depends is the package responsible for everything that gets built into the Container Linux SDK.

coreos-devel/board-packages is everything that could be built into a development or production image, plus any OEM specific packages.

coreos-base/oem-* are the OEM specific packages. They mostly install things that belong in the OEM partition. Any RDEPENDS from these packages should be copied to the RDEPENDS in board-packages to ensure they are built.

coreos-base/coreos-oem-* are metapackages for OEM specific ACIs.

Updating

To update follow the following steps:

  • Remove or rename the whole folder of the package to prepare the import from upstream Gentoo, not only resetting the ebuild file but also any additional files like patches or downstream additions under files.
  • Run ~/trunk/src/scripts/update_ebuilds --portage_stable . CATEGORY/PACKAGE in the coreos-overlay folder to import a new version from upstream Gentoo. Drop the ebuild files that you don't plan to use.
  • Commit the changes with a message like CATEGORY/PACKAGE: Sync from Gentoo, and mention the the commit ID in the body (git show update_ebuilds/master).
  • Now find all downstream patches for the package by running git log CATEGORY/PACKAGE. If everybody followed the process of resetting before importing an upstream update, you only have to look for the commits after the last update and port them to the new version. Otherwise you have to compare the files manually to their upstream versions from older portage revisions.
  • You can combine all old and new downstream patches into a single new commit with the message CATEGORY/PACKAGE: Apply Flatcar patches to keep the number of commits to port low, or have separate commits. Make sure that you explain the changes and carry the explanations from old commits over, either in the commit message, through comments in the ebuild file, or through a README.md in the folder.

coreos-overlay's People

Contributors

aaronlevy avatar ajeddeloh avatar andrejro avatar bcwaldon avatar bgilbert avatar carmstrong avatar crawford avatar csssuf avatar dm0- avatar euank avatar eyakubovich avatar glevand avatar gregkh avatar iaguis avatar jonboulle avatar krnowak avatar lucab avatar margamanterola avatar marineam avatar mischief avatar mjg59 avatar philips avatar polvi avatar pothos avatar sayanchowdhury avatar sdemos avatar steveej avatar t-lo avatar unclejack avatar vcaputo avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.