spongeyperson

Arch Linux Programs Install Script

Feb 8th, 2017
177
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 9.06 KB | None | 0 0
  1. #!/bin/bash
  2. clear
  3. sleep 1
  4. echo -e "
  5. \e[1m####################################################
  6. #################### \e[5m\e[92mWelcome to\e[0m\e[1m ####################\e[0m
  7.  
  8. \e[91mTyler's \e[36mArch Linux\e[0m \e[93mP\e[0m\e[91mrogram \e[0m\e[93mI\e[0m\e[91mnstallation Script\e[0m \e[36m\e[1mv8.1.1\e[0m
  9.  
  10. (C) \e[93mspongeyperson\e[0m
  11.  
  12. > Created: Feb 8th, 2017 ; 10am
  13. > \e[30m\e[42mUpdated: Jun 19th, 2017 ; 9am\e[0m
  14.  
  15. \e[1m####################################################\e[0m"
  16. echo ""
  17.  
  18. # Selection Menu
  19.  
  20. PS3='
  21. Please Select an Option: '
  22. options=("Continue Program Installation" "Changelog" "Planned Features" "About this Script" "Install only iGPU Drivers" "Install iGPU Drivers + Bumblebee" "Quit")
  23. select opt in "${options[@]}"
  24. do
  25.     case $opt in
  26.         "Changelog")
  27.             clear
  28.             echo "Displaying Changelog:"
  29.             echo ""
  30.             echo ""
  31.             echo "
  32. # ## >>V8.1.1 CHANGES<< ##
  33.  
  34. #- Fixed Issues with incorrect syntax on selecting first option
  35.  
  36. #- Updated Code
  37.  
  38. # ## >>V8.1 CHANGES<< ##
  39.  
  40. #- Moved Bumblebee & Graphics Installation to their own menu            
  41.  
  42.            
  43. # ## >>V8 CHANGES<< ##
  44.  
  45. #- Added Interactable Menu System
  46. #- Changed Welcome Screen - Added Colors, Reformatted Text
  47. #- Reformatted Entire Script to Accomidate Menu System
  48. #- Added End Script Chime - Only Works on PulseAudio... for now
  49. #- Added cava - Console Based Audio Visualizer
  50. #- Added fftw - Dependancy for cava
  51. #- Added ncurses - Dependancy for cava
  52.  
  53.  
  54. # ## >>V7 CHANGES<< ##
  55.  
  56. #- Added Change Log
  57. #- Updated Yaourt Lines to include No Confirm & notified user
  58. #- Working on adding Automatic config file Generation
  59. #- Added Currently Working on Text to Signify what i was
  60. #  last working on, in the Script
  61. #- Added neofetch
  62. #- Added sshfs
  63. #- Added audacity
  64. #- Added python
  65. #- Added python-pip - Dependancy for Speedtest-CLI
  66. #- Added speedtest-cli
  67. #- Added nodejs - Dependancy for npm
  68. #- Added npm
  69. #- Added lib32-mesa
  70. #- Added vulkan-intel"
  71.             echo ""
  72.             echo ""
  73.             read -n 1 -s -p "Press any key to return to Main Menu..."
  74.             echo""
  75.             clear
  76.             ;;
  77.         "Planned Features")
  78.             clear
  79.             echo ""
  80.             echo ""
  81.             echo "
  82. ## Planned Features... ##
  83.  
  84. #- Add proper menu return system
  85. #- Automatic Reconstruction of Customized .BashRC
  86. #- Replacement of Post Installation Script
  87. #- (Fix) Main Menu MOTD follows the rest of the Menus
  88. #- Alsa adeptation for Ending Chime
  89. #- More Coming Soon...
  90. "
  91.             echo ""
  92.             echo ""
  93.             read -n 1 -s -p "Press any key to return to Main Menu..."
  94.             echo""
  95.             clear
  96.             ;;
  97.         "About this Script")
  98.             clear
  99.             echo "
  100. This Script was created to fufill the need of preinstalling a huge load of
  101. applications all at once. I, the creator of the script used to reinstall
  102. Operating Systems all the time and having to grab all the programs needed to
  103. make my system fully functional for my needs was a major pain. I am not
  104. very good at Bash Scripting, but i tried to make the script as simple as
  105. possible, and the script is meant to fufill my needs. If you have used this
  106. script and would like to modify it, I will allow modifications, but credit
  107. must be given to the person who created this script. I know the script
  108. might be messy, and/or probably not very hard to achieve for someone of
  109. great scripting knowledge, but i'd like to have my own hard work at least
  110. credited for spending hours doing this, even if it isn't very good.
  111.  
  112. I appreciate you for using my script
  113.  
  114. Thanks, Tyler"
  115.             echo ""
  116.             echo ""
  117.             read -n 1 -s -p "Press any key to return to Main Menu..."
  118.             echo""
  119.             clear
  120.             ;;
  121.         "Continue Program Installation")
  122.             clear
  123.             echo "Script Continuing Normally..."
  124.             echo ""
  125.             echo ""
  126.             # Update Pacman Repositories & Packages #
  127.             echo -e "\e[38;5;226mUpdating Pacman Packages & Repositories...\033[0m"
  128.             sudo pacman -Syy && sudo pacman -Syu
  129.             sleep 2
  130.  
  131.             # Post Install Text File #
  132.             # >>> Will be Replacing this section soon <<< #
  133.             echo ''
  134.             echo -e "\e[4mCopying Post Install Text File...\033[0m"
  135.             echo -e "\e[1mFile Location: ~/Documents/post_install.txt\033[0m"
  136.             printf '%s\n' 'Pacman Customizations:' 'In /etc/pacman.conf, under [options], add ILoveCandy. Then under Misc Options, Uncomment Color' '' '' >> ~/Documents/post_install.txt
  137.             sleep 2
  138.  
  139.             # Yaourt No Prompts #
  140.             echo ''
  141.             echo -e "\e[96mRemoving Prompts from Yaourt...\033[0m"
  142.             sudo printf '%s\n' 'BUILD_NOCONFIRM=1' 'EDITFILES=0' >> ~/.yaourtrc
  143.             sleep 2
  144.  
  145.             # Install Programs #
  146.             ## >>> CURRENTLY WORKING ON <<< ##
  147.             echo ''
  148.             echo -e "\e[38;5;82mInstalling Pacman Programs...\033[0m"
  149.             sudo pacman -S geany thefuck filelight docky terminator firefox keepass obs-studio jack2-dbus pulseaudio-alsa pulseaudio-jack qemu virt-manager libvirt samba arandr gnome-disk-utility audacity nodejs python python-pip sshfs npm screenfetch fftw ncurses
  150.             sleep 2
  151.             echo -e "\e[95mInstalling Yaourt Programs...\033[0m"
  152.             echo -e ""
  153.             echo -e "\e[4m\e[1mPlease Note:\e[0m\e[1m Due to Yaourt's Annoying 'Ask about everything' nature,"
  154.             echo -e "\e[1mI will be Installing the following Programs without Confirmation:\e[0m"
  155.             echo -e ""
  156.             echo "cadence"
  157.             echo "ovmf-git"
  158.             echo "google-chrome"
  159.             echo "discord"
  160.             echo "synergy-free"
  161.             echo "grub-customizer"
  162.             echo "teamviewer"
  163.             echo "neofetch"
  164.             echo "cava"
  165.             echo -e ""
  166.             read -n 1 -s -p "Press any key to continue..."
  167.             echo -e ""
  168.             yaourt -S --noconfirm cadence ovmf-git google-chrome discord synergy-free grub-customizer teamviewer neofetch cava
  169.             sleep 2
  170.             echo -e ""
  171.             echo -e "Installing Speedtest-CLI"
  172.             echo -e ""
  173.             sudo pip install speedtest-cli
  174.             sleep 2
  175.  
  176.             # Copying samba & bashrc Config #
  177.             # WILL NOT WORK ON YOUR COMPUTER, PERSONAL COPIES ONLY
  178.             #echo ''
  179.             #echo -e "\e[93mPreparing Samba & bashrc Config File Copy...\033[0m"
  180.             #echo -e "\e[5m\e[30m\e[101mWARNING: Make sure External is mounted as /run/media/tyler/EXTERNAL\033[0m"
  181.             #echo ''
  182.             #read -n 1 -s -p "Press any key to continue..."
  183.             #echo ''
  184.             #sudo rm -rf /etc/samba/smb.conf
  185.             #sudo rm -rf ~/.bashrc
  186.             #echo -e "\e[93mCopying Samba & bashrc Config File:\033[0m"
  187.             #sudo cp /run/media/tyler/EXTERNAL/MAIN/Backups/Redstone\ Gaming\ Computer/Linux/Manual\ Backup/#Resetup\ Files/smb.conf /etc/samba/smb.conf
  188.             #sudo cp /run/media/tyler/EXTERNAL/MAIN/Backups/Redstone\ Gaming\ Computer/Linux/Manual\ Backup/#Resetup\ Files/bashrc ~/.bashrc
  189.             #source ~/.bashrc
  190.             break
  191.             ;;
  192.         "Install iGPU Drivers + Bumblebee")
  193.             # Install Graphics Drivers & Bumblebee #
  194.             echo ''
  195.             echo -e "\e[35mPreparing Graphics Drivers & Bumblebee Installation...\033[0m"
  196.             read -n 1 -s -p "press ENTER to Continue, CTRL+C to cancel..."
  197.             echo ''
  198.             echo ''
  199.             echo  -e "\e[1;5m\e[38;5;1mNow Starting Graphics Drivers Installation:\033[0m"
  200.             sudo pacman -S bumblebee mesa mesa-libgl lib32-mesa vulkan-intel xf86-video-intel nvidia nvidia-utils lib32-virtualgl lib32-nvidia-utils
  201.             sleep 2
  202.             echo -e "\e[39mRemoving Nvidia-Libgl & Installing Mesa-Libgl...\033[0m"
  203.             sudo pacman -Rns lib32-nvidia-libgl
  204.             sudo pacman -S lib32-mesa-libgl
  205.  
  206.             # Bumblebee Group & Services Setup #
  207.             echo ''
  208.             echo -e "\e[93mSetting up Bumblebee Group & Services\033[0m"
  209.             sudo gpasswd -a tyler bumblebee
  210.             sleep 2
  211.             sudo systemctl enable bumblebeed.service
  212.             sudo systemctl start bumblebeed.service
  213.             echo ''
  214.             echo ''
  215.             echo ''
  216.             break
  217.             ;;
  218.         "Install only iGPU Drivers")
  219.             echo ''
  220.             echo -e "\e[35mPreparing iGPU Drivers Installation...\033[0m"
  221.             read -n 1 -s -p "press ENTER to Continue, CTRL+C to cancel..."
  222.             echo ''
  223.             echo ''
  224.             echo  -e "\e[1;5m\e[38;5;1mNow Starting Graphics Drivers Installation:\033[0m"
  225.             sudo pacman -S mesa mesa-libgl lib32-mesa vulkan-intel xf86-video-intel
  226.             break
  227.             ;;
  228.         "Quit")
  229.             break
  230.             ;;
  231.         *) echo invalid option;;
  232.     esac
  233. done
  234.  
  235.  
  236. # End Script #
  237. echo -e "\e[30m\e[42mEND SCRIPT :)\033[0m"
  238. paplay /usr/share/sounds/freedesktop/stereo/complete.oga
Advertisement
Add Comment
Please, Sign In to add comment