Johannes Sixt said the following on 07.07.2008 21:11:
The intent of the function is to have a relocatable binary that does not use absolute compiled-in paths. For this purpose, DEFAULT_GIT_TEMPLATE_DIR and ETC_GITCONFIG are defined as relative paths that are interpreted as relative to git_exec_path() (which itself depends on GIT_EXEC_PATH unless overridden via environment or program option).

The trivial way out is, of course, to define gitexecdir = $(bindir) in the Makefile. This will have an effect *only* on how the programs are installed, but will leave the internals unchanged.

But what do we really want?

Now, reading this I wonder if really it should be something different. The ETC_GITCONFIG and DEFAULT_GIT_TEMPLATE_DIR are really pointing to configurations which affect all users, right? Shouldn't they then be located under the "All Users"/"Default User" directory? Normally under "C:\Documents and Settings\All Users\Application Data", but retrievable by
    SHGetSpecialFolderPath(0, pszPath, CSIDL_COMMON_APPDATA, 0);

Folder description:
"This folder should be used for application data that is not user specific. For example, an application may store a spell check dictionary, a database of clip-art or a log file in the CSIDL_COMMON_APPDATA folder. This information will not roam and is available to anyone using the computer. By default, this location is read-only for normal (non-admin, non-power) Users."

Just a brief thought..

--
.marius

Reply via email to