diff --git a/install.sh b/install.sh index 250ac844..f664cbf4 100755 --- a/install.sh +++ b/install.sh @@ -100,25 +100,29 @@ if [ $dist == 2 ]; then fi # Install Icon theme -if ls /usr/share/icons/ | grep -i Papirus &>/dev/null; then - echo -e "${GREEN}[i] Icon theme is installed.${ENDCOLOR}" -else - echo -e "${GREEN}[+] Downloading Papirus icon theme...${ENDCOLOR}" - wget -qO- https://git.io/papirus-icon-theme-install | sh - wget -qO- https://git.io/papirus-folders-install | sh - papirus-folders -C adwaita - gsettings set org.gnome.desktop.interface icon-theme 'Papirus-Dark' - echo -e "${GREEN}[i] Theme is set.${ENDCOLOR}" +if [ $dist != 3 ]; then + if ls /usr/share/icons/ | grep -i Papirus &>/dev/null; then + echo -e "${GREEN}[i] Icon theme is installed.${ENDCOLOR}" + else + echo -e "${GREEN}[+] Downloading Papirus icon theme...${ENDCOLOR}" + wget -qO- https://git.io/papirus-icon-theme-install | sh + wget -qO- https://git.io/papirus-folders-install | sh + papirus-folders -C adwaita + gsettings set org.gnome.desktop.interface icon-theme 'Papirus-Dark' + echo -e "${GREEN}[i] Theme is set.${ENDCOLOR}" + fi fi # Install Cursor theme -if ls /usr/share/icons/ | grep -i bibata &>/dev/null; then - echo -e "${GREEN}[i] Cursor theme is installed.${ENDCOLOR}" -else - echo -e "${GREEN}[+] Downloading Bibata cursor theme...${ENDCOLOR}" - p i bibata-cursor-theme - gsettings set org.gnome.desktop.interface cursor-theme 'Bibata-Modern-Classic' - echo -e "${GREEN}[i] Cursor theme set.${ENDCOLOR}" +if [ $dist != 3 ]; then + if ls /usr/share/icons/ | grep -i bibata &>/dev/null; then + echo -e "${GREEN}[i] Cursor theme is installed.${ENDCOLOR}" + else + echo -e "${GREEN}[+] Downloading Bibata cursor theme...${ENDCOLOR}" + p i bibata-cursor-theme + gsettings set org.gnome.desktop.interface cursor-theme 'Bibata-Modern-Classic' + echo -e "${GREEN}[i] Cursor theme set.${ENDCOLOR}" + fi fi # Install Nerd Font @@ -141,37 +145,43 @@ else fi # Enable minimize button -echo -e "${GREEN}[+] Adding the minimize button...${ENDCOLOR}" -gsettings set org.gnome.desktop.wm.preferences button-layout ":minimize,close" +if [ $dist != 3 ]; then + echo -e "${GREEN}[+] Adding the minimize button...${ENDCOLOR}" + gsettings set org.gnome.desktop.wm.preferences button-layout ":minimize,close" +fi # Enable flatpak support -if p c flatpak &>/dev/null; then - echo -e "${GREEN}[i] Flatpaks are supported.${ENDCOLOR}" -else - if ask "Enable flatpak?"; then - echo -e "${GREEN}[+] Adding flatpak support...${ENDCOLOR}" - p i flatpak - flatpak install flatseal - sudo flatpak override --filesystem=$HOME/.themes - sudo flatpak override --filesystem=$HOME/.icons - echo -e "${GREEN}[+] Flatpak support added.${ENDCOLOR}" +if [ $dist != 3 ]; then + if p c flatpak &>/dev/null; then + echo -e "${GREEN}[i] Flatpaks are supported.${ENDCOLOR}" else - echo -e "${RED}[i] Cancelled.${ENDCOLOR}" + if ask "Enable flatpak?"; then + echo -e "${GREEN}[+] Adding flatpak support...${ENDCOLOR}" + p i flatpak + flatpak install flatseal + sudo flatpak override --filesystem=$HOME/.themes + sudo flatpak override --filesystem=$HOME/.icons + echo -e "${GREEN}[+] Flatpak support added.${ENDCOLOR}" + else + echo -e "${RED}[i] Cancelled.${ENDCOLOR}" + fi fi fi # Install Timeshift -if p c flatpak &>/dev/null; then - echo -e "${GREEN}[i] Timeshift is installed.${ENDCOLOR}" -else - if ask "Install Timeshift?"; then - echo -e "${GREEN}[+] Installing Timeshift...${ENDCOLOR}" - p i timeshift - sudo systemctl enable cronie - sudo systemctl start cronie - echo -e "${GREEN}[i] Timeshift installed.${ENDCOLOR}" +if [ $dist != 3 ]; then + if p c timeshift &>/dev/null; then + echo -e "${GREEN}[i] Timeshift is installed.${ENDCOLOR}" else - echo -e "${RED}[i] Cancelled.${ENDCOLOR}" + if ask "Install Timeshift?"; then + echo -e "${GREEN}[+] Installing Timeshift...${ENDCOLOR}" + p i timeshift + sudo systemctl enable cronie + sudo systemctl start cronie + echo -e "${GREEN}[i] Timeshift installed.${ENDCOLOR}" + else + echo -e "${RED}[i] Cancelled.${ENDCOLOR}" + fi fi fi diff --git a/macos.sh b/macos.sh new file mode 100644 index 00000000..4c01c3fd --- /dev/null +++ b/macos.sh @@ -0,0 +1,12 @@ +#! /bin/bash + +# Install brew +/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" + +# Add brew to path +(echo; echo 'eval "$(/opt/homebrew/bin/brew shellenv)"') > /Users/trude/.zprofile +eval "$(/opt/homebrew/bin/brew shellenv)" +echo 'PATH="/usr/local/bin:$PATH"' > ~/.bash_profile + +# Install VScode +brew install visual-studio-code diff --git a/scripts/color.sh b/scripts/color.sh old mode 100644 new mode 100755 diff --git a/scripts/macos-maintenance.sh b/scripts/macos-maintenance.sh new file mode 100755 index 00000000..5ade4d7b --- /dev/null +++ b/scripts/macos-maintenance.sh @@ -0,0 +1,6 @@ +#! /bin/bash + +brew doctor +brew update +brew upgrade +brew list diff --git a/scripts/p.sh b/scripts/p.sh index 6c7eb867..63b598ff 100755 --- a/scripts/p.sh +++ b/scripts/p.sh @@ -9,16 +9,22 @@ d() { elif [ "$(grep -Ei 'arch|manjaro|artix' /etc/*release)" ]; then echo 2 else - echo 0 + if [ "$(uname -s)" = "Darwin" ]; then + echo 3 + else + echo 0 + fi fi } m() { d=$(d) - if [ $d == 2 ]; then + if [ $d -eq 2 ]; then ~/dotfiles/scripts/arch-maintenance.sh - elif [ $d == 1 ]; then + elif [ $d -eq 1 ]; then ~/dotfiles/scripts/debian-maintenance.sh + elif [ $d -eq 3 ]; then + ~/dotfiles/scripts/macos-maintenance.sh else echo -e "${RED}[E] Distro not supported.${ENDCOLOR}" return 1 @@ -27,12 +33,13 @@ m() { p() { # Detect distro type - if [ "$(grep -Ei 'debian|buntu|mint' /etc/*release)" ]; then + d=$(d) + if [ $d -eq 1 ]; then distro="DEB" update="sudo apt update; sudo apt upgrade; sudo apt autoremove" install="sudo apt install" remove="sudo apt remove" - elif [ "$(grep -Ei 'arch|manjaro|artix' /etc/*release)" ]; then + elif [ $d -eq 2 ]; then if pacman -Qs paru >/dev/null; then update="paru -Syu" install="paru -S" @@ -43,6 +50,11 @@ p() { remove="sudo pacman -R" fi distro="ARCH" + elif [ $d -eq 3 ]; then + distro="MAC" + update="brew update; brew upgrade" + install="brew install" + remove="brew uninstall" else echo "[E] Distro not supported." return 1 @@ -56,68 +68,68 @@ p() { fi # If no parameter - if [ -z $1 ] || [ $1 == "u" ]; then - echo -e "${GREEN}"[+] Updating distro packages..."${ENDCOLOR}" - $update + if [ -z $1 ] || [ $1 = "u" ]; then + echo -e "${GREEN}[+] Updating packages...${ENDCOLOR}" + bash -c $update if $flatpak; then echo - echo -e "${GREEN}"[+] Updating flatpaks..."${ENDCOLOR}" + echo -e "${GREEN}[+] Updating flatpaks...${ENDCOLOR}" flatpak upgrade fi - echo -e "${GREEN}"[i] done."${ENDCOLOR}" + echo -e "${GREEN}[i] done.${ENDCOLOR}" return 0 - elif [ $1 == "i" ]; then # If first parameter is i (install) - echo -e "${GREEN}"[+] Searching for $2 on the distro repos..."${ENDCOLOR}" - $install $2 - if [ $? == 0 ]; then - echo -e "${GREEN}"[i] $2 installed."${ENDCOLOR}" + elif [ $1 = "i" ]; then # If first parameter is i (install) + echo -e "${GREEN}[+] Searching for $2 on the repository...${ENDCOLOR}" + bash -c "$install $2" + if [ $? -eq 0 ]; then + echo -e "${GREEN}[i] $2 installed.${ENDCOLOR}" return 0 else if $flatpak; then echo - echo -e "${YELLOW}"[E] $2 not found."${ENDCOLOR}" - echo -e "${GREEN}"[+] Searching for $2 as a flatpak..."${ENDCOLOR}" + echo -e "${YELLOW}[E] $2 not found.${ENDCOLOR}" + echo -e "${GREEN}[+] Searching for $2 as a flatpak...${ENDCOLOR}" echo flatpak install $2 2>/dev/null - if [ $? == 0 ]; then - echo -e "${GREEN}"[i] $2 installed."${ENDCOLOR}" + if [ $? -eq 0 ]; then + echo -e "${GREEN}[i] $2 installed.${ENDCOLOR}" return 0 fi fi - echo -e "${RED}"[E] $2 not found or already installed."${ENDCOLOR}" + echo -e "${RED}[E] $2 not found or already installed.${ENDCOLOR}" return 2 fi - elif [ $1 == "r" ]; then # If first parameter is r (remove) - echo -e "${YELLOW}"[+] Removing $2..."${ENDCOLOR}" - $remove $2 - if [ $? == 0 ]; then - echo -e "${GREEN}"[i] $2 removed."${ENDCOLOR}" + elif [ $1 = "r" ]; then # If first parameter is r (remove) + echo -e "${YELLOW}[+] Removing $2...${ENDCOLOR}" + bash -c "$remove $2" + if [ $? -eq 0 ]; then + echo -e "${GREEN}[i] $2 removed.${ENDCOLOR}" return 0 else if $flatpak; then echo - echo -e "${YELLOW}"[E] $2 not found."${ENDCOLOR}" + echo -e "${YELLOW}[E] $2 not found.${ENDCOLOR}" echo "[+] Searching for $2 as a flatpak..." - echo -e "${GREEN}"[+] Searching for $2 as a flatpak..."${ENDCOLOR}" + echo -e "${GREEN}[+] Searching for $2 as a flatpak...${ENDCOLOR}" echo flatpak remove $2 2>/dev/null - if [ $? == 0 ]; then - echo -e "${GREEN}"[i] $2 removed."${ENDCOLOR}" + if [ $? -eq 0 ]; then + echo -e "${GREEN}[i] $2 removed.${ENDCOLOR}" return 0 fi fi - echo -e "${RED}"[E] $2 not found."${ENDCOLOR}" + echo -e "${RED}[E] $2 not found.${ENDCOLOR}" return 2 fi - elif [ $1 == "c" ]; then # If first parameter is c (check) - if [ "$distro" == "DEB" ]; then + elif [ $1 = "c" ]; then # If first parameter is c (check) + if [ "$distro" = "DEB" ]; then if dpkg-query -W -f='${Status}' $2 2>/dev/null | grep -q "install ok installed"; then echo true return 0 else if $flatpak; then flatpak list | grep $2 &>/dev/null - if [ $? == 0 ]; then + if [ $? -eq 0 ]; then echo true return 0 fi @@ -125,14 +137,14 @@ p() { echo false return 1 fi - elif [ "$distro" == "ARCH" ]; then + elif [ "$distro" = "ARCH" ]; then if pacman -Qs $2 >/dev/null; then echo true return 0 else if $flatpak; then flatpak list | grep -i $2 &>/dev/null - if [ $? == 0 ]; then + if [ $? -eq 0 ]; then echo true return 0 fi @@ -140,6 +152,14 @@ p() { echo false return 1 fi + elif [ "$distro" = "MAC" ]; then + if brew list | grep $2 >/dev/null; then + echo true + return 0 + else + echo false + return 1 + fi else echo 2 fi