Unfortunately, I think it has a major drawback: It is very Obarun specific
or maybe I'd better say 66 specific.
66 specific but not on the way that you think.
An additional file in ~/.66/conf/svscan@ bf/ seems to complicate
synchronization, because this folder doesn't exist elsewhere.
Not all service manager handle user service :). Also, 66 use ~/.66/conf directory whereas e.g. systemd use ~/.config/environment.d/
If not, what is this evaluation of ~/.66/conf/svscan@ bf good for?
it's used to be able to pass environment variables to all user service when its started.
As far as I know, ~/.profile -- or respective files with other
shells -- seems to be a well-established place in all unix-like
systems for handling environment variables.
Why does Obarun break with this tradition?
It does no break any unix-like tradition but maybe you don't know how its works under the hood.
I would say that usually a terminal doesn't load ~/.profile when opened.
It usually just loads ~/.bashrc.
Your assumptions is false here.
The ~/.66/conf/svscan@ <user/ directory is used to define global variable for the s6-svscan program which supervise all user services. That means that every single service launched by the user inherit of these variables. For example, the XDG_RUNTIME_DIR is one of the main variable that a tremendous number of user service relate on. So, having this kind of variable set on the global environment system avoid to define it each time you use/start an user service which depends on it.
As far is a global environment it should be read first to let the user to overwrite it for specific case.
Well, you should read this carefully:
https://wiki.archlinux.org/index.php/Environment_variables. As you can see on this wiki page the /etc/profile is used to set global variable(meaning every single user will inherit of it) and only be used for login shells only. That means that on X session every time you open a new terminal this file need to be reloaded.
So now read this carefully in particular the description of the bashrc_profile file:
https://wiki.archlinux.org/index.php/Bash# Configuration_files. According to this page if you have an existing ~/.bash_profile the ~/.bash_login and ~/.profile files won't be checked. So, yeah every time you open a terminal bash will read the /etc/profile(which should read and load every files at the /etc/profile.d) but uniquely if your ~/.bash_profile doesn't exist.
Finally, DM usually load the /etc/profile then ~/.bash_profile in that manner of precedence (e.g /usr/share/sddm/scripts/Xsession).