32216 Commits

Author SHA1 Message Date
Krzesimir Nowak
7fdaa4e6b1 pkg-auto: Code style changes
Mostly to avoid repeating variable names when declaring them and
initializing them.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:02:06 +02:00
Krzesimir Nowak
59c632de99 pkg-auto: Update docs of package handling functions
Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:02:05 +02:00
Krzesimir Nowak
93e5441f41 pkg-auto: Move and reword a comment
After the split off and adding jobs, the comment was bit outdated and
out of place, but still useful enough to keep it, but reword it and
move into a more relevant place.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:02:03 +02:00
Krzesimir Nowak
096a63239e pkg-auto: Run package handling in jobs
This spawns some jobs, where each is waiting for messages from main
process. The message can be either a number followed by the number of
packages to handle (a batch) or command to shut down when there is no
more packages left to process. On the other hand, job can send a
message to the main process that it is done with the batch and is
ready for the next one. Any other message is printed on the terminal
by the main process.

After the packages are processed, the main process will collect and
merge the job reports into the main one.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:02:02 +02:00
Krzesimir Nowak
1c3ce92dc5 pkg-auto: More printing of current actions
This is to fill the silent moment between report generation in SDKs
and the beginning of package updates handling. Also adds missing info
about handling non-package updates.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:02:00 +02:00
Krzesimir Nowak
a94b2a4264 pkg-auto: Split off handling of a package update
There is no functional change, other than the fact that the new
function now uses the bunch of maps to access some package
information. The split off inches us closer towards running the
package handling in multiple jobs.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:01:59 +02:00
Krzesimir Nowak
d3013c977d pkg-auto: Add a "bunch of maps" struct
The purpose of this struct is to collect all the information that is
needed for handling package updates in one place. It is not really
used right now, but when the package handling is split off into a
separate function, it will come in handy as we can then pass a couple
of parameters to the new function instead of many.

Also, in future the struct will grow, when we add ignoring irrelevant
information in summary stubs or license filtering.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:01:58 +02:00
Krzesimir Nowak
c4cd49319d pkg-auto: Drop unused functions
These functions were either inlined in those few (one?) place they
were used or just replaced.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:01:56 +02:00
Krzesimir Nowak
832d405b78 pkg-auto: Diff directories based on updates directory
This is a continuation of passing the explicit location of an output
directory instead of hardcoding `${REPORTS_DIR}`.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:01:55 +02:00
Krzesimir Nowak
26d9249f6a pkg-auto: Explicit location for package mentions in package handling
This is a step towards using different output directory in package
handling. This will be needed for the eventual package handling jobs
system, where each job has its own output directory.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:01:54 +02:00
Krzesimir Nowak
bcc52dda53 pkg-auto: Explicit location for non-ebuild diffs in package handling
This is a step towards using different output directory in package
handling. This will be needed for the eventual package handling jobs
system, where each job has its own output directory.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:01:52 +02:00
Krzesimir Nowak
3dfb17694b pkg-auto: Explicit location for full diffs in package handling
This is a step towards using different output directory in package
handling. This will be needed for the eventual package handling jobs
system, where each job has its own output directory.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:01:51 +02:00
Krzesimir Nowak
ca8c78c170 pkg-auto: Explicit location for summary stubs in package handling
This is a step towards using different output directory in package
handling. This will be needed for the eventual package handling jobs
system, where each job has its own output directory.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:01:49 +02:00
Krzesimir Nowak
f6a65c882d pkg-auto: Explicit location for changelog entry stubs in package handling
This is a step towards using different output directory in package
handling. This will be needed for the eventual package handling jobs
system, where each job has its own output directory.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:01:48 +02:00
Krzesimir Nowak
6a8c7651a7 pkg-auto: Explicit location for "developer warnings" in package handling
This is a step towards using different output directory in package
handling. This will be needed for the eventual package handling jobs
system, where each job has its own output directory.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:01:47 +02:00
Krzesimir Nowak
32d2b696c1 pkg-auto: Explicit location for "warnings" in package handling
This is a step towards using different output directory in package
handling. This will be needed for the eventual package handling jobs
system, where each job has its own output directory.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:01:45 +02:00
Krzesimir Nowak
7d060c90cb pkg-auto: Explicit location for "manual action needed" in package handling
This is a step towards using different output directory in package
handling. This will be needed for the eventual package handling jobs
system, where each job has its own output directory.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:01:44 +02:00
Krzesimir Nowak
1666d6b675 pkg-auto: Pass paths to handle_pkg_* functions instead of slots
The slots were only used to repeatedly generate the same path to a
directory where the package ebuild diff is saved. So instead, generate
the output paths somewhere in outer scope, put them into a struct and
pass that around. That means that:

- We pass one parameter less (a name of a struct instead of two
  slots).

- We can make it easier to change the output directory later (changing
  it in a function like update_dir or update_dir_non_slot may affect
  locations we didn't want to change, whereas changing the value in
  struct scopes the affected areas). This will come in handy later,
  when we put package update handling into jobs, where each job will
  have its own output directory.

This does not remove the repeated generation of the paths, but it is a
first step.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:01:43 +02:00
Krzesimir Nowak
5471c71745 pkg-auto: Move get_num_proc to util
This will come in handy for spawning jobs for handling package
updates. Since we don't want to spawn as many jobs as there are
packages, then limiting ourselves to the job count matching the
processor or core count sounds like a better idea.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:01:41 +02:00
Krzesimir Nowak
c05b96c4ec pkg-auto: Run emerge report generation in jobs
We can run report generation for old and new in parallel in two
separate processes. Ought to be a bit less of wait.

This is more or less straightforward parallelization, since there are
only two jobs running. The only thing that needs taking care of is
forwarding job's output to the terminal and handling job failures.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:01:40 +02:00
Krzesimir Nowak
0b68331b9a pkg-auto: Add a jobs library
The library will be used for running emerge report and package update
report generation in separate processes to make them faster.

I initially wanted to use the relatively unknown feature of bash named
coprocs, but it was an unfinished feature as of bash 5.2, so I decided
to write my own then.

The library is rather basic - allows to fork a subprocess that will
run some bash function, communicate with it using subprocesses'
standard input/output, and reap the subprocess.

Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
2025-08-27 16:01:34 +02:00
Krzesimir Nowak
2196326d26
Merge pull request #3174 from flatcar/buildbot/weekly-portage-stable-package-updates-2025-08-04
Weekly portage-stable package updates 2025-08-04
2025-08-27 11:53:47 +02:00
flatcar-ci
41b5592084 Revert failed version back to 4438.0.0+nightly-20250825-2100 2025-08-27 00:36:38 +00:00
flatcar-ci
d9c9e93e35 New version: main-4439.0.0-nightly-20250826-2100
Signed-off-by: flatcar-ci <infra+ci@flatcar-linux.org>
2025-08-26 21:00:30 +00:00
Mathieu Tortuyaux
5a39bec5f3
Merge pull request #3219 from flatcar/mantle-update-main
Upgrade mantle container image to latest HEAD in main
2025-08-26 15:06:19 +02:00
Flatcar Buildbot
eb8f44f8ec Update mantle container image to latest HEAD
Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org>
2025-08-25 21:00:42 +00:00
flatcar-ci
18bce2e982 New version: main-4438.0.0-nightly-20250825-2100
Signed-off-by: flatcar-ci <infra+ci@flatcar-linux.org>
2025-08-25 21:00:29 +00:00
Krzesimir Nowak
bdb20f15df overlay profiles: Disable mpfr for sys-apps/gawk
After the update, the USE=mpfr got enabled by default, so now we need
to disable it explicitly. Gawk is a part of our initrd, which means
that mpfr gets pulled into it now, increasing the size of it by
another 2mb, which breaks Flatcar updates.
2025-08-25 10:28:39 +02:00
Krzesimir Nowak
19478b7da4 overlay coreos/config: Apply the same overrides for old-nvidia-drivers 2025-08-25 10:28:39 +02:00
Krzesimir Nowak
7499fdf936 overlay profiles: Apply the same masks for old-nvidia-drivers 2025-08-25 10:28:39 +02:00
Krzesimir Nowak
bdfea9a341 build_library/extra_sysexts.sh: Use the x11-drivers/old-nvidia-drivers for 550 2025-08-25 10:28:39 +02:00
Krzesimir Nowak
b2b656ac32 overlay x11-drivers/old-nvidia-drivers: New package
Gentoo dropped the 550 branch of the drivers, so we fail to build the
nvidia-drivers-550 sysexts. For now we temporarily bring it back here
while we figure out our policy for deprecating and dropping sysexts.
2025-08-25 10:28:39 +02:00
Krzesimir Nowak
28eb01742d changelog: Add entries 2025-08-25 10:28:39 +02:00
Krzesimir Nowak
be79490ad5 overlay profiles: Add accept keywords for net-misc/curl 2025-08-25 10:28:39 +02:00
Krzesimir Nowak
4d93746d35 overlay x11-drivers/nvidia-drivers-service: Bump to 535.261.03 and 570.172.08 2025-08-25 10:28:39 +02:00
Krzesimir Nowak
0184f670d6 overlay profiles: Drop accept keywords for net-dns/bind 2025-08-25 10:28:39 +02:00
Flatcar Buildbot
3a55234041 licenses: Drop unused licenses 2025-08-25 10:28:39 +02:00
Flatcar Buildbot
c56daaf77a x11-drivers/nvidia-drivers: Sync with Gentoo
It's from Gentoo commit e8ae5a4833d0ae8eb6876253545bf9e81594f1c6.
2025-08-25 10:28:39 +02:00
Flatcar Buildbot
ad9de65283 virtual/service-manager: Sync with Gentoo
It's from Gentoo commit 10751ff148982a75a31935d345a47a3ba8057a3b.
2025-08-25 10:28:39 +02:00
Flatcar Buildbot
63b66ae311 virtual/resolvconf: Sync with Gentoo
It's from Gentoo commit 78bc19571bb7aafdcfef136e0f9212df781eec45.
2025-08-25 10:28:39 +02:00
Flatcar Buildbot
36431c7fe5 virtual/pkgconfig: Sync with Gentoo
It's from Gentoo commit 404727eda6b5c9fad544a9420ad4f6d7a56c926c.
2025-08-25 10:28:39 +02:00
Flatcar Buildbot
5e70275ede sys-process/lsof: Sync with Gentoo
It's from Gentoo commit 316817f80c23b8d6fab9f2fdd1986cfb46388516.
2025-08-25 10:28:39 +02:00
Flatcar Buildbot
6737d67111 sys-libs/libnvme: Sync with Gentoo
It's from Gentoo commit 07a4407a5c4b0cb7b6221f1866819c2faa9561c6.
2025-08-25 10:28:39 +02:00
Flatcar Buildbot
b9aff9ac05 sys-libs/glibc: Sync with Gentoo
It's from Gentoo commit 089ec116139a743587e77ecb62ceae94692642c0.
2025-08-25 10:28:39 +02:00
Flatcar Buildbot
8cbe592cff sys-libs/gdbm: Sync with Gentoo
It's from Gentoo commit d9904eedca75aef09bdc6036414ef81644f75505.
2025-08-25 10:28:39 +02:00
Flatcar Buildbot
7393d2ef5f sys-libs/binutils-libs: Sync with Gentoo
It's from Gentoo commit 41ac22ad581efdd9a431ff98a6fe63355938a654.
2025-08-25 10:28:39 +02:00
Flatcar Buildbot
5697a86cb5 sys-kernel/linux-headers: Sync with Gentoo
It's from Gentoo commit b764b57f11046580ee843664a5669ad08dc2fbe2.
2025-08-25 10:28:39 +02:00
Flatcar Buildbot
c2db17b46e sys-firmware/edk2-bin: Sync with Gentoo
It's from Gentoo commit f1ad17f8d49ec3cfe263ab94f9652e0a0af5d1b4.
2025-08-25 10:28:39 +02:00
Flatcar Buildbot
1d7501eff8 sys-devel/gnuconfig: Sync with Gentoo
It's from Gentoo commit 9c2ac27166873e185fccb4a15d5a54663e344e8f.
2025-08-25 10:28:39 +02:00
Flatcar Buildbot
bd9fc58e4e sys-devel/gcc: Sync with Gentoo
It's from Gentoo commit c739576d9ce4216783654adfd18c5302213e85e9.
2025-08-25 10:28:39 +02:00