unixwz0r

arch-setup

Dec 30th, 2014
341
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.04 KB | None | 0 0
  1. #!/bin/bash
  2. #-------------------------------------------------------------------------------
  3. #Arch-Setup Installer Script
  4. #Developer: Gary Perreault
  5. #-------------------------------------------------------------------------------
  6.  
  7.  
  8. #Global Settings
  9. PACSTRAPDEFAULTS="base base-devel"
  10. DEV=/dev/
  11. DISK=NULL
  12. MNT=/mnt #Default mount point for filesystem's root upon preparing
  13. TMP=/tmp/tmp.$$
  14. EDITOR=nano
  15.  
  16. #Varibles to Ensure Configured Usually set to Not Configured until
  17. #task is done
  18.  
  19.  
  20. TASK1="[ ] Not Set"
  21. TASK2="[ ] Not Set"
  22. TASK3="[ ] Not Set"
  23. TASK4="[ ] Not Set"
  24. TASK5="[ ] Not Set"
  25. TASK6="[ ] Not Set"
  26.  
  27. # External Function Files that is required
  28. if [[ -f `pwd`/gfuncs.sh ]]; then
  29. source gfuncs.sh
  30. else
  31. echo "Error missing file: gfuncs.sh - Required for installer"
  32. exit 1
  33. fi
  34.  
  35. if [[ -f `pwd`/diskfuncs.sh ]]; then
  36. source diskfuncs.sh
  37. else
  38. echo "Error missing file: diskfuncs.sh - Required for installer"
  39. exit 1
  40. fi
  41.  
  42. prepmenu() {
  43. print_title1
  44. echo ""
  45. echo "${Bold}${White}${Underline}Arch Linux Prep Setup${Reset}"
  46. echo ""
  47. echo "${Bold}${White} 1. Select Disk $TASK1"
  48. echo "${Bold}${White} 2. Partition Selected disk $TASK2"
  49. echo "${Bold}${White} 3. Format & Mount Root Partition $TASK3"
  50. echo "${Bold}${White} 4. Copy Live ISO Skel to Disk $TASK4"
  51. echo "${Bold}${White} 5. Pacstrap base base-devel /mnt $TASK5"
  52. echo "${Bold}${White} 6. Generate Fstab $TASK6"
  53. echo "${Bold}${White} 7. Chroot in to the new root "
  54. echo "${Bold}${White} Q. Quit "
  55. echo ""
  56. echo "${Red}When you are in chroot just type cd root & run ./setup-tuxhat and select 2 to proceed the Tux Hat Linux HDD installation"
  57. print_askopt
  58. read mnuopt
  59.  
  60. case $mnuopt in
  61. 1)
  62. SelectDisk
  63. prepmenu
  64. ;;
  65. 2)
  66. PartitionDisks
  67. prepmenu
  68. ;;
  69. 3)
  70. formatrootpart
  71. pause_function
  72. prepmenu
  73. ;;
  74. 4)
  75. cpisoskeltohd
  76. pause_function
  77. prepmenu
  78. ;;
  79. 5)
  80. echo "Pacstrapping to $MNT"
  81. sleep 1
  82. pacstrap $MNT $PACSTRAPDEFAULTS
  83. cp /etc/pacman.conf /mnt/etc/pacman.conf
  84. TASK5="${Bold}${White}[${Bold}${Green}X${Bold}${White}] is Set"
  85. pause_function
  86. prepmenu
  87. ;;
  88.  
  89. 6)
  90. echo "Generating fstab"
  91. echo "Are all the needed drives mounted?"
  92. echo -n "[Y]es or [N]o: "
  93. read YN
  94. case $YN in
  95. Y|y)
  96. echo "Generating fstab and putting it on $MNT/etc/fstab"
  97. genfstab -U -p $MNT >> $MNT/etc/fstab
  98. TASK6="${Bold}${White}[${Bold}${Green}X${Bold}${White}] is Set"
  99. ;;
  100. N|n)
  101. echo Please return and do the needed action
  102. TASK6="${Bold}${White}[${Bold}${Green}X${Bold}${White}] is not Set"
  103. ;;
  104. esac
  105. pause_function
  106. prepmenu
  107. ;;
  108. 7)
  109. arch-chroot $MNT
  110. ;;
  111. q)
  112. echo ""
  113. echo "${Red}Thanks ${Yellow}for ${Purple}trying ${Green}out ${Yellow}Tux ${Blue}Hat ${White}Linux!${Reset}"
  114. echo ""
  115.  
  116. esac
  117.  
  118. }
  119. #print_title
  120. #configure_diskspartitions
  121.  
  122. #dfspace
  123.  
  124. prepmenu
Advertisement
Add Comment
Please, Sign In to add comment