summaryrefslogtreecommitdiff
path: root/profiles
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-06-01 00:07:06 +0100
committerV3n3RiX <venerix@koprulu.sector>2024-06-01 00:07:06 +0100
commit1551fe56fd6ba43a94509cffc61b6bf854b7ac9f (patch)
treebe99b6ceb874878a108d68c641b476a2df076517 /profiles
parent0e2a727aba684f1a44cc0402a3f77d242140681b (diff)
gentoo auto-resync : 01:06:2024 - 00:07:06
Diffstat (limited to 'profiles')
-rw-r--r--profiles/Manifest.gzbin205429 -> 218617 bytes
-rw-r--r--profiles/arch/amd64/x32/package.mask1
-rw-r--r--profiles/arch/amd64/x32/package.use.mask2
-rw-r--r--profiles/base/package.use7
-rw-r--r--profiles/default/linux/alpha/17.0/deprecated104
-rw-r--r--profiles/default/linux/alpha/17.0/desktop/deprecated104
-rw-r--r--profiles/default/linux/alpha/17.0/desktop/gnome/deprecated104
-rw-r--r--profiles/default/linux/alpha/17.0/desktop/gnome/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/alpha/17.0/developer/deprecated104
-rw-r--r--profiles/default/linux/alpha/17.0/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.0/x32/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.0/x32/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/clang/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/desktop/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/desktop/gnome/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/desktop/gnome/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/desktop/plasma/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/desktop/plasma/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/desktop/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/developer/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/hardened/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/hardened/selinux/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/no-multilib/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/no-multilib/hardened/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/no-multilib/hardened/selinux/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/no-multilib/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/no-multilib/systemd/selinux/deprecated33
-rw-r--r--profiles/default/linux/amd64/17.1/no-multilib/systemd/selinux/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/selinux/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/systemd/clang/deprecated33
-rw-r--r--profiles/default/linux/amd64/17.1/systemd/clang/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/amd64/17.1/systemd/selinux/deprecated33
-rw-r--r--profiles/default/linux/amd64/17.1/systemd/selinux/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv4/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv4/desktop/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv4/desktop/gnome/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv4/desktop/plasma/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv4/developer/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv4t/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv4t/desktop/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv4t/desktop/gnome/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv4t/desktop/plasma/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv4t/developer/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv4t/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv5te/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv5te/desktop/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv5te/desktop/gnome/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv5te/desktop/plasma/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv5te/developer/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv5te/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv6j/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv6j/desktop/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv6j/desktop/gnome/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv6j/desktop/plasma/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv6j/developer/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv6j/hardened/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv6j/hardened/selinux/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv6j/selinux/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv6j/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv7a/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv7a/desktop/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv7a/desktop/gnome/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv7a/desktop/gnome/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv7a/desktop/plasma/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv7a/desktop/plasma/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv7a/developer/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv7a/hardened/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv7a/hardened/selinux/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/armv7a/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/desktop/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/desktop/gnome/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/desktop/gnome/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/desktop/plasma/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/desktop/plasma/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/arm/17.0/developer/deprecated104
-rw-r--r--profiles/default/linux/arm64/17.0/big-endian/deprecated104
-rw-r--r--profiles/default/linux/arm64/17.0/big-endian/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/arm64/17.0/deprecated104
-rw-r--r--profiles/default/linux/arm64/17.0/desktop/deprecated104
-rw-r--r--profiles/default/linux/arm64/17.0/desktop/gnome/deprecated104
-rw-r--r--profiles/default/linux/arm64/17.0/desktop/gnome/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/arm64/17.0/desktop/plasma/deprecated104
-rw-r--r--profiles/default/linux/arm64/17.0/desktop/plasma/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/arm64/17.0/desktop/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/arm64/17.0/developer/deprecated104
-rw-r--r--profiles/default/linux/arm64/17.0/hardened/deprecated104
-rw-r--r--profiles/default/linux/arm64/17.0/hardened/selinux/deprecated104
-rw-r--r--profiles/default/linux/arm64/17.0/llvm/deprecated104
-rw-r--r--profiles/default/linux/arm64/17.0/systemd/llvm/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/arm64/17.0/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/arm64/17.0/systemd/selinux/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/hppa/17.0/deprecated104
-rw-r--r--profiles/default/linux/hppa/17.0/desktop/deprecated104
-rw-r--r--profiles/default/linux/hppa/17.0/developer/deprecated104
-rw-r--r--profiles/default/linux/hppa/17.0/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/ia64/17.0/deprecated104
-rw-r--r--profiles/default/linux/ia64/17.0/desktop/deprecated104
-rw-r--r--profiles/default/linux/ia64/17.0/desktop/gnome/deprecated104
-rw-r--r--profiles/default/linux/ia64/17.0/desktop/gnome/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/ia64/17.0/developer/deprecated104
-rw-r--r--profiles/default/linux/ia64/17.0/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/loong/22.0/la64v100/lp64d/deprecated104
-rw-r--r--profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/deprecated104
-rw-r--r--profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/gnome/deprecated104
-rw-r--r--profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/gnome/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/plasma/deprecated104
-rw-r--r--profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/plasma/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/loong/22.0/la64v100/lp64d/developer/deprecated104
-rw-r--r--profiles/default/linux/loong/22.0/la64v100/lp64d/systemd/merged-usr/deprecated104
-rw-r--r--profiles/default/linux/m68k/17.0/deprecated104
-rw-r--r--profiles/default/linux/m68k/17.0/systemd/merged-usr/deprecated104
-rw-r--r--profiles/features/musl/package.use.mask5
-rw-r--r--profiles/package.mask80
-rw-r--r--profiles/targets/desktop/package.use.force7
-rw-r--r--profiles/updates/2Q-20241
-rw-r--r--profiles/use.local.desc7
120 files changed, 11364 insertions, 77 deletions
diff --git a/profiles/Manifest.gz b/profiles/Manifest.gz
index e2e0025f1907..57d541adc197 100644
--- a/profiles/Manifest.gz
+++ b/profiles/Manifest.gz
Binary files differ
diff --git a/profiles/arch/amd64/x32/package.mask b/profiles/arch/amd64/x32/package.mask
index 4a4c909dff25..368e78393fa7 100644
--- a/profiles/arch/amd64/x32/package.mask
+++ b/profiles/arch/amd64/x32/package.mask
@@ -132,7 +132,6 @@ kde-misc/zanshin
media-gfx/digikam
media-gfx/luminance-hdr
>=media-gfx/skanpage-24.04.90
->=media-sound/audex-24.04.90
media-sound/frescobaldi
media-sound/teamspeak-client:3
media-video/vidify
diff --git a/profiles/arch/amd64/x32/package.use.mask b/profiles/arch/amd64/x32/package.use.mask
index f2bd50f466a2..96f324fe9614 100644
--- a/profiles/arch/amd64/x32/package.use.mask
+++ b/profiles/arch/amd64/x32/package.use.mask
@@ -24,7 +24,7 @@ dev-python/iminuit test
dev-python/nbdime test
dev-python/nbclient test
dev-python/nbconvert test
-dev-python/qiskit-terra visualization
+dev-python/qiskit visualization
sci-mathematics/cadabra jupyter
sci-mathematics/yacas jupyter
sci-physics/hepmc root
diff --git a/profiles/base/package.use b/profiles/base/package.use
index cf646b56fb24..96701b3e118b 100644
--- a/profiles/base/package.use
+++ b/profiles/base/package.use
@@ -1,6 +1,13 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Andreas Sturmlechner <asturm@gentoo.org> (2024-05-30)
+# Only up to python 3.11 supported, bug #929546
+<dev-util/kdevelop-python-24.07.50:5 python_single_target_python3_11
+~www-client/falkon-23.08.5 python_single_target_python3_11
+dev-python/pyside2 python_targets_python3_11
+dev-python/shiboken2 python_targets_python3_11
+
# Arthur Zamarin <arthurzam@gentoo.org> (2024-03-23)
# Used by pkgcheck, so let's make it easier for all developers to install it
>=dev-libs/tree-sitter-bash-0.21.0 python
diff --git a/profiles/default/linux/alpha/17.0/deprecated b/profiles/default/linux/alpha/17.0/deprecated
new file mode 100644
index 000000000000..3cee56363026
--- /dev/null
+++ b/profiles/default/linux/alpha/17.0/deprecated
@@ -0,0 +1,104 @@
+default/linux/alpha/23.0/split-usr
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/alpha/17.0/desktop/deprecated b/profiles/default/linux/alpha/17.0/desktop/deprecated
new file mode 100644
index 000000000000..5250cf03f640
--- /dev/null
+++ b/profiles/default/linux/alpha/17.0/desktop/deprecated
@@ -0,0 +1,104 @@
+default/linux/alpha/23.0/split-usr/desktop
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/alpha/17.0/desktop/gnome/deprecated b/profiles/default/linux/alpha/17.0/desktop/gnome/deprecated
new file mode 100644
index 000000000000..9a079e68bef3
--- /dev/null
+++ b/profiles/default/linux/alpha/17.0/desktop/gnome/deprecated
@@ -0,0 +1,104 @@
+default/linux/alpha/23.0/split-usr/desktop/gnome
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/alpha/17.0/desktop/gnome/systemd/merged-usr/deprecated b/profiles/default/linux/alpha/17.0/desktop/gnome/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..eca25d7adc43
--- /dev/null
+++ b/profiles/default/linux/alpha/17.0/desktop/gnome/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/alpha/23.0/desktop/gnome/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/alpha/17.0/developer/deprecated b/profiles/default/linux/alpha/17.0/developer/deprecated
new file mode 100644
index 000000000000..3cee56363026
--- /dev/null
+++ b/profiles/default/linux/alpha/17.0/developer/deprecated
@@ -0,0 +1,104 @@
+default/linux/alpha/23.0/split-usr
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/alpha/17.0/systemd/merged-usr/deprecated b/profiles/default/linux/alpha/17.0/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..217bbccd2dac
--- /dev/null
+++ b/profiles/default/linux/alpha/17.0/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/alpha/23.0/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.0/x32/deprecated b/profiles/default/linux/amd64/17.0/x32/deprecated
new file mode 100644
index 000000000000..69d1807d0750
--- /dev/null
+++ b/profiles/default/linux/amd64/17.0/x32/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/split-usr/x32
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.0/x32/systemd/merged-usr/deprecated b/profiles/default/linux/amd64/17.0/x32/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..1b330827394f
--- /dev/null
+++ b/profiles/default/linux/amd64/17.0/x32/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/x32/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/clang/deprecated b/profiles/default/linux/amd64/17.1/clang/deprecated
new file mode 100644
index 000000000000..1087d3e33977
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/clang/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/split-usr/llvm
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/deprecated b/profiles/default/linux/amd64/17.1/deprecated
new file mode 100644
index 000000000000..1dfba2cdb1f0
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/split-usr
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/desktop/deprecated b/profiles/default/linux/amd64/17.1/desktop/deprecated
new file mode 100644
index 000000000000..04b8c3bd66fd
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/desktop/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/split-usr/desktop
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/desktop/gnome/deprecated b/profiles/default/linux/amd64/17.1/desktop/gnome/deprecated
new file mode 100644
index 000000000000..2b8cce7ee0eb
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/desktop/gnome/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/split-usr/desktop/gnome
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/desktop/gnome/systemd/merged-usr/deprecated b/profiles/default/linux/amd64/17.1/desktop/gnome/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..bb2fc8dfd7fa
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/desktop/gnome/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/desktop/gnome/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/desktop/plasma/deprecated b/profiles/default/linux/amd64/17.1/desktop/plasma/deprecated
new file mode 100644
index 000000000000..e0f4c8a25372
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/desktop/plasma/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/split-usr/desktop/plasma
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/desktop/plasma/systemd/merged-usr/deprecated b/profiles/default/linux/amd64/17.1/desktop/plasma/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..1a027e1ea361
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/desktop/plasma/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/desktop/plasma/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/desktop/systemd/merged-usr/deprecated b/profiles/default/linux/amd64/17.1/desktop/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..f8443e5de5a9
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/desktop/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/desktop/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/developer/deprecated b/profiles/default/linux/amd64/17.1/developer/deprecated
new file mode 100644
index 000000000000..1dfba2cdb1f0
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/developer/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/split-usr
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/hardened/deprecated b/profiles/default/linux/amd64/17.1/hardened/deprecated
new file mode 100644
index 000000000000..f1d39a57a31e
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/hardened/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/split-usr/hardened
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/hardened/selinux/deprecated b/profiles/default/linux/amd64/17.1/hardened/selinux/deprecated
new file mode 100644
index 000000000000..3996638f2a19
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/hardened/selinux/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/split-usr/hardened/selinux
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/no-multilib/deprecated b/profiles/default/linux/amd64/17.1/no-multilib/deprecated
new file mode 100644
index 000000000000..33a1cf4ea272
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/no-multilib/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/split-usr/no-multilib
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/no-multilib/hardened/deprecated b/profiles/default/linux/amd64/17.1/no-multilib/hardened/deprecated
new file mode 100644
index 000000000000..7f6226b8021b
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/no-multilib/hardened/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/split-usr/no-multilib/hardened
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/no-multilib/hardened/selinux/deprecated b/profiles/default/linux/amd64/17.1/no-multilib/hardened/selinux/deprecated
new file mode 100644
index 000000000000..55b586baed3c
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/no-multilib/hardened/selinux/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/split-usr/no-multilib/hardened/selinux
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/no-multilib/systemd/merged-usr/deprecated b/profiles/default/linux/amd64/17.1/no-multilib/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..5dffabddd095
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/no-multilib/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/no-multilib/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/no-multilib/systemd/selinux/deprecated b/profiles/default/linux/amd64/17.1/no-multilib/systemd/selinux/deprecated
new file mode 100644
index 000000000000..0a7d7473d192
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/no-multilib/systemd/selinux/deprecated
@@ -0,0 +1,33 @@
+default/linux/amd64/17.1/no-multilib/systemd/selinux/merged-usr
+
+As warned about previously in a news item, systemd-255 has dropped
+support for split-usr systems. All Gentoo systems running systemd will
+need to be migrated to merged-usr.
+
+Migrating to merged-usr will move all data from /bin, /sbin, and /lib
+into the /usr/bin and /usr/lib directories. The directories in / are
+replaced with symlinks.
+
+To facilitate this, a new set of sub-profiles has been created, and a
+script is available to perform the actual migration.
+
+To migrate a system to merged-usr, follow this procedure:
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+
+2. Install sys-apps/merge-usr.
+
+3. Run "merge-usr --dryrun" as root to check for conflicts. These will
+ appear with the word ERROR at the start of the line.
+
+4. Resolve any conflicts. This may involve deleting duplicate files. If
+ in doubt, seek support in a Gentoo support channel.
+
+5. Run the merge-usr script from a root shell. Avoid running it via sudo
+ directly to avoid locking yourself out if an unexpected error occurs.
+
+6. Switch to a merged-usr profile.
+
+7. Run emerge with the --newuse or --changed-use option to rebuild
+ any packages that have a "split-usr" USE flag.
diff --git a/profiles/default/linux/amd64/17.1/no-multilib/systemd/selinux/merged-usr/deprecated b/profiles/default/linux/amd64/17.1/no-multilib/systemd/selinux/merged-usr/deprecated
new file mode 100644
index 000000000000..ca932ac65f68
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/no-multilib/systemd/selinux/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/no-multilib/hardened/selinux/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/selinux/deprecated b/profiles/default/linux/amd64/17.1/selinux/deprecated
new file mode 100644
index 000000000000..3996638f2a19
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/selinux/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/split-usr/hardened/selinux
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/systemd/clang/deprecated b/profiles/default/linux/amd64/17.1/systemd/clang/deprecated
new file mode 100644
index 000000000000..e5a3dd1d758e
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/systemd/clang/deprecated
@@ -0,0 +1,33 @@
+default/linux/amd64/17.1/systemd/clang/merged-usr
+
+As warned about previously in a news item, systemd-255 has dropped
+support for split-usr systems. All Gentoo systems running systemd will
+need to be migrated to merged-usr.
+
+Migrating to merged-usr will move all data from /bin, /sbin, and /lib
+into the /usr/bin and /usr/lib directories. The directories in / are
+replaced with symlinks.
+
+To facilitate this, a new set of sub-profiles has been created, and a
+script is available to perform the actual migration.
+
+To migrate a system to merged-usr, follow this procedure:
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+
+2. Install sys-apps/merge-usr.
+
+3. Run "merge-usr --dryrun" as root to check for conflicts. These will
+ appear with the word ERROR at the start of the line.
+
+4. Resolve any conflicts. This may involve deleting duplicate files. If
+ in doubt, seek support in a Gentoo support channel.
+
+5. Run the merge-usr script from a root shell. Avoid running it via sudo
+ directly to avoid locking yourself out if an unexpected error occurs.
+
+6. Switch to a merged-usr profile.
+
+7. Run emerge with the --newuse or --changed-use option to rebuild
+ any packages that have a "split-usr" USE flag.
diff --git a/profiles/default/linux/amd64/17.1/systemd/clang/merged-usr/deprecated b/profiles/default/linux/amd64/17.1/systemd/clang/merged-usr/deprecated
new file mode 100644
index 000000000000..aa61cab28ddc
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/systemd/clang/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/llvm/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/systemd/merged-usr/deprecated b/profiles/default/linux/amd64/17.1/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..0da73aecf99a
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/amd64/17.1/systemd/selinux/deprecated b/profiles/default/linux/amd64/17.1/systemd/selinux/deprecated
new file mode 100644
index 000000000000..736342a22121
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/systemd/selinux/deprecated
@@ -0,0 +1,33 @@
+default/linux/amd64/17.1/systemd/selinux/merged-usr
+
+As warned about previously in a news item, systemd-255 has dropped
+support for split-usr systems. All Gentoo systems running systemd will
+need to be migrated to merged-usr.
+
+Migrating to merged-usr will move all data from /bin, /sbin, and /lib
+into the /usr/bin and /usr/lib directories. The directories in / are
+replaced with symlinks.
+
+To facilitate this, a new set of sub-profiles has been created, and a
+script is available to perform the actual migration.
+
+To migrate a system to merged-usr, follow this procedure:
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+
+2. Install sys-apps/merge-usr.
+
+3. Run "merge-usr --dryrun" as root to check for conflicts. These will
+ appear with the word ERROR at the start of the line.
+
+4. Resolve any conflicts. This may involve deleting duplicate files. If
+ in doubt, seek support in a Gentoo support channel.
+
+5. Run the merge-usr script from a root shell. Avoid running it via sudo
+ directly to avoid locking yourself out if an unexpected error occurs.
+
+6. Switch to a merged-usr profile.
+
+7. Run emerge with the --newuse or --changed-use option to rebuild
+ any packages that have a "split-usr" USE flag.
diff --git a/profiles/default/linux/amd64/17.1/systemd/selinux/merged-usr/deprecated b/profiles/default/linux/amd64/17.1/systemd/selinux/merged-usr/deprecated
new file mode 100644
index 000000000000..e0853bb8ea72
--- /dev/null
+++ b/profiles/default/linux/amd64/17.1/systemd/selinux/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/amd64/23.0/hardened/selinux/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv4/deprecated b/profiles/default/linux/arm/17.0/armv4/deprecated
new file mode 100644
index 000000000000..45b5c52341c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv4/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/armv4
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv4/desktop/deprecated b/profiles/default/linux/arm/17.0/armv4/desktop/deprecated
new file mode 100644
index 000000000000..45b5c52341c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv4/desktop/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/armv4
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv4/desktop/gnome/deprecated b/profiles/default/linux/arm/17.0/armv4/desktop/gnome/deprecated
new file mode 100644
index 000000000000..45b5c52341c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv4/desktop/gnome/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/armv4
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv4/desktop/plasma/deprecated b/profiles/default/linux/arm/17.0/armv4/desktop/plasma/deprecated
new file mode 100644
index 000000000000..45b5c52341c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv4/desktop/plasma/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/armv4
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv4/developer/deprecated b/profiles/default/linux/arm/17.0/armv4/developer/deprecated
new file mode 100644
index 000000000000..45b5c52341c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv4/developer/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/armv4
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv4t/deprecated b/profiles/default/linux/arm/17.0/armv4t/deprecated
new file mode 100644
index 000000000000..97e893728d18
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv4t/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/armv4t
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv4t/desktop/deprecated b/profiles/default/linux/arm/17.0/armv4t/desktop/deprecated
new file mode 100644
index 000000000000..97e893728d18
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv4t/desktop/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/armv4t
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv4t/desktop/gnome/deprecated b/profiles/default/linux/arm/17.0/armv4t/desktop/gnome/deprecated
new file mode 100644
index 000000000000..97e893728d18
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv4t/desktop/gnome/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/armv4t
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv4t/desktop/plasma/deprecated b/profiles/default/linux/arm/17.0/armv4t/desktop/plasma/deprecated
new file mode 100644
index 000000000000..97e893728d18
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv4t/desktop/plasma/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/armv4t
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv4t/developer/deprecated b/profiles/default/linux/arm/17.0/armv4t/developer/deprecated
new file mode 100644
index 000000000000..97e893728d18
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv4t/developer/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/armv4t
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv4t/systemd/merged-usr/deprecated b/profiles/default/linux/arm/17.0/armv4t/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..39e9ddab5c5d
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv4t/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/armv4t/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv5te/deprecated b/profiles/default/linux/arm/17.0/armv5te/deprecated
new file mode 100644
index 000000000000..021c24a339ac
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv5te/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/armv5te
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv5te/desktop/deprecated b/profiles/default/linux/arm/17.0/armv5te/desktop/deprecated
new file mode 100644
index 000000000000..021c24a339ac
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv5te/desktop/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/armv5te
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv5te/desktop/gnome/deprecated b/profiles/default/linux/arm/17.0/armv5te/desktop/gnome/deprecated
new file mode 100644
index 000000000000..021c24a339ac
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv5te/desktop/gnome/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/armv5te
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv5te/desktop/plasma/deprecated b/profiles/default/linux/arm/17.0/armv5te/desktop/plasma/deprecated
new file mode 100644
index 000000000000..021c24a339ac
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv5te/desktop/plasma/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/armv5te
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv5te/developer/deprecated b/profiles/default/linux/arm/17.0/armv5te/developer/deprecated
new file mode 100644
index 000000000000..021c24a339ac
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv5te/developer/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/armv5te
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv5te/systemd/merged-usr/deprecated b/profiles/default/linux/arm/17.0/armv5te/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..7721e0101edb
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv5te/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/armv5te/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv6j/deprecated b/profiles/default/linux/arm/17.0/armv6j/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv6j/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv6j/desktop/deprecated b/profiles/default/linux/arm/17.0/armv6j/desktop/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv6j/desktop/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv6j/desktop/gnome/deprecated b/profiles/default/linux/arm/17.0/armv6j/desktop/gnome/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv6j/desktop/gnome/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv6j/desktop/plasma/deprecated b/profiles/default/linux/arm/17.0/armv6j/desktop/plasma/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv6j/desktop/plasma/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv6j/developer/deprecated b/profiles/default/linux/arm/17.0/armv6j/developer/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv6j/developer/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv6j/hardened/deprecated b/profiles/default/linux/arm/17.0/armv6j/hardened/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv6j/hardened/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv6j/hardened/selinux/deprecated b/profiles/default/linux/arm/17.0/armv6j/hardened/selinux/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv6j/hardened/selinux/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv6j/selinux/deprecated b/profiles/default/linux/arm/17.0/armv6j/selinux/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv6j/selinux/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv6j/systemd/merged-usr/deprecated b/profiles/default/linux/arm/17.0/armv6j/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv6j/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv7a/deprecated b/profiles/default/linux/arm/17.0/armv7a/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv7a/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv7a/desktop/deprecated b/profiles/default/linux/arm/17.0/armv7a/desktop/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv7a/desktop/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv7a/desktop/gnome/deprecated b/profiles/default/linux/arm/17.0/armv7a/desktop/gnome/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv7a/desktop/gnome/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv7a/desktop/gnome/systemd/merged-usr/deprecated b/profiles/default/linux/arm/17.0/armv7a/desktop/gnome/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv7a/desktop/gnome/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv7a/desktop/plasma/deprecated b/profiles/default/linux/arm/17.0/armv7a/desktop/plasma/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv7a/desktop/plasma/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv7a/desktop/plasma/systemd/merged-usr/deprecated b/profiles/default/linux/arm/17.0/armv7a/desktop/plasma/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv7a/desktop/plasma/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv7a/developer/deprecated b/profiles/default/linux/arm/17.0/armv7a/developer/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv7a/developer/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv7a/hardened/deprecated b/profiles/default/linux/arm/17.0/armv7a/hardened/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv7a/hardened/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv7a/hardened/selinux/deprecated b/profiles/default/linux/arm/17.0/armv7a/hardened/selinux/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv7a/hardened/selinux/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/armv7a/systemd/merged-usr/deprecated b/profiles/default/linux/arm/17.0/armv7a/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/armv7a/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/deprecated b/profiles/default/linux/arm/17.0/deprecated
new file mode 100644
index 000000000000..ebd06e20749f
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/desktop/deprecated b/profiles/default/linux/arm/17.0/desktop/deprecated
new file mode 100644
index 000000000000..b65e6c8df8d5
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/desktop/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/desktop
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/desktop/gnome/deprecated b/profiles/default/linux/arm/17.0/desktop/gnome/deprecated
new file mode 100644
index 000000000000..51ad785cb389
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/desktop/gnome/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/desktop/gnome
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/desktop/gnome/systemd/merged-usr/deprecated b/profiles/default/linux/arm/17.0/desktop/gnome/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..e79024de0325
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/desktop/gnome/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/desktop/gnome/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/desktop/plasma/deprecated b/profiles/default/linux/arm/17.0/desktop/plasma/deprecated
new file mode 100644
index 000000000000..4e44c2757acc
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/desktop/plasma/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr/desktop/plasma
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/desktop/plasma/systemd/merged-usr/deprecated b/profiles/default/linux/arm/17.0/desktop/plasma/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..df5a51661dd0
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/desktop/plasma/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/desktop/plasma/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm/17.0/developer/deprecated b/profiles/default/linux/arm/17.0/developer/deprecated
new file mode 100644
index 000000000000..ebd06e20749f
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/developer/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm/23.0/split-usr
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm64/17.0/big-endian/deprecated b/profiles/default/linux/arm64/17.0/big-endian/deprecated
new file mode 100644
index 000000000000..680df0d1ab93
--- /dev/null
+++ b/profiles/default/linux/arm64/17.0/big-endian/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm64/23.0/split-usr/big-endian
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm64/17.0/big-endian/systemd/merged-usr/deprecated b/profiles/default/linux/arm64/17.0/big-endian/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..c59e6961886c
--- /dev/null
+++ b/profiles/default/linux/arm64/17.0/big-endian/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm64/23.0/big-endian/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm64/17.0/deprecated b/profiles/default/linux/arm64/17.0/deprecated
new file mode 100644
index 000000000000..486ba33d3d4b
--- /dev/null
+++ b/profiles/default/linux/arm64/17.0/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm64/23.0/split-usr
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm64/17.0/desktop/deprecated b/profiles/default/linux/arm64/17.0/desktop/deprecated
new file mode 100644
index 000000000000..717b8575347c
--- /dev/null
+++ b/profiles/default/linux/arm64/17.0/desktop/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm64/23.0/split-usr/desktop
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm64/17.0/desktop/gnome/deprecated b/profiles/default/linux/arm64/17.0/desktop/gnome/deprecated
new file mode 100644
index 000000000000..a97368ac1d79
--- /dev/null
+++ b/profiles/default/linux/arm64/17.0/desktop/gnome/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm64/23.0/split-usr/desktop/gnome
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm64/17.0/desktop/gnome/systemd/merged-usr/deprecated b/profiles/default/linux/arm64/17.0/desktop/gnome/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..668387f6a691
--- /dev/null
+++ b/profiles/default/linux/arm64/17.0/desktop/gnome/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm64/23.0/desktop/gnome/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm64/17.0/desktop/plasma/deprecated b/profiles/default/linux/arm64/17.0/desktop/plasma/deprecated
new file mode 100644
index 000000000000..ebb83e5535f5
--- /dev/null
+++ b/profiles/default/linux/arm64/17.0/desktop/plasma/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm64/23.0/split-usr/desktop/plasma
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm64/17.0/desktop/plasma/systemd/merged-usr/deprecated b/profiles/default/linux/arm64/17.0/desktop/plasma/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..ccd2417ba85c
--- /dev/null
+++ b/profiles/default/linux/arm64/17.0/desktop/plasma/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm64/23.0/desktop/plasma/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm64/17.0/desktop/systemd/merged-usr/deprecated b/profiles/default/linux/arm64/17.0/desktop/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..7b6310b03feb
--- /dev/null
+++ b/profiles/default/linux/arm64/17.0/desktop/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm64/23.0/desktop/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm64/17.0/developer/deprecated b/profiles/default/linux/arm64/17.0/developer/deprecated
new file mode 100644
index 000000000000..486ba33d3d4b
--- /dev/null
+++ b/profiles/default/linux/arm64/17.0/developer/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm64/23.0/split-usr
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm64/17.0/hardened/deprecated b/profiles/default/linux/arm64/17.0/hardened/deprecated
new file mode 100644
index 000000000000..ae8d32507a5a
--- /dev/null
+++ b/profiles/default/linux/arm64/17.0/hardened/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm64/23.0/split-usr/hardened
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm64/17.0/hardened/selinux/deprecated b/profiles/default/linux/arm64/17.0/hardened/selinux/deprecated
new file mode 100644
index 000000000000..04377eb07d4c
--- /dev/null
+++ b/profiles/default/linux/arm64/17.0/hardened/selinux/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm64/23.0/split-usr/hardened/selinux
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm64/17.0/llvm/deprecated b/profiles/default/linux/arm64/17.0/llvm/deprecated
new file mode 100644
index 000000000000..50d9447edffb
--- /dev/null
+++ b/profiles/default/linux/arm64/17.0/llvm/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm64/23.0/split-usr/llvm
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm64/17.0/systemd/llvm/merged-usr/deprecated b/profiles/default/linux/arm64/17.0/systemd/llvm/merged-usr/deprecated
new file mode 100644
index 000000000000..a344c6d61e5b
--- /dev/null
+++ b/profiles/default/linux/arm64/17.0/systemd/llvm/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm64/23.0/llvm/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm64/17.0/systemd/merged-usr/deprecated b/profiles/default/linux/arm64/17.0/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..d639e20f1867
--- /dev/null
+++ b/profiles/default/linux/arm64/17.0/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm64/23.0/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/arm64/17.0/systemd/selinux/merged-usr/deprecated b/profiles/default/linux/arm64/17.0/systemd/selinux/merged-usr/deprecated
new file mode 100644
index 000000000000..826f54d8a36a
--- /dev/null
+++ b/profiles/default/linux/arm64/17.0/systemd/selinux/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/arm64/23.0/hardened/selinux/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/hppa/17.0/deprecated b/profiles/default/linux/hppa/17.0/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/hppa/17.0/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/hppa/17.0/desktop/deprecated b/profiles/default/linux/hppa/17.0/desktop/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/hppa/17.0/desktop/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/hppa/17.0/developer/deprecated b/profiles/default/linux/hppa/17.0/developer/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/hppa/17.0/developer/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/hppa/17.0/systemd/merged-usr/deprecated b/profiles/default/linux/hppa/17.0/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..063fe9af04c0
--- /dev/null
+++ b/profiles/default/linux/hppa/17.0/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/ia64/17.0/deprecated b/profiles/default/linux/ia64/17.0/deprecated
new file mode 100644
index 000000000000..db515b7e21ae
--- /dev/null
+++ b/profiles/default/linux/ia64/17.0/deprecated
@@ -0,0 +1,104 @@
+default/linux/ia64/23.0/split-usr
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/ia64/17.0/desktop/deprecated b/profiles/default/linux/ia64/17.0/desktop/deprecated
new file mode 100644
index 000000000000..79f71ff58857
--- /dev/null
+++ b/profiles/default/linux/ia64/17.0/desktop/deprecated
@@ -0,0 +1,104 @@
+default/linux/ia64/23.0/split-usr/desktop
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/ia64/17.0/desktop/gnome/deprecated b/profiles/default/linux/ia64/17.0/desktop/gnome/deprecated
new file mode 100644
index 000000000000..0eb67ae8064e
--- /dev/null
+++ b/profiles/default/linux/ia64/17.0/desktop/gnome/deprecated
@@ -0,0 +1,104 @@
+default/linux/ia64/23.0/split-usr/desktop/gnome
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/ia64/17.0/desktop/gnome/systemd/merged-usr/deprecated b/profiles/default/linux/ia64/17.0/desktop/gnome/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..b367562fd18c
--- /dev/null
+++ b/profiles/default/linux/ia64/17.0/desktop/gnome/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/ia64/23.0/desktop/gnome/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/ia64/17.0/developer/deprecated b/profiles/default/linux/ia64/17.0/developer/deprecated
new file mode 100644
index 000000000000..db515b7e21ae
--- /dev/null
+++ b/profiles/default/linux/ia64/17.0/developer/deprecated
@@ -0,0 +1,104 @@
+default/linux/ia64/23.0/split-usr
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/ia64/17.0/systemd/merged-usr/deprecated b/profiles/default/linux/ia64/17.0/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..be9bc4b25696
--- /dev/null
+++ b/profiles/default/linux/ia64/17.0/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/ia64/23.0/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/deprecated b/profiles/default/linux/loong/22.0/la64v100/lp64d/deprecated
new file mode 100644
index 000000000000..e014056c3146
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/deprecated
@@ -0,0 +1,104 @@
+default/linux/loong/23.0/la64v100/split-usr/lp64d
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/deprecated b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/deprecated
new file mode 100644
index 000000000000..7dad124056fc
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/deprecated
@@ -0,0 +1,104 @@
+default/linux/loong/23.0/la64v100/split-usr/lp64d/desktop
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/gnome/deprecated b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/gnome/deprecated
new file mode 100644
index 000000000000..4f70ec5b094c
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/gnome/deprecated
@@ -0,0 +1,104 @@
+default/linux/loong/23.0/la64v100/split-usr/lp64d/desktop/gnome
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/gnome/systemd/merged-usr/deprecated b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/gnome/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..2739d57076a1
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/gnome/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/loong/23.0/la64v100/lp64d/desktop/gnome/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/plasma/deprecated b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/plasma/deprecated
new file mode 100644
index 000000000000..fba6aacd507d
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/plasma/deprecated
@@ -0,0 +1,104 @@
+default/linux/loong/23.0/la64v100/split-usr/lp64d/desktop/plasma
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/plasma/systemd/merged-usr/deprecated b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/plasma/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..dd2de41c7c1b
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/plasma/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/loong/23.0/la64v100/lp64d/desktop/plasma/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/systemd/merged-usr/deprecated b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..a6a9180fadca
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/loong/23.0/la64v100/lp64d/desktop/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/developer/deprecated b/profiles/default/linux/loong/22.0/la64v100/lp64d/developer/deprecated
new file mode 100644
index 000000000000..e014056c3146
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/developer/deprecated
@@ -0,0 +1,104 @@
+default/linux/loong/23.0/la64v100/split-usr/lp64d
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/systemd/merged-usr/deprecated b/profiles/default/linux/loong/22.0/la64v100/lp64d/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..3967f72298be
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/loong/23.0/la64v100/lp64d/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/m68k/17.0/deprecated b/profiles/default/linux/m68k/17.0/deprecated
new file mode 100644
index 000000000000..5b3bb8039bb2
--- /dev/null
+++ b/profiles/default/linux/m68k/17.0/deprecated
@@ -0,0 +1,104 @@
+default/linux/m68k/23.0/split-usr
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/default/linux/m68k/17.0/systemd/merged-usr/deprecated b/profiles/default/linux/m68k/17.0/systemd/merged-usr/deprecated
new file mode 100644
index 000000000000..d5519859465c
--- /dev/null
+++ b/profiles/default/linux/m68k/17.0/systemd/merged-usr/deprecated
@@ -0,0 +1,104 @@
+default/linux/m68k/23.0/systemd
+
+A profile upgrade to version 23.0 is available for your architecture.
+The new 23.0 profiles enable some toolchain hardening features and
+performance enhancements by default, and standardize settings.
+You can find the list of changes on the wiki tracking page [1].
+
+Upgrade instructions
+
+Note 1: If you have manually changed your CHOST to a value different from
+what the stages and profiles set, you may have to do that in the future too.
+In that case you should know what you are doing, hopefully; please read the
+instructions with a critical eye then.
+
+Note 2: In case you are already familiar with binary packages, you should be
+able to add "--getbinpkg" to the emerge calls to speed things up.
+The use of binary packages is completely optional though, and also not
+as much tested as the source-based upgrade path yet.
+
+1. Ensure your system backups are up to date. Please also update
+ your system fully and depclean before proceeding.
+ glibc older than 2.36 and musl older than 1.2.4 is not supported anymore.
+
+2. If you are still using one of the long-deprecated amd64 17.0 profiles
+ (other than x32 or musl), then first complete the migration to the
+ corresponding 17.1 profile. Instructions can be found at [3].
+
+3. If you are currently using systemd in a split-usr configuration, then first
+ complete the migration to the corresponding merged-usr profile of the
+ same profile version. Details on how to do this can be found in the news
+ item [4].
+ If you are currently using openrc, migrate to 23.0 first, keeping your disk
+ layout. If you want to move from split-usr to merged-usr, do that afterwards.
+
+4. Run "emerge --info" and note down the value of the CHOST variable.
+
+5. Edit /etc/portage/make.conf; if there is a line defining the CHOST variable,
+ remove it. Also delete all lines defining CHOST_... variables.
+
+6. Select the 23.0 profile corresponding to your current profile, either using
+ "eselect profile" or by manually setting the profile symlink.
+ Note that old profiles are by default split-usr and the 23.0 profiles by
+ default merged-usr. Do NOT change directory scheme now, since this will
+ mess up your system!
+ Instead, make sure that the new profile has the same property: for example,
+ OLD default/linux/amd64/17.1
+ ==> NEW default/linux/amd64/23.0/split-usr
+ (added "split-usr")
+ OLD default/linux/amd64/17.1/systemd/merged-usr
+ ==> NEW default/linux/amd64/23.0/systemd
+ (removed "merged-usr")
+ A detailed table of the upgrade paths can be found at [5]. Please consult it.
+ In some cases (hppa, x86) the table will tell you to pick between two choices.
+ What you need should be obvious from your *old* CHOST value (from step 4).
+
+7. Delete the contents of your binary package cache at ${PKGDIR}
+ rm -r /var/cache/binpkgs/*
+
+8. In the file or directory /etc/portage/binrepos.conf (if existing), update
+ the URI in all configuration such that they point to 23.0 profile binhost
+ directories. The exact paths can be found in the table at [5], too.
+
+9. Rebuild or reinstall from binary (if available) the following packages in
+ this order, with the same version as already active:
+ emerge --ask --oneshot sys-devel/binutils
+ (you may have to run binutils-config and re-select your binutils now)
+ emerge --ask --oneshot sys-devel/gcc
+ (IMPORTANT: If this command wants to rebuild glibc first, do *not* let it do
+ that; instead, abort and try again with --nodeps added to the command line.)
+ (you may have to run gcc-config and re-select your gcc now)
+ and the C library, i.e. for glibc-based systems
+ emerge --ask --oneshot sys-libs/glibc
+ or for musl-based systems
+ emerge --ask --oneshot sys-libs/musl
+
+10. Re-run "emerge --info" and check if CHOST has changed compared to step 4.
+
+If the CHOST has NOT changed, skip to step 13 (env-update). Otherwise,
+
+11. Recheck with binutils-config and gcc-config that valid installed versions
+ of binutils and gcc are selected.
+
+12. Check /etc/env.d, /etc/env.d/binutils, and /etc/env.d/gcc for files that
+ refer to the *OLD* CHOST value, and remove them.
+ Examples how to do this can be found in the similar procedure at [6].
+
+13. Run env-update && source /etc/profile
+
+14. Re-emerge libtool:
+ emerge --ask --oneshot libtool
+
+15. Just for safety, delete the contents of your binary package cache at
+ ${PKGDIR} again:
+ rm -r /var/cache/binpkgs/*
+
+16. Rebuild world:
+ emerge --ask --emptytree @world
+
+[1] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_transition
+[2] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_profile_timeline
+[3] https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
+[4] https://www.gentoo.org/support/news-items/2022-12-01-systemd-usrmerge.html
+[5] https://wiki.gentoo.org/wiki/Project:Toolchain/23.0_update_table
+[6] https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable#Verifying_things_work
diff --git a/profiles/features/musl/package.use.mask b/profiles/features/musl/package.use.mask
index 1cab96e8fa9e..ae69fd211ee3 100644
--- a/profiles/features/musl/package.use.mask
+++ b/profiles/features/musl/package.use.mask
@@ -1,6 +1,11 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
+# Violet Purcell <vimproved@inventati.org> (2024-05-15)
+# Python does not support JIT on musl, see
+# https://peps.python.org/pep-0744/#support.
+dev-lang/python jit
+
# Robert Förster <Dessa@gmake.de> (2024-05-06)
# dev-db/mongodb is masked on musl
dev-libs/mongo-c-driver test
diff --git a/profiles/package.mask b/profiles/package.mask
index b0544665c883..91375ba1699a 100644
--- a/profiles/package.mask
+++ b/profiles/package.mask
@@ -33,6 +33,17 @@
#--- END OF EXAMPLES ---
+# Arthur Zamarin <arthurzam@gentoo.org> (2024-05-31)
+# EAPI=6, maintainer-needed, incorrect LICENSE, fails to compile with
+# clang.
+# Removal on 2024-06-30. Bugs #933241, #889912, #880267, #562822, #930500.
+net-mail/gnubiff
+
+# Arthur Zamarin <arthurzam@gentoo.org> (2024-05-31)
+# EAPI=6, no activity upstream, maintianer-needed.
+# Removal on 2024-06-30. Bugs #933239, #828068.
+app-emulation/phpvirtualbox
+
# Sam James <sam@gentoo.org> (2024-05-29)
# OpenPGP key of malicious xz co-maintainer. This key is no longer used
# by any ebuilds in tree. Removal on 2024-06-29.
@@ -180,10 +191,6 @@ dev-python/whichcraft
# Removal on 2024-06-16.
sci-libs/beagle
-# Andreas Sturmlechner <asturm@gentoo.org> (2024-05-14)
-# Breaks build of revdeps. Bugs #931916, #931917
-~app-text/poppler-24.05.0
-
# Arthur Zamarin <arthurzam@gentoo.org> (2024-05-13)
# EAPI=6, fails to compile, archived upstream, uses deprecated go eclasses.
# Removal: 2024-06-12. Bugs #931879, #734186.
@@ -282,70 +289,10 @@ dev-python/grpcio
dev-python/grpcio-testing
dev-python/grpcio-tools
-# Jason Zaman <perfinion@gentoo.org> (2024-04-28)
-# TensorFlow was removed from the tree in feb, Keras applications and
-# preprocessing no longer have any revdeps in the tree. For ML, the
-# recommendation is to install from pip in a venv.
-# Removal in 30 days. Bug #930830
-sci-libs/keras-applications
-sci-libs/keras-preprocessing
-
# Sam James <sam@gentoo.org> (2024-04-28)
# Masked for testing. Tracker bug: bug #930805.
>=sys-libs/ncurses-6.5
-# Jason Zaman <perfinion@gentoo.org> (2024-04-27)
-# Sandboxfs was only experimental in Bazel. It was fully removed in Bazel-7
-# Bazel was removed from gentoo in Feb.
-# Removal in 30 days. Bug #930790
-sys-fs/sandboxfs
-
-# Arthur Zamarin <arthurzam@gentoo.org> (2024-04-27)
-# EAPI=6 package, has issues with implicit function declarations, has
-# issues with incompatible types and more. The only reverse dependency
-# is virtual/skkserv, which has other better candidates.
-# Removal on 2024-05-27, bug #930781
-app-i18n/skkserv
-
-# Arthur Zamarin <arthurzam@gentoo.org> (2024-04-26)
-# Broken and reported as such upstream. EAPI=6.
-# Removal: 2024-05-26. Bug #912842.
-net-misc/ttytter
-
-# Michał Górny <mgorny@gentoo.org> (2024-04-23)
-# Broken with py3.12. Last commit upstream in 2021. No revdeps.
-# Removal on 2024-05-23. Bug #929484.
-dev-python/pyannotate
-
-# Michał Górny <mgorny@gentoo.org> (2024-04-23)
-# Unmaintained in Gentoo. Lacking tests, py3.12 support, outdated.
-# No revdeps. The alternatives are dev-python/{llfuse,pyfuse3}.
-# Removal on 2024-05-23. Bug #929453.
-dev-python/fuse-python
-
-# Michał Górny <mgorny@gentoo.org> (2024-04-23)
-# Unmaintained in Gentoo and seriously outdated. Its only reverse
-# dependency is app-admin/testdisk, and the current TestDisk versions
-# do not build against this version anyway
-# Removal on 2024-05-23. Bug #927076.
-app-forensics/libewf
-
-# Matthew Smith <matthew@gentoo.org> (2024-04-23)
-# Security issues (Bug #920682).
-# See the following link for breaking changes:
-# https://www.erlang.org/patches/otp-26.2#incompatibilities
-# Removal on 2024-05-23
-<dev-lang/elixir-1.14.5-r2
-=dev-lang/elixir-1.15.6
-<dev-lang/erlang-26.2.1
-
-# Matthew Smith <matthew@gentoo.org> (2024-04-23)
-# Security issues (Bug #918527) and blocking cleanup of vulnerable
-# dev-lang/erlang versions. Please upgrade.
-# https://www.rabbitmq.com/docs/upgrade
-# Removal on 2024-05-23
-<net-misc/rabbitmq-server-3.13.1
-
# Michał Górny <mgorny@gentoo.org> (2024-04-11)
# Contains a bug that could render the kernel fail to boot.
# https://lore.kernel.org/oe-lkp/202403221630.2692c998-oliver.sang@intel.com/
@@ -651,7 +598,6 @@ sec-keys/openpgp-keys-jiatan
~kde-apps/kdenetwork-filesharing-24.05.0
~kde-apps/kget-24.05.0
~kde-apps/kio-extras-24.05.0
-~kde-apps/krdc-24.05.0
~kde-apps/krfb-24.05.0
~kde-apps/signon-kwallet-extension-24.05.0
~kde-misc/kdeconnect-24.05.0
@@ -784,8 +730,8 @@ sec-keys/openpgp-keys-jiatan
=net-misc/smb4k-3.2.5-r2
~sys-auth/polkit-qt-0.200.0
~x11-misc/sddm-0.21.0_p20240302
-~app-office/libreoffice-24.2.3.2
-~app-office/libreoffice-l10n-24.2.3.2
+~app-office/libreoffice-24.2.4.1
+=app-office/libreoffice-24.2.3.2-r10
# Ulrich Müller <ulm@gentoo.org> (2024-02-08)
# Masked for testing.
diff --git a/profiles/targets/desktop/package.use.force b/profiles/targets/desktop/package.use.force
index 77925d886d5a..a95659f9f08d 100644
--- a/profiles/targets/desktop/package.use.force
+++ b/profiles/targets/desktop/package.use.force
@@ -3,9 +3,10 @@
# Andreas Sturmlechner <asturm@gentoo.org> (2024-03-10)
# Ensure that KF5- and Qt5-based applications, of which there are still
-# many (even as part of KDE Gear 24.02), will not exhibit bugs and look
-# out of place in Plasma 6 sessions.
-=kde-plasma/plasma-meta-6.0*:6 qt5
+# many (even as part of KDE Gear 24.05), will not exhibit bugs and look
+# out of place in Plasma 6 sessions. Do *not* file upstream bugs for Qt5-
+# based packages if unsetting this.
+<kde-plasma/plasma-meta-6.1.80:6 qt5
# Alexandre Rostovtsev <tetromino@gentoo.org> (2014-06-03)
# Ensure shared-mime-info is pulled in by glib, otherwise GNOME, XFCE, and
diff --git a/profiles/updates/2Q-2024 b/profiles/updates/2Q-2024
index 170b917fe2aa..3324b67240f7 100644
--- a/profiles/updates/2Q-2024
+++ b/profiles/updates/2Q-2024
@@ -8,3 +8,4 @@ slotmove kde-apps/kdeedu-data 5 0
move dev-perl/Term-Table perl-core/Term-Table
move dev-perl/Test2-Suite perl-core/Test2-Suite
move dev-python/et_xmlfile dev-python/et-xmlfile
+move dev-python/qiskit-terra dev-python/qiskit
diff --git a/profiles/use.local.desc b/profiles/use.local.desc
index 6e2219804c12..b6d8426f95e3 100644
--- a/profiles/use.local.desc
+++ b/profiles/use.local.desc
@@ -752,9 +752,6 @@ app-forensics/aide:curl - Use curl for http,https and ftp backends
app-forensics/aide:e2fs - Enable support for checking file attributes on ext2/ext3/ext4 filesystems
app-forensics/chkrootkit:cron - Install cron script for weekly rootkit scans
app-forensics/honggfuzz:clang - Enable clang support (pull sys-libs/blocksruntime dependency).
-app-forensics/libewf:bfio - Enables libbfio for chaining file in file handling
-app-forensics/libewf:fuse - Enable fuse support for ewfmount
-app-forensics/libewf:uuid - Enable UUID support in the ewftools
app-forensics/lynis:cron - Install /etc/cron.* files
app-forensics/sleuthkit:aff - Enable extra aff formats
app-forensics/sleuthkit:ewf - Enable libewf support
@@ -2573,7 +2570,7 @@ dev-python/python-mpd2:twisted - Enable twisted support
dev-python/python-stdnum:vies - Enable VIES
dev-python/pyudev:qt5 - Install PyQt5 bindings
dev-python/pyzmq:drafts - Enable draft API support
-dev-python/qiskit-terra:visualization - Enable visualization modules
+dev-python/qiskit:visualization - Enable visualization modules
dev-python/rarfile:compressed - Enables the module to support compressed v3 archives by calling the app-arch/unrar.
dev-python/reedsolo:native-extensions - Compile native C extensions.
dev-python/rfc3986:idna - enable support for the IDNA specification (RFC 5891)
@@ -2954,6 +2951,7 @@ dev-util/ostree:sodium - Use libsodium for ed25519
dev-util/ostree:soup - Use libsoup for networking
dev-util/perf:babeltrace - Enable dev-util/babeltrace support
dev-util/perf:bpf - Enable support for eBPF features with dev-libs/libbpf
+dev-util/perf:capstone - Use dev-libs/capstone for disassembly support
dev-util/perf:clang - Enable builtin clang and LLVM support
dev-util/perf:doc - Build documentation and man pages. With this USE flag disabled, the --help parameter for perf and its sub-tools will not be available. This is optional because it depends on a few documentation handling tools that are not always welcome on user systems.
dev-util/perf:libpfm - Enable dev-libs/libpfm support
@@ -2985,7 +2983,6 @@ dev-util/schroot:zfs - Enable support for chroots using ZFS shapshots/clones
dev-util/sdl-jstest:sdl - Enable media-libs/libsdl2 based input test
dev-util/sdl-jstest:sdl1 - Enable media-libs/libsdl based input test
dev-util/sysprof:unwind - Use sys-libs/libunwind to unwind the stack
-dev-util/trace-cmd:udis86 - Enable support for dev-libs/udis86 disassembler library
dev-util/uftrace:capstone - Use capstone to provide dynamic tracing without recompilation
dev-util/vulkan-tools:cube - Build the cube/cubepp demos
dev-util/watchman:python - Install pywatchman bindings and the watchman-{wait,make} utils