diff options
author | Joey Hess <joey@kitenet.net> | 2013-05-03 11:52:04 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2013-05-03 11:52:04 -0400 |
commit | 34f5e310d92904fe4ca0e802d73f7fdaae9673b6 (patch) | |
tree | f43e1f6cee64c176403e6526272ef0bb89be4899 /Annex/Environment.hs | |
parent | da6faf0f3aa315d8d3c8b83fa59bba2d3beae28a (diff) |
set EMAIL when GECOS workaround is needed
Git fails on Android, because it gets some weird domain for local host like
"localhost.(none)". This works around that. I made it always set EMAIL when
GECOS workaround was needed (unless EMAIL is already set). It might be
nicer to try to get the hostname.domain as git does, and only set it if
that fails. But I don't want to be stuck trying to exactly duplicate
whatever git is doing.
Diffstat (limited to 'Annex/Environment.hs')
-rw-r--r-- | Annex/Environment.hs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/Annex/Environment.hs b/Annex/Environment.hs index 357ad6958..9e5945360 100644 --- a/Annex/Environment.hs +++ b/Annex/Environment.hs @@ -1,6 +1,6 @@ {- git-annex environment - - - Copyright 2012 Joey Hess <joey@kitenet.net> + - Copyright 2012, 2013 Joey Hess <joey@kitenet.net> - - Licensed under the GNU GPL version 3 or higher. -} @@ -12,6 +12,7 @@ import Utility.UserInfo import qualified Git.Config import System.Posix.Env +import Network.BSD {- Checks that the system's environment allows git to function. - Git requires a GECOS username, or suitable git configuration, or @@ -29,3 +30,5 @@ checkEnvironmentIO = do -- existing environment is not overwritten setEnv "GIT_AUTHOR_NAME" username False setEnv "GIT_COMMITTER_NAME" username False + hostname <- getHostName + setEnv "EMAIL" (username ++ "@" ++ hostname) False |