I tested Debian KDE, Debian Gnome, Fedora 37, Ubuntu 20.10, and Parrot Linux. The results are not good. Most users are forced to have world readable files, and they
are accessible through cd to their home directory.
Specifically these distributions forced users to make world readable files on programs launched from the desktop (ignoring .profile, .xsession, .xinitrc, and .xprofile):
- Debian 11 Gnome
- Fedora 37
- Ubuntu 20.10
- Parrot Linux
Of note, Fedora 37 removed world permissions from the home directory file. Debian 11, Ubuntu, and Parrot leave the home directory open for world reading. More about this further below.(*)
Of those tested, only Debian 11 KDE respected a umask setting in .profile. So this is an answer to my question from the original post, comment #20 from
f33dm3bits, though that comment deserved more explanation as we did not know if it was unusual, or common.
Parrot Linux refused to allow the user to login at all after .xsession, .xinitrc, and .xprofile were given a umask line, so it seemed to be reading those at login. Perhaps there is a magic incantation that would make it work.
I think the Debian 11 KDE was the only KDE desktop tested - so the answer to the original post might be 'any modern KDE machine, and modify .profile' -- I do not know.
SUSE had several install options among them a KDE option, but after a few hours of this ...
-------
(*) About the Fedora 37 approach, it is a bit of a kludge.
Directories do not impart permissions upon the files in them.
Files have their own permissions and they are set from the open command request flags combined with the umask when they are created.
Files are located by inode, not by path string.
There can be other links to get to files, and directories can be archived and restored, or mounted, on different systems that use the more usual 755 for home. Especially these days when many machines are virtual.
Perhaps a specific file system gives some guarantees about this. Perhaps Linux has passed a law about it. IDK
It is common in unix land to allow home directories to be readable so that users may share configuration files. If the user opens the directory for that reason -- then all the user readable files created by desktop programs will then become easily accessible by everyone on that Fedora system. (Arguably and improvement over other systems I suppose, where they are always accessible without any esoteric knowledge on how to get to them.)
On Fedora 37 if the user sets his or her umask there can be a mess of mixed file permissions, even made by the same program, depending if it was launched in a manner that ignored the .profile.
-----
As to the concept of installing an Xinit package .. firstly, that is outside of user land, but once done, yes, if users are setup to launch their own X servers they will be able to write .xinitrc etc. That is a little funny about linking the bash_profile to .xsessionrc. It seems that something in the xinit chain was sourcing bash_profile. I can now see why a site might want to go back to this.
----
oh gosh, we still have not heard from anyone who has already been around the block with this issue - perhaps in conversations like this one -- and what they did. I am guessing at the moment the simple answer is KDE. My answer is Debian KDE. Thanks for the engaging chat.