INSTALL 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. #!/usr/bin/env bash
  2. # INFO-----------------------------------------------------------------
  3. # Distro Down - Baixe e grave ISO's facilmente.
  4. # Copyright (C) 2018 <Guilherme Machado>
  5. # Free Software Foundation, Inc.
  6. # ---------------------------------------------------------------------
  7. #
  8. # Nome: Distro Down Installer
  9. # Autor: Guilherme Felix Machado
  10. # Contato: < machadofguilherme@gmail.com >
  11. # Desenvolvido em: 9 de Julho de 2018
  12. # Versão: 0.2
  13. #----------------------------------------------------------------------
  14. # VARIÁVEIS -----------------------------------------------------------
  15. tempo="5"
  16. aviso="Distro Down está sendo instalado em seu sistema. Aguarde..."
  17. # ---------------------------------------------------------------------
  18. # CORES --------------------------------------------------------------
  19. vermelho=$(tput setaf 1)
  20. fecha_cor=$'\E[m'
  21. # --------------------------------------------------------------------
  22. # FUNÇÕES -------------------------------------------------------------
  23. carregador () {
  24. # Porcentagem de progresso.
  25. typeset t
  26. t="0"
  27. while sleep 0.5; do
  28. echo -ne "\r ${vermelho}[${fecha_cor} \E[34;1m${t}% ${vermelho}]${fecha_cor}"
  29. ((t++))
  30. [ "$t" = 101 ] && break
  31. done
  32. }
  33. ctrl_c () {
  34. # Cancelamento com tecla CTRL+C.
  35. printf "\n\n\t${vermelho}Cancelando operações. Saindo...${fecha_cor}\n\n"
  36. rm /usr/bin/distrodown
  37. rm -rf /usr/lib/distrodown/
  38. sleep 3s
  39. exit 0
  40. }
  41. # ---------------------------------------------------------------------
  42. # BLOCO DE TESTES -----------------------------------------------------
  43. if [ "$UID" != "0" ]; then
  44. echo -ne "\n\t\E[31;1mLogue-se como usuário root para continuar.\E[m\n"
  45. exit 1
  46. fi
  47. # ---------------------------------------------------------------------
  48. # MAIN PROGRAM --------------------------------------------------------
  49. trap ctrl_c INT
  50. printf "
  51. \n\E[31;1m
  52. D D D DDDD DDDDD D DD D DDDD
  53. iDDD D DDDf DDD DD tDDD GD D D D; DDf D D D D
  54. D D D D D , D D D D D D .D D D D D DD D
  55. D D D ttD D , D D D DD D D D D D D D D D
  56. DDDD D DDDD DD , DDDD DDDD DDDDD DDD DDD D DDD
  57. \E[32;1mExecutável de instalação.\n\n \
  58. \E[34m
  59. Seja bem-vindo ao instalador do Distro Down. Com esse
  60. aplicativo você poderá baixar qualquer ISO de sua dis-
  61. tribuição favorita e posteriormente gravá-la em um dis-
  62. positivo USB se esse for o seu desejo.
  63. Para mais informações, visite o repositório de desen-
  64. volvimento:
  65. https://notabug.org/colorado/distrodown \E[m
  66. "
  67. while true; do
  68. # Contagem regressiva para opções.
  69. printf " \r${tempo}..."
  70. ((tempo--))
  71. sleep 1s
  72. [ "$tempo" -eq 0 ] && break
  73. done
  74. echo -ne "\n\nDeseja continuar com a instalação? [S/n] " && read resposta
  75. # Instalação.
  76. if [ "$resposta" = "S" ] || \
  77. [ "$resposta" = "s" ] || \
  78. [ "$resposta" = "" ]; then
  79. clear && sleep 3s
  80. cp distrodown /usr/bin/
  81. mkdir -p /usr/lib/distrodown/
  82. cp libs/* /usr/lib/distrodown/
  83. chmod +x /usr/bin/distrodown
  84. printf "
  85. \t ${aviso}" && carregador
  86. sleep 5s; echo
  87. printf "\n\nA instalação foi concluída com êxito!\n\n"
  88. exit 0
  89. else
  90. printf "
  91. ${vermelho}Abortando...${fecha_cor}\n\n" && sleep 3s
  92. clear && exit 0
  93. fi
  94. # ----------------------------------------------------------------------