summaryrefslogtreecommitdiff
path: root/setup.py
diff options
context:
space:
mode:
authorJesse Morgan <jesse@jesterpm.net>2012-11-09 08:05:41 -0800
committerJesse Morgan <jesse@jesterpm.net>2012-11-09 08:05:41 -0800
commit7893de5941fc6e50d65c87498345923e29c50676 (patch)
tree461c208885da1d4b46881515c0f0173acc6a0999 /setup.py
parent4a2364cc6baf5dc762838252d0148e95a7cc8a41 (diff)
setup.py seems to be functional
Diffstat (limited to 'setup.py')
-rw-r--r--setup.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/setup.py b/setup.py
index b1d2d47..6d72cac 100644
--- a/setup.py
+++ b/setup.py
@@ -51,8 +51,11 @@ def makeLinks(dotfiles, prefix, nice, pretend):
if type(src) is dict:
try:
- if not pretend and not os.path.isdir(realDest):
- os.mkdir(realDest)
+ if not pretend:
+ if os.path.islink(realDest):
+ os.unlink(realDest) # Only remove symlinks. Don't try to replace a file with a directory.
+ if not os.path.isdir(realDest):
+ os.mkdir(realDest)
print "%50s => <NEW DIRECTORY>" % (realDest)
makeLinks(src, realDest + "/", nice, pretend)
except OSError,e:
@@ -65,7 +68,7 @@ def makeLinks(dotfiles, prefix, nice, pretend):
print "%50s => %s" % (realDest, src)
- except IOError,e
+ except IOError,e:
print "Not linking %s to %s because IOError: %s" % (realDest, src, str(e))
""" Return a map of dest => source dotfiles """
@@ -99,8 +102,10 @@ def makeLink(src, realDest, nice = False):
if os.path.lexists(realDest):
if nice:
return False
- else:
+ if os.path.isdir(realDest) and not os.path.islink(realDest):
shutil.rmtree(realDest)
+ else:
+ os.unlink(realDest)
os.symlink(src, realDest)