We do specify -split-usr in make.defaults for the USE variable but
it's not enough - the base profile in portage-stable forces this flag
and this overrides our defaults. As a workaround, we were using
package.use.force to force-disable split-usr for selected
packages. Now, with addition of more split-usr-using packages in
app-alternatives the list in package.use.force would grow. Instead of
listing all the packages having split-usr in their IUSE, use the
use.force and use.mask file to unforce and mask split-usr for all
packages in generic images.
As a bonus, this also allows us to drop a customization we did in
sys-apps/policycoreutils package.
This is to fix the following error during stage2 SDK build:
[[ (3/3) Emerging packages ]]
!!! The ebuild selected to satisfy "app-alternatives/yacc" has unmet requirements.
- app-alternatives/yacc-1-r2::portage-stable USE="-bison -byacc -reference"
The following REQUIRED_USE flag constraints are unsatisfied:
exactly-one-of ( bison byacc reference )
(dependency required by "sys-devel/binutils-2.39-r4::portage-stable" [ebuild])
(dependency required by "sys-devel/gcc-11.3.1_p20221209::portage-stable" [ebuild])
(dependency required by "sys-libs/glibc-2.36-r5::coreos" [ebuild])
(dependency required by "sys-libs/glibc:2.2" [argument])
- Carry over our custom tmpfiles and securetty files
- Remove /etc files and install them to /usr, use tmpfiles
- Switch /etc/login.defs edits to /usr/share/shadow/login.defs
- Drop moving passwd out of /usr since we don't have split-usr
- Drop pkg_postinst
As the Gentoo ebuild of dev-lang/rust >= 1.66.0 keeps workaround that
explicitly checks for a version like 1.66.0, that ebuild would obviously
make the build fail with 1.66.1.
Update the version from 1.66.0 to 1.66.1 to fix the build.
Every dev-lang/rust ebuild does a specific check if PV is the version,
e.g.:
if [[ "${PV}" == 1.66.1 ]]; then,
So it is needed to replace the hard-coded version with the new version.
This pulls in
https://github.com/flatcar/bootengine/pull/50
to select the active sysext images for OEMs or Flatcar extensions
that are coupled to the OS version. Systemd 252 is needed for the
sysext images to load without error because earlier systemd versions
were too strict about the final filename target name of a symlink.
Apply Flatcar modifications.
Unlike python <= 3.9.12, it is now unnecessary to replace virtual/awk
with app-alternatives/awk, because the upstream python ebuild already
has app-alternatives/awk.
Based on 32b448f8ccbf5f814739f834151803532272b1f9.
Add an ebuild phase hook that runs when pkg_postinst is about to be
executed. The hook sets up the environment for acct-user packages to
avoid modifications of the preexisting users - these are provided by
our baselayout and usermod can't change anything there anyway (it
complains that the user is not in /etc/passwd).