However, case-sensitivity is user-unfriendly. README.DOCX, Readme.docx, ReAdMe.DocX -- which document did they really want? When Jane Doe calls and tells John Doe to open the "readme" document, which one does she mean?
Mind you:
naïve.txt
naïve.txt
can both exist, because:
ï vs ï
0xC3AF vs 0x69CC88
is not same.
Linux does sane (secure) thing - does not care. If bytes are different - name is different.
Windows and mac don't solve this anyway.
Having only one of Α.txt, A.txt, a.txt is not, and was not, а option.
https://en.wikipedia.org/wiki/Ascii85
that last would be clever but unwise to write to the filesystem
Yes, you can find exceptions to the point of case-sensitivity is user-unfriendly. For developers, sure. For end users? It's always unfriendly.
Though there's nothing wrong with file names with GUIDs; SharePoint does it all the time ;-)
Recent news of Linux also considering removing the drivers for it: https://www.phoronix.com/news/Linux-2025-Sad-State-HFS
APFS is case-insensitive by default. It can be formatted to be case-sensitive. I don't think you can change sensitivity on the fly like Windows.
Take files under /boot/EFI (FAT). Packaging systems fall down on such — two RPMs can have different cases of the same filename and the package manager won’t know. They’ll just subtly overwrite each others file depending on installation/upgrade order.
(And why should the package manager have to care about the case sensitivity of the underlying file system for each managed file?)
Collation is configurable at the server level, but usually one goes for a _CI_ collation there (not much reason for master to be _CS_). Each user database can have it's own collation/case-sensitivity.