dotfiles 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. #!/bin/bash
  2. # while-menu-dialog: a menu driven system information program
  3. DIALOG_CANCEL=1
  4. DIALOG_ESC=255
  5. HEIGHT=0
  6. WIDTH=0
  7. display_result() {
  8. dialog --title "$1" \
  9. --no-collapse \
  10. --msgbox "$result" 0 0
  11. }
  12. while true; do
  13. exec 3>&1
  14. selection=$(dialog \
  15. --backtitle "Dotfiles master v1.1" \
  16. --title "Menu" \
  17. --clear \
  18. --cancel-label "Exit" \
  19. --menu "Please select:" $HEIGHT $WIDTH 4 \
  20. "1" "Inspect" \
  21. "2" "Backup Host" \
  22. "3" "Backup Global" \
  23. "4" "Install Host" \
  24. "5" "Install Global" \
  25. 2>&1 1>&3)
  26. exit_status=$?
  27. exec 3>&-
  28. case $exit_status in
  29. $DIALOG_CANCEL)
  30. clear
  31. echo "Program terminated."
  32. exit
  33. ;;
  34. $DIALOG_ESC)
  35. clear
  36. echo "Program aborted." >&2
  37. exit 1
  38. ;;
  39. esac
  40. case $selection in
  41. 1 )
  42. vim dotfiles
  43. ;;
  44. 2 )
  45. mkdir $HOSTNAME
  46. cp ~/.bashrc ./$HOSTNAME
  47. cp ~/.conkyr* ./$HOSTNAME
  48. cp ~/.gtkrc-2.0 ./$HOSTNAME
  49. cp ~/.xinitrc ./$HOSTNAME
  50. cp ~/.Xresources ./$HOSTNAME
  51. cp -r ~/.config/ ./$HOSTNAME
  52. ;;
  53. 3 )
  54. cp ~/.bashrc ./
  55. cp ~/.conkyr* ./
  56. cp ~/.gtkrc-2.0 ./
  57. cp ~/.xinitrc ./
  58. cp ~/.Xresources ./
  59. cp -r ~/.config/ ./
  60. ;;
  61. 4 )
  62. cp ./$HOSTNAME/.bashrc ~/
  63. cp ./$HOSTNAME/.conkyr* ~/
  64. cp ./$HOSTNAME/.gtkrc-2.0 ~/
  65. cp ./$HOSTNAME/.xinitrc ~/
  66. cp ./$HOSTNAME/.Xresources ~/
  67. cp -r ./$HOSTNAME/.config/ ~/
  68. ;;
  69. 5 )
  70. cp .bashrc ~/
  71. cp .conkyr* ~/
  72. cp .gtkrc-2.0 ~/
  73. cp .xinitrc ~/
  74. cp .Xresources ~/
  75. cp -r .config/ ~/
  76. ;;
  77. esac
  78. done