I am not familiar with MacOS, but that seems like a nightmare. What is the purpose of these files?
the macos file browser, Finder, lets you set a background for a folder, move file icons around to arbitrary positions, other shenanigans. in order for this to work across systems on removable storage media and network mounts, they have this.
Why not make the file when a change is made like with windows desktop.ini files?
Is there a valid reason not to store that [[anywhere else]], ideally in Spotlight’s data?
In Unixy environments like Mac and Linux the application can’t always know what the mountpoint of a drive is so it’s not always obvious which root folder to put those index/config files in if it’s a portable drive or network drive. Some mountpoints are standard per each OS, but not everything sticks to the standard.
Maybe. There are many ways to move files and directories around without using Finder, at which point all indexed data about those files and directories will be stale. Forcing something as core as mv
to update Spotlight would be significantly worse, I think. By keeping the .DS_Store
files co-located with the directory they index, moving a directory does not invalidate the index data (though moving a file without using Finder still does). Whether retaining indexing on directory moves is a compelling enough reason to force the files everywhere is probably dependent on whether that’s a common enough pattern among workflows of users, and whether spotlight performance would suffer drastically if it were reliant on a central store not resilient against such moves.
So, it’s probably a shaky reason at best.