You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

setup.sh 3.7 KiB

12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. #!/bin/sh
  2. mkdir -p ~/.my/log
  3. mkdir -p ~/.local/bin
  4. _iswindows(){
  5. case `uname` in
  6. (CYGWIN*) return 0;;
  7. (MINGW*) return 0;;
  8. esac
  9. return 1
  10. }
  11. gen_source_script(){
  12. # _gen_source_script file lines
  13. test $# -eq 2 || return 1
  14. head -n $2 $1 | \grep -v '^#!' | sed -e 's/^..//g'
  15. }
  16. get_install_script(){
  17. local dir="$HOME/.local/bin"
  18. mkdir -p "$dir"
  19. for f in "$@"
  20. do
  21. bn=$(basename "$f")
  22. type $bn >/dev/null 2>&1 || {
  23. if type wget >/dev/null 2>&1
  24. then
  25. wget "$f" -P "$dir/" &&
  26. chmod u+x "${dir}/${bn}"
  27. elif type curl >/dev/null 2>&1
  28. then
  29. curl --url "$f" --output "${dir}/${bn}" &&
  30. chmod u+x "${dir}/${bn}"
  31. fi
  32. }
  33. done
  34. }
  35. install_symlink_script(){
  36. mkdir -p "$HOME/.local/bin/"
  37. for f in "$@"
  38. do
  39. ln -s "$PWD/$f" "$HOME/.local/bin/"
  40. done
  41. }
  42. git_config(){
  43. type git >/dev/null 2>&1 || return 1
  44. git config --global user.name '10sr'
  45. git config --global user.email '8slashes+git@gmail.com'
  46. git config --global core.autocrlf false
  47. git config --global core.excludesfile '~/.gitignore'
  48. git config --global color.ui auto
  49. git config --global status.relativePaths false
  50. git config --global status.showUntrackedFiles normal
  51. git config --global log.date iso
  52. git config --global alias.graph "log --graph --date-order -C -M --pretty=tformat:\"%C(green)%h%C(reset) %C(white)%ad%C(reset) %C(red)%an%C(reset)%C(yellow)%d%C(reset) %C(white bold)%s%C(reset)\" --all --date=iso -n 499"
  53. git config --global alias.st "status -s -b"
  54. git config --global alias.b "branch"
  55. git config --global alias.sb "show-branch"
  56. git config --global alias.ci "commit --verbose"
  57. git config --global alias.co "checkout"
  58. git config --global alias.cim "commit --verbose -m"
  59. git config --global alias.di "diff --color"
  60. git config --global alias.me "merge --no-ff --stat -v"
  61. git config --global alias.gr "grep -n"
  62. git config --global alias.ls "ls-files"
  63. # git config --global alias.ls "ls-files -v --full-name"
  64. # git config --global alias.ls "status -u -s ."
  65. git config --global alias.sl "!sl"
  66. # git config --global alias.my-ls "ls-files | xargs ls"
  67. # git config --global alias.ll "!git ls-files | xargs ls -l -CFG --color=auto --time-style=long-iso"
  68. git config --global alias.addi "add -i"
  69. git config --global alias.clean-p "!test -z \"\$(git status -s -uno)\""
  70. #git config --global alias.wc "!git ls-files -z | xargs -0 wc"
  71. # git config --global push.default "simple"
  72. if _iswindows; then
  73. git config --global core.fileMode false
  74. fi
  75. }
  76. mac_defaults(){
  77. test "`uname`" = Darwin || return 1
  78. # http://appdrill.net/60641/mac-boot-mute.html
  79. #sudo nvram SystemAudioVolume=%80
  80. # add quit entry in menu
  81. defaults write com.apple.finder QuitMenuItem -bool YES
  82. # show full path on titlebar
  83. defaults write com.apple.finder _FXShowPosixPathInTitle -bool YES
  84. # do not show desktop icons
  85. defaults write com.apple.finder CreateDesktop -boolean false
  86. killall Finder
  87. # disable dashboard
  88. #defaults write com.apple.dashboard mcx-disabled -bool YES
  89. }
  90. mac_start_daemon(){
  91. test "`uname`" = Darwin || return 1
  92. test "`launchctl getenv LC_ALL`" = C || sudo launchctl setenv LC_ALL C
  93. if ! (launchctl list | grep com.apple.locate)
  94. then
  95. sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist
  96. fi
  97. }
  98. get_install_script http://www.frexx.de/xterm-256-notes/data/colortable16.sh \
  99. http://www.frexx.de/xterm-256-notes/data/256colors2.pl
  100. git_config
  101. mac_defaults
  102. mac_start_daemon