Advertisement
Rnery

changing strategy

Oct 31st, 2023 (edited)
910
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.97 KB | Source Code | 0 0
  1. #!/usr/bin/env bash
  2.  
  3. REPO_URL="https://github.com/dmo60/CoverflowAltTab.git"
  4. EXTENSION_DIR="$HOME/CoverflowAltTab"
  5.  
  6. execute_command() {
  7.     local command="$1"
  8.     local message="$2"
  9.     echo "$message"
  10.     if ! $command; then
  11.         echo "Erro ao executar o comando: $command"
  12.         exit 1
  13.     fi
  14. }
  15.  
  16. check_git_connectivity() {
  17.     execute_command "git ls-remote \"$REPO_URL\" &>/dev/null" "Verificando a conectividade com o servidor Git..."
  18. }
  19.  
  20. install_git_if_needed() {
  21.     if ! command -v git &>/dev/null; then
  22.         echo "Git não encontrado. Instalando..."
  23.         execute_command "sudo apt-get update && sudo apt-get install git -y"
  24.     fi
  25. }
  26.  
  27. clone_extension() {
  28.     if [ -d "$EXTENSION_DIR" ]; then
  29.         echo "A extensão já está clonada. Pulando etapa de clonagem."
  30.         return
  31.     fi
  32.    
  33.     execute_command "git clone \"$REPO_URL\" \"$EXTENSION_DIR\"" "Clonando repositório..."
  34. }
  35.  
  36. update_extension() {
  37.     if [ ! -d "$EXTENSION_DIR" ]; then
  38.         echo "O diretório da extensão não existe. Certifique-se de clonar corretamente antes de instalar."
  39.         return
  40.     fi
  41.    
  42.     execute_command "git -C \"$EXTENSION_DIR\" pull origin master" "Atualizando repositório..."
  43. }
  44.  
  45. install_extension() {
  46.     execute_command "make -C \"$EXTENSION_DIR\" && make -C \"$EXTENSION_DIR\" install && make -C \"$EXTENSION_DIR\" enable" "Instalando extensão..."
  47. }
  48.  
  49. restart_muffin_window_manager() {
  50.     execute_command "muffin --replace &" "Reiniciando o gerenciador de janelas Muffin..."
  51. }
  52.  
  53. main() {
  54.     echo "Iniciando a instalação da extensão Coverflow Alt-Tab..."
  55.  
  56.     install_git_if_needed
  57.     check_git_connectivity
  58.  
  59.     if [ -d "$EXTENSION_DIR" ]; then
  60.         update_extension
  61.     else
  62.         clone_extension
  63.     fi
  64.  
  65.     install_extension
  66.     restart_muffin_window_manager
  67.  
  68.     echo "A extensão Coverflow Alt-Tab foi instalada e ativada. Reinicie a sessão ou faça logoff e login para aplicar as alterações."
  69. }
  70.  
  71. main
  72.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement