AlphaElwedritsch
We are a rolling release distribution so we do not abandon existing installs every 5 years and require people to reinstall with the latest version. The version is a milestone and means nothing to the existing user base. The idea is install once, update forever. If we were not a rolling release, this would be much easier.
We had to add compatibility symlinks to keep some users systems running due to the failed usr-merge attempt prior. Because of this failed attempt we have installs in the wild that will be slightly different depending on if the system ever attempted the usr-merge, failed the usr-merge and needed our assistance to recover or completed it successfully without issue. We need to clean that up.
ISOs are generated from the repository. So you can not create a properly usr-merged ISO if the usr-merge has not been 100% completed.
So we need the epoch repo. Not everyone updates every week/month/year so we need to force every existing install when it next updates to update to a state where eopkg is smart enough to not completely shit the bed, the usr-merge script will run on next reboot and after it completes the merge it will change the system to use a different repository for future updates.
This new repo would contain updates that could break peoples install if they upgraded straight to this step as the usr-merge is assumed to be already completed, so the compatibility symlinks are removed or if they were using an older more stupid version of eopkg when they updated a change to our baselayout
package would have a chance of breaking their install again like what happened with the prior failed usr-merge.
In other words there are no options that allow us to do less work. If there was, we would have taken that route. This is the only real path forward.