Add a warning if installing on an end-of-life distro.
Review Request #14869 — Created March 4, 2026 and updated
Our installer still supports a variety of Linux distributions which are
end of life, no longer receiving updates. I wanted to remove that
support, but Christian argued that we shouldn't, so here's the new
approach: printing a big ol' warning.
- Ran unit tests.
- Did a few install tests to spot check that the choice whether to show
the warning was correct, and that it appeared visually nice.
| Summary | ID |
|---|---|
| mlumtrtwrytmvspmtltlwrpoysklrmtx |
| Description | From | Last Updated |
|---|---|---|
|
Since these aren't elifs, we should have a blank line between them. Or they could be elifs. That said, I … |
|
|
|
We never use this format anywhere else. |
|
|
|
This should go last in the class. Public before private. |
|
|
|
This is missing "Args". |
|
|
|
Maybe we could show the distro name and version so it's clear what we think we've seen, and to give … |
|
|
|
"Linux" |
|
|
|
"Linux" |
|
|
|
This can move to a global import. |
|
- Summary:
-
Remove outdated distros from the installer.Add a warning if installing on an end-of-life distro.
- Description:
-
~ This change removes distros that are end-of-life from the installer:
~ ~ - Amazon Linux 2
~ - CentOS 8
~ Our installer still supports a variety of Linux distributions which are
~ end of life, no longer receiving updates. I wanted to remove that ~ support, but Christian argued that we shouldn't, so here's the new ~ approach: printing a big ol' warning. - - Debian 10
- - Fedora 36-39
- - Ubuntu 18.04 and 23.10
- - I haven't removed openSUSE Leap 15 because that's technically under
- maintenance until the end of April. I'm open to getting rid of - it too. - - This also adds in some missing tests for Debian 13.
- Testing Done:
-
- Ran unit tests.
~ - Ran install tests (limited to arm64 for this particular change, and
there are some existing errors for some of the "latest" images which
will be addressed in a future change).
~ - Did a few install tests to spot check that the choice whether to show
the warning was correct, and that it appeared visually nice.
- Commits:
-
Summary ID pplvtvyxzusqpqwzpolplouyvuuxxnuy szkrzznwukpsnpszmokmuuwynzlsvxvr
Checks run (2 succeeded)
-
-
Since these aren't elifs, we should have a blank line between them. Or they could be elifs.
That said, I don't love keeping EOL logic embedded in code here. I'd much rather we have a table that can provide this information in
distro_info.py.I know the Ubuntu logic is doing math to try to infer a LTS release, and that's valid with their versioning constraints, but I think for support purposes that we should be explicit. Something like:
DISTRO_SUPPORT = { 'amzn': { 'name': 'Amazon Linux', 'is_supported': match_version(2, op=operator.gte), 'is_lts': ..., }, ... }Something along those lines.
One of the things I want to think about with this sort of notice is what we do when (not if) we miss EOL dates and fall behind. For distros where there are scheduled support timeframes, an option may be to include a field mapping versions to EOL dates, and if present, we could prioritize that and include the date. Mostly just a food for thought at this point, but we have to include the fall-behind factor.
-
-
-
-
Maybe we could show the distro name and version so it's clear what we think we've seen, and to give them that information.
- Commits:
-
Summary ID szkrzznwukpsnpszmokmuuwynzlsvxvr mlumtrtwrytmvspmtltlwrpoysklrmtx
Checks run (2 succeeded)
- Change Summary:
-
Simplify fedora list.
- Commits:
-
Summary ID mlumtrtwrytmvspmtltlwrpoysklrmtx mlumtrtwrytmvspmtltlwrpoysklrmtx
Checks run (2 succeeded)
- Commits:
-
Summary ID mlumtrtwrytmvspmtltlwrpoysklrmtx mlumtrtwrytmvspmtltlwrpoysklrmtx
Checks run (2 succeeded)
- Change Summary:
-
Typo
- Commits:
-
Summary ID mlumtrtwrytmvspmtltlwrpoysklrmtx mlumtrtwrytmvspmtltlwrpoysklrmtx