From fb4c133cff82814990e28285a0189288d6f29791 Mon Sep 17 00:00:00 2001 From: fearlessgeekmedia Date: Fri, 28 Oct 2022 12:36:16 -0400 Subject: [PATCH 1/3] Created a setup script for Arch and Arch-based distributions --- setup-arch.sh | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100755 setup-arch.sh diff --git a/setup-arch.sh b/setup-arch.sh new file mode 100755 index 0000000..cc63638 --- /dev/null +++ b/setup-arch.sh @@ -0,0 +1,68 @@ +#!/bin/bash + +RC='\e[0m' +RED='\e[31m' +YELLOW='\e[33m' +GREEN='\e[32m' + +checkEnv(){ + ## Check if the current directory is writable. + GITPATH="$(dirname "$(realpath "$0")")" + if [[ ! -w ${GITPATH} ]];then + echo -e "${RED}Can't write to ${GITPATH}${RC}" + exit 1 + fi + + ## Check for requirements. + REQUIREMENTS='curl yay groups sudo' + if ! which ${REQUIREMENTS}>/dev/null;then + echo -e "${RED}To run me,https://github.com/fearlessgeekmedia/mybash you need: ${REQUIREMENTS}${RC}" + exit 1 + fi + + ## Check if member of the sudo group. + if ! groups|grep wheel>/dev/null;then + echo -e "${RED}You need to be a member of the sudo wheel to run me!" + exit 1 + fi +} + +installDepend(){ + ## Check for dependencies. + DEPENDENCIES='autojump bash bash-completion' + echo -e "${YELLOW}Installing dependencies...${RC}" + sudo yay -S ${DEPENDENCIES} +} + +installStarship(){ + if ! curl -sS https://starship.rs/install.sh|sh;then + echo -e "${RED}Something went wrong during starship install!${RC}" + exit 1 + fi +} + +linkConfig(){ + ## Check if a bashrc file is already there. + OLD_BASHRC="${HOME}/.bashrc" + if [[ -e ${OLD_BASHRC} ]];then + echo -e "${YELLOW}Moving old bash config file to ${HOME}/.bashrc.bak${RC}" + if ! mv ${OLD_BASHRC} ${HOME}/.bashrc.bak;then + echo -e "${RED}Can't move the old bash config file!${RC}" + exit 1 + fi + fi + + echo -e "${YELLOW}Linking new bash config file...${RC}" + ## Make symbolic link. + ln -svf ${GITPATH}/.bashrc ${HOME}/.bashrc + ln -svf ${GITPATH}/starship.toml ${HOME}/.config/starship.toml +} + +checkEnv +installDepend +installStarship +if linkConfig;then + echo -e "${GREEN}Done!\nrestart your shell to see the changes.${RC}" +else + echo -e "${RED}Something went wrong!${RC}" +fi From 258e1504e53f594577ac906bb5a6f0581f3d039e Mon Sep 17 00:00:00 2001 From: fearlessgeekmedia Date: Fri, 28 Oct 2022 13:09:08 -0400 Subject: [PATCH 2/3] fixed problems in the mybash arch install script I made --- setup-arch.sh | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/setup-arch.sh b/setup-arch.sh index cc63638..4c88833 100755 --- a/setup-arch.sh +++ b/setup-arch.sh @@ -14,24 +14,31 @@ checkEnv(){ fi ## Check for requirements. - REQUIREMENTS='curl yay groups sudo' + REQUIREMENTS='curl yay sudo' if ! which ${REQUIREMENTS}>/dev/null;then echo -e "${RED}To run me,https://github.com/fearlessgeekmedia/mybash you need: ${REQUIREMENTS}${RC}" exit 1 fi - ## Check if member of the sudo group. + ## Check if member of the wheel group. if ! groups|grep wheel>/dev/null;then - echo -e "${RED}You need to be a member of the sudo wheel to run me!" + echo -e "${RED}You need to be a member of the wheel to run me!" exit 1 fi } installDepend(){ ## Check for dependencies. - DEPENDENCIES='autojump bash bash-completion' + # For some reason, if I put autojump in the original DEPENCENCIES variable, + # it skips the installation and just does bash and bash completion. So I + # put autojump in a separate variable and separate yay command. + DEPENDENCIES1='bash bash-completion' + DEPENDENCIES2='autojump' echo -e "${YELLOW}Installing dependencies...${RC}" - sudo yay -S ${DEPENDENCIES} + yay -S ${DEPENDENCIES1} + yay -S ${DEPENDENCIES2} + sudo mkdir /usr/local/bin/autojump + sudo ln -s /etc/profile.d/autojump.sh /usr/share/autojump/autojump.sh } installStarship(){ From 50d9d5945fe86831a633f3a6ca4188769a423415 Mon Sep 17 00:00:00 2001 From: Robin Stevens Date: Mon, 31 Oct 2022 09:39:31 +0100 Subject: [PATCH 3/3] typo --- setup-arch.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup-arch.sh b/setup-arch.sh index 4c88833..9f0ee16 100755 --- a/setup-arch.sh +++ b/setup-arch.sh @@ -29,7 +29,7 @@ checkEnv(){ installDepend(){ ## Check for dependencies. - # For some reason, if I put autojump in the original DEPENCENCIES variable, + # For some reason, if I put autojump in the original DEPENDENCIES variable, # it skips the installation and just does bash and bash completion. So I # put autojump in a separate variable and separate yay command. DEPENDENCIES1='bash bash-completion'