de Small Owl, 3 años han pasado desde su publicación, escrito en Plain Text.
  1. #!/bin/bash
  2. # 10-July-2013: Now using pkgCacheClean instead of CacheClean. It uses
  3. # pacman's version checking method.
  4. #
  5. # 11-June-2013: Made Option 1. available (it is useful on the odd occasion).
  6. # Made the display more informative during the progress of each option.
  7. #
  8. # 13-May-2013: Removed the ability for Option 1. to be run standalone,
  9. # due to having been told to read this:
  10. # https://wiki.archlinux.org/index.php/Pacman#Partial_upgrades_are_unsupported
  11. #
  12. # 27-April-2013: Updated to use the new pacman-mirrors -g to rankmirrors. :)
  13. #
  14. # allservers.sh - inspired by Manjaro's Carl & Phil, initially hung together
  15. # by handy, the script's display prettied up & progress information added by Phil,
  16. # the menu & wiki page added by handy.
  17. # Latest revision now calls everything via the menu.
  18. # The following wiki page is about this script:
  19. # http://wiki.manjaro.org/index.php/Allservers.sh_Script:-_Rankmirrors,_Synchronise_Pacman_Database
  20. # Following wiki page will introduce pkgCacheClean & related information:
  21. # http://wiki.manjaro.org/index.php/Maintaining_/var/cache/pacman/pkg_for_System_Safety
  22. #___________________________________________________________
  23. #
  24. # allservers.sh is now completely menu driven. The Menu describes
  25. # what it does for you, if you need more detail see the two
  26. # wiki page links listed above.
  27. # 28-October-2013: Translate to Spanish by Enrique K|Ke
  28. ###########################################################
  29.  
  30. err() {
  31.    ALL_OFF="\e[1;0m"
  32.    BOLD="\e[1;1m"
  33.    RED="${BOLD}\e[1;31m"
  34.         local mesg=$1; shift
  35.         printf "${RED}==>${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
  36. }
  37.  
  38. msg() {
  39.    ALL_OFF="\e[1;0m"
  40.    BOLD="\e[1;1m"
  41.    GREEN="${BOLD}\e[1;32m"
  42.         local mesg=$1; shift
  43.         printf "${GREEN}==>${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
  44. }
  45.  
  46.  
  47. # El Menú:
  48.  
  49. clear # Limpia la pantalla.
  50.  
  51. echo
  52. echo -e "\033[1m                      allservers.sh \033[0m"
  53. echo
  54. echo -e "\e[1;32m    Ingrese el número de la opción elegida o presione Enter para salir. "
  55. echo
  56. echo
  57. echo  "    [1] Rankeado de los servidores espejo & refresco de la lista de espejos: pacman-mirrors -g "
  58. echo  "        & luego sincroniza y refresca la lista de paquetes: pacman -Syy "
  59. echo  " Esta opción debería usarse con cuidado, por favor lea el porqué aquí: "
  60. echo  " https://wiki.archlinux.org/index.php/Pacman#Partial_upgrades_are_unsupported "
  61. echo
  62. echo  "    [2] Opción 1. más la actualización del Sistema: pacman -Syu "
  63. echo  "        & luego correr pkgCacheClean: pkgcacheclean "
  64. echo
  65. echo  "    [3] Opción 1. más la actualización del Sistema & AUR: yaourt -Syua "
  66. echo  "        & luego correr pkgCacheClean: pkgcacheclean "
  67. echo
  68. echo  "    [4] Solamente actualización del Sistema: pacman -Syu "
  69. echo  "        & luego corre pkgCacheClean: pkgcacheclean "
  70. echo
  71. echo  "    [5] Solamente actualización del Sistema & AUR: yaourt - Syua "
  72. echo  "        & luego corre pkgCacheClean: pkgcacheclean "
  73. echo
  74. echo  "         Para conocer más acerca de pkgCacheClean, lea aquí: "
  75. echo -e "       http://wiki.manjaro.org/index.php/Maintaining_/var/cache/pacman/pkg_for_System_Safety \033[0m"
  76. echo
  77. echo -e "\033[1m  Ingrese su elección: \033[0m"
  78. echo    
  79.  
  80. read option
  81.  
  82. case "$option" in
  83. # Note variable is quoted.
  84.  
  85.  "1")
  86.  echo
  87.  msg "Procesando los servidores espejo:"
  88.  echo
  89.  pacman-mirrors -g
  90.  echo
  91.  msg "Sus espejos se encuentran rankeados &"
  92.  msg "la mirrorlist se encuentra refrescada."
  93.  echo
  94.  msg "Refrescando su base de datos Pacman:"
  95.  pacman -Syy
  96.  echo
  97.  msg "Sus espejos & base de datos de paquetes están ahora sincronizados."
  98.  echo
  99.  ;;
  100. # Note double semicolon to terminate each option.
  101.  
  102.  "2")
  103.  echo
  104.  msg "Procesando los servidores espejo:"
  105.  echo
  106.  pacman-mirrors -g
  107.  echo
  108.  msg "Sus espejos se encuentran rankeados &"
  109.  msg "la mirrorlist se encuentra refrescada."
  110.  echo
  111.  msg "Refrescando su base de datos Pacman:"
  112.  pacman -Syy
  113.  echo
  114.  msg "Sus espejos & base de datos de paquetes están ahora sincronizados."
  115.  echo
  116.  msg "Actualizando el Sistema:"
  117.  echo
  118.  pacman -Syu
  119.  echo
  120.  msg "Sistema completamente actualizado."
  121.  echo
  122.  msg "pkgCacheClean eliminará ahora todo salvo las 2 versiones "
  123.  msg "más recientes de la instalación de paquetes en "
  124.  msg "/var/cache/pacman/pkg directory:"
  125.  echo
  126.  pkgcacheclean
  127.  echo
  128.  msg "pkgCacheClean ha finalizado el trabajo. "
  129.  echo
  130.  ;;
  131. # Note double semicolon to terminate each option.
  132.  
  133.  "3")
  134.  echo
  135.  msg "Procesando los servidores espejo:"
  136.  echo
  137.  pacman-mirrors -g
  138.  echo
  139.  msg "Sus espejos se encuentran rankeados &"
  140.  msg "la mirrorlist se encuentra refrescada."
  141.  echo
  142.  msg "Refrescando su base de datos Pacman:"
  143.  pacman -Syy
  144.  echo
  145.  msg "Sus espejos & base de datos de paquetes están ahora sincronizados."
  146.  echo
  147.  msg "Actualizando el Sistema & AUR:"
  148.  echo
  149.  yaourt -Syua
  150.  echo
  151.  msg "Su Sistema incluyendo AUR se encuentra actualizado."
  152.  echo
  153.  msg "pkgCacheClean eliminará ahora todo salvo las 2 versiones "
  154.  msg "más recientes de la instalación de paquetes en "
  155.  msg "/var/cache/pacman/pkg directory:"
  156.  echo
  157.  pkgcacheclean
  158.  echo
  159.  msg "pkgCacheClean ha finalizado el trabajo. "
  160.  echo
  161.  ;;
  162. # Note double semicolon to terminate each option.
  163.  
  164.  "4")
  165.  echo
  166.  msg "Actualizando el Sistema & AUR:"
  167.  echo
  168.  yaourt -Syu
  169.  echo
  170.  msg "Su Sistema incluyendo AUR se encuentra actualizado."
  171.  echo
  172.  msg "pkgCacheClean eliminará ahora todo salvo las 2 versiones "
  173.  msg "más recientes de la instalación de paquetes en "
  174.  msg "/var/cache/pacman/pkg directory:"
  175.  echo
  176.  pkgcacheclean
  177.  echo
  178.  msg "pkgCacheClean ha finalizado el trabajo. "
  179.  echo
  180.  ;;
  181. # Note double semicolon to terminate each option.
  182.  
  183.  "5")
  184.  echo
  185.  msg "Actualizando el Sistema & AUR:"
  186.  echo
  187.  yaourt -Syua
  188.  echo
  189.  msg "Su Sistema incluyendo AUR se encuentra actualizado."
  190.  echo
  191.  msg "pkgCacheClean eliminará ahora todo salvo las 2 versiones "
  192.  msg "más recientes de la instalación de paquetes en "
  193.  msg "/var/cache/pacman/pkg directory:"
  194.  echo
  195.  pkgcacheclean
  196.  echo
  197.  msg "pkgCacheClean ha finalizado el trabajo. "
  198.  echo
  199.  ;;
  200. # Note double semicolon to terminate each option.
  201.  
  202. esac
  203.  
  204. exit 0