Can we please stop rehashing this read-only FS argument over and over again. extrowerk said it, you can find pleinty of material on the forums about it already. But since no one bothers to search, here is the TL;DR version:
- We did not do this to annoy users, we are aware it is a bit “unexpected”
- Writable system dirs was part of the original plan but couldn’t be done for performance reasons (it was actually implemented, then dropped because it was just too slow)
- The non-packaged directories are a compromise which allows to still do some customization, combined with the blacklist system
- After doing things this way, we found out it also makes system updates safer and easier (no risk of erasing user customizations, which are in a clearly separate place), which makes it unlikely for us to want to go back
- Thinking about it more, it turns out faking a writable directory with some kind of overlay would behave in a more unexpected than what we do now, so it is not all that of a great idea.
Unless you have a solution that solves all the previous point, we will not reconsider this. This means your solution:
- Must solve the initial problem of allowing safe system updates without messing up user customizations
- Have good performance (at least as good as the current implementation)
- Is not confusing in terms of where the data is actually stored
- Preserves most of the cool features of the package system: being able to rollback to an older version, managing dependencies, allowing updates and not crashing the OS while doing so.
If you do not come with a proposal fitting this, please spend more time studying the history and design of the current solution.