spacepaste

  1.  
  2. #!/bin/bash
  3. #trigg.sh GENTOO TERMINAL MANAGER
  4. #Ringraziamenti a linuxminditalia sabayonino fedeliallalinea nessuno e nick-carter
  5. #EDITOR=leafpad
  6. #data 18/07/2018
  7. RED='\033[0;41;30m'
  8. STD='\033[0;0;39m'
  9. GREEN='\033[1;32;3m'
  10. PURPLE="\e[1;35m"
  11. LCYAN="\e[1;36m"
  12. ATTENZIONE="\e[0;31m"
  13. YELLOW="\e[1;33m"
  14. # ---------------------------------- PRIVILEGI-ROOT
  15. if [ "$EUID" -ne 0 ]
  16. then echo "Eseguire lo script con i permessi di amministratore (su o sudo)"
  17. exit
  18. fi
  19. # ---------------------------------- CERCA
  20. cerca(){
  21. clear
  22. echo -e "${PURPLE} ";
  23. echo -e "${PURPLE} 1) Aggiorna eix e cerca _/_/_/ _/ ";
  24. echo -e "${PURPLE} 2) Cerca _/ _/_/ _/_/_/ _/_/_/_/ _/_/ _/_/ ";
  25. echo -e "${PURPLE} _/ _/_/ _/_/_/_/ _/ _/ _/ _/ _/ _/ _/ ";
  26. echo -e "${LCYAN} 9) Menu ${PURPLE} _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ";
  27. echo -e "${PURPLE} _/_/_/ _/_/_/ _/ _/ _/_/ _/_/ _/_/ ";
  28. echo -e "${PURPLE} ";
  29. echo -e "${PURPLE} ";
  30. echo -e "${GREEN}"
  31. read -p " Scegli la tua operazione [1 - 2 - 9]:" Cerca
  32. echo -e "${STD}"
  33. case $Cerca in
  34. 1)
  35. echo -n " quale pacchetto vuoi cercare ? :>" ; read pack
  36. eix-update
  37. eix $pack
  38. echo
  39. echo -e "${YELLOW} !!! ESEGUITO !!! "
  40. echo
  41. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; cerca ;;
  42. 2)
  43. echo -n " quale pacchetto vuoi cercare ?>" ; read pack
  44. eix $pack
  45. echo
  46. echo -e "${YELLOW} !!! ESEGUITO !!! "
  47. echo
  48. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; cerca ;;
  49. 9) break ;;
  50. *)
  51. echo -e "${RED}Scelta non valida...${STD}" && sleep 2 ; cerca ;;
  52. esac
  53. }
  54. # ---------------------------------- APPLICAZIONI
  55. app(){
  56. clear
  57. echo -e "${PURPLE} 1) Installa da Portage Tree ";
  58. echo -e "${PURPLE} 2) Installa da Overlays _/_/_/ _/ ";
  59. echo -e "${PURPLE} 3) Disinstalla _/ _/_/ _/_/_/ _/_/_/_/ _/_/ _/_/ ";
  60. echo -e "${PURPLE} _/ _/_/ _/_/_/_/ _/ _/ _/ _/ _/ _/ _/ ";
  61. echo -e "${LCYAN} 9) Menu ${PURPLE} _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ";
  62. echo -e "${PURPLE} _/_/_/ _/_/_/ _/ _/ _/_/ _/_/ _/_/ ";
  63. echo -e "${PURPLE} ";
  64. echo -e "${PURPLE} ";
  65. echo -e "${GREEN}"
  66. read -p " Scegli la tua operazione [1 - 2 - 3 - 9]: " var
  67. echo -e "${STD}"
  68. case $var in
  69. 1)
  70. echo -n "pacchetto da installare " ; read INSTALLA ; emerge --ask $INSTALLA
  71. echo -e "${YELLOW} !!! ESEGUITO !!! "
  72. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; app ;;
  73. 2)
  74. echo "devi prima scaricare l'ebuild"
  75. echo "premi un tasto per continuare" ; read -n1
  76. cd ~/Scaricati/
  77. echo -n "Indica Categoria/Pacchetto dell'appilcazione da installare" ; read rp ; ls
  78. echo -n "Inserisci .ebuild " ; read ebuild
  79. mkdir -p /usr/local/portage/$rp ; cp $ebuild /usr/local/portage/$rp
  80. #mv $ebuild /mnt/DATI/gentoo/'installazione gentoo'/ebuild/
  81. cd /usr/local/portage/$rp ; repoman manifest
  82. emerge --ask $rp
  83. echo
  84. echo -e "${YELLOW} !!! ESEGUITO !!! "
  85. echo
  86. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; app ;;
  87. 3)
  88. echo -n "Indica categoria/pacchetto da rimuovere" ; read ctpr
  89. emerge --depclean --ask $ctpr
  90. echo
  91. echo -e "${YELLOW} !!! ESEGUITO !!! "
  92. echo
  93. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; app ;;
  94. 9) break ;;
  95. *)
  96. echo -e "${RED}Scelta non valida...${STD}" && sleep 2 ; cerca ;;
  97. esac
  98. }
  99. # ---------------------------------- USE-FLAG
  100. uf(){
  101. clear
  102. echo -e "${PURPLE} ";
  103. echo -e "${PURPLE} 1) Abilita Use-Flag _/_/_/ _/ ";
  104. echo -e "${PURPLE} 2) Disabilita Use-Flag _/ _/_/ _/_/_/ _/_/_/_/ _/_/ _/_/ ";
  105. echo -e "${PURPLE} _/ _/_/ _/_/_/_/ _/ _/ _/ _/ _/ _/ _/ ";
  106. echo -e "${LCYAN} 9) Menu ${PURPLE} _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ";
  107. echo -e "${PURPLE} _/_/_/ _/_/_/ _/ _/ _/_/ _/_/ _/_/ ";
  108. echo -e "${PURPLE} ";
  109. echo -e "${GREEN}"
  110. read -p " Scegli la tua operazione [1 - 2 - 9]: " var
  111. echo -e "${STD}"
  112. case $var in
  113. 1)
  114. echo -n "Indica Categoria/Pacchetto da ricompilare" ; read cpt
  115. echo -n "Indica Use-flag da abilitare" ; read use
  116. euse --enable $use --package $cpt ; emerge --ask --changed-use --deep @world
  117. echo -e "${YELLOW} !!! ESEGUITO !!! "
  118. echo
  119. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; uf ;;
  120. 2)
  121. echo -n "Indica Categoria/Pacchetto da ricompliare" ; read dcpt
  122. echo -n "Indica Use-flag da disabilitare" ; read duse
  123. euse --disable $duse --package $dcpt ; emerge --ask --changed-use --deep @world
  124. echo -e "${YELLOW} !!! ESEGUITO !!! "
  125. echo
  126. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; uf ;;
  127. 9) break ;;
  128. *)
  129. echo -e "${RED}Scelta non valida...${STD}" && sleep 2 ; cerca ;;
  130. esac
  131. }
  132. # ---------------------------------- AGGIORNA-SISTEMA
  133. as(){
  134. clear
  135. echo -e "${PURPLE} 1) Aggiorna Portage Tree ";
  136. echo -e "${PURPLE} 2) Aggiorna Pacchetti e Dipendenze _/_/_/ _/ ";
  137. echo -e "${PURPLE} 3) emerge --update --newuse --deep @world _/ _/_/ _/_/_/ _/_/_/_/ _/_/ _/_/ ";
  138. echo -e "${PURPLE} 4) emerge --ask --depclean _/ _/_/ _/_/_/_/ _/ _/ _/ _/ _/ _/ _/ ";
  139. echo -e "${PURPLE} 5) emerge @preserved-rebuild _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ";
  140. echo -e "${PURPLE} _/_/_/ _/_/_/ _/ _/ _/_/ _/_/ _/_/ ";
  141. echo -e "${LCYAN} 9) Menu ${PURPLE} ";
  142. echo -e "${GREEN}"
  143. read -p " Scegli la tua operazione [1 - 2 - 3 - 4 - 5 - 9]: " var
  144. echo -e "${STD}"
  145. case $var in
  146. 1)
  147. emerge --sync
  148. echo -e "${YELLOW} !!! ESEGUITO !!! "
  149. echo
  150. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; as ;;
  151. 2)
  152. echo -e " $ATTENZIONE Stai per lanciare $RED emerge --update --changed-use --deep --with-bdeps=y @world
  153. $ATTENZIONE Premi [s] per Continuare , un'altro tasto per tornare alle scelte"
  154. read -sn 1
  155. if [ "$REPLY" = "s" -o "$REPLY" = "S" ]
  156. then
  157. emerge --update --changed-use --deep --with-bdeps=y @world
  158. echo -e "${YELLOW} !!! ESEGUITO !!! "
  159. echo
  160. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; as
  161. else
  162. as
  163. fi
  164. ;;
  165. 3)
  166. echo -e " $ATTENZIONE Stai per lanciare $RED emerge --update --newuse --deep @world
  167. $ATTENZIONE Premi [s] per Continuare , un'altro tasto per tornare alle scelte"
  168. read -sn 1
  169. if [ "$REPLY" = "s" -o "$REPLY" = "S" ]
  170. then
  171. emerge --update --newuse --deep @world
  172. echo -e "${YELLOW} !!! ESEGUITO !!! "
  173. echo
  174. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; as
  175. else
  176. as
  177. fi
  178. ;;
  179. 4)
  180. echo -e " $ATTENZIONE Stai per lanciare $RED emerge --ask --depclean
  181. $ATTENZIONE Premi [s] per Continuare , un'altro tasto per tornare alle scelte"
  182. read -sn 1
  183. if [ "$REPLY" = "s" -o "$REPLY" = "S" ]
  184. then
  185. emerge --ask --depclean
  186. echo -e "${YELLOW} !!! ESEGUITO !!! "
  187. echo
  188. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; as
  189. else
  190. as
  191. fi
  192. ;;
  193. 5)
  194. echo -e " $ATTENZIONE Stai per lanciare $RED emerge @preserved-rebuild
  195. $ATTENZIONE Premi [s] per Continuare , un'altro tasto per tornare alle scelte"
  196. read -sn 1
  197. if [ "$REPLY" = "s" -o "$REPLY" = "S" ]
  198. then
  199. emerge @preserved-rebuild
  200. echo -e "${YELLOW} !!! ESEGUITO !!! "
  201. echo
  202. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; as
  203. else
  204. as
  205. fi
  206. ;;
  207. 9) break ;;
  208. *)
  209. echo -e "${RED}Scelta non valida...${STD}" && sleep 2 ; cerca ;;
  210. esac
  211. }
  212. # ---------------------------------- PULIZIA-SISTEMA
  213. ps(){
  214. clear
  215. echo -e "${PURPLE} 1) Pulizia /var/tmp/portage ";
  216. echo -e "${PURPLE} 2) Esegui eclean-dist _/_/_/ _/ ";
  217. echo -e "${PURPLE} _/ _/_/ _/_/_/ _/_/_/_/ _/_/ _/_/ ";
  218. echo -e "${PURPLE} _/ _/_/ _/_/_/_/ _/ _/ _/ _/ _/ _/ _/ ";
  219. echo -e "${LCYAN} 9) Menu ${PURPLE} _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ";
  220. echo -e "${PURPLE} _/_/_/ _/_/_/ _/ _/ _/_/ _/_/ _/_/ ";
  221. echo -e "${PURPLE} ";
  222. echo -e "${PURPLE} ";
  223. echo -e "${GREEN}"
  224. read -p " Scegli la tua operazione [1 - 2 - 9]:" var
  225. echo -e "${STD}"
  226. case $var in
  227. 1)
  228. echo "stai per eliminare le cartelle in /var/tmp/portage/ "
  229. echo " premi un tasto per continuare" ; read -n1
  230. /usr/bin/find /var/tmp/portage/ -mindepth 1 -maxdepth 1 -exec /bin/rm -rf {} +;
  231. echo -e "${YELLOW} !!! ESEGUITO !!! "
  232. echo
  233. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; ps ;;
  234. 2)
  235. echo "stai per eseguire eclean-dist"
  236. echo "premi un tasto per continuare" ; read -n1
  237. eclean-dist
  238. echo -e "${YELLOW} !!! ESEGUITO !!! "
  239. echo
  240. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; ps ;;
  241. 9) break ;;
  242. *)
  243. echo -e "${RED}Scelta non valida...${STD}" && sleep 2 ; cerca ;;
  244. esac
  245. }
  246. # ---------------------------------- NEWS
  247. news(){
  248. clear
  249. echo -e "${PURPLE} 1) Leggi Vecchie News ";
  250. echo -e "${PURPLE} 2) Leggi Nuove News _/_/_/ _/ ";
  251. echo -e "${PURPLE} 3) Lista delle News _/ _/_/ _/_/_/ _/_/_/_/ _/_/ _/_/ ";
  252. echo -e "${PURPLE} 4) Cancella News _/ _/_/ _/_/_/_/ _/ _/ _/ _/ _/ _/ _/ ";
  253. echo -e "${PURPLE} _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ";
  254. echo -e "${PURPLE} _/_/_/ _/_/_/ _/ _/ _/_/ _/_/ _/_/ ";
  255. echo -e "${LCYAN} 9) Menu ${PURPLE} ";
  256. echo -e "${PURPLE} ";
  257. echo -e "${GREEN}"
  258. read -p " Scegli la tua operazione [1 - 2 - 9]:" var
  259. echo -e "${STD}"
  260. case $var in
  261. 1)
  262. eselect news read
  263. echo -e "${YELLOW} !!! ESEGUITO !!! "
  264. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; news ;;
  265. 2)
  266. eselect news read new
  267. echo -e "${YELLOW} !!! ESEGUITO !!! "
  268. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; news ;;
  269. 3)
  270. eselect news list
  271. echo -e "${YELLOW} !!! ESEGUITO !!! "
  272. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; news ;;
  273. 4)
  274. eselect news purge
  275. echo -e "${YELLOW} !!! ESEGUITO !!! "
  276. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; news ;;
  277. 9) break ;;
  278. *)
  279. echo -e "${RED}Scelta non valida...${STD}" && sleep 2 ; cerca ;;
  280. esac
  281. }
  282. # ---------------------------------- ESCI
  283. esci(){
  284. clear
  285. echo
  286. echo " Grazie per aver usato il mio script "
  287. echo
  288. exit
  289. }
  290. # ---------------------------------- MENU
  291. menu() {
  292. clear
  293. echo -e "${PURPLE} ╔═════════════════════════════════════════╗ "
  294. echo -e "${PURPLE} ║ ╔══TRIGG.sh GENTOO TERMINAL MANAGER═══╗ ║ "
  295. echo -e "${PURPLE} ║ ║ [1] Cerca App ║ ║ "
  296. echo -e "${PURPLE} ║ ║ [2] Installa Rimuovi App ║ ║ "
  297. echo -e "${PURPLE} ║ ║ [3] Gestione Use-Flag ║ ║ "
  298. echo -e "${PURPLE} ║ ║ [4] Aggiorna Sistema ║ ║ "
  299. echo -e "${PURPLE} ║ ║ [5] Pulizia Sistema ║ ║ "
  300. echo -e "${PURPLE} ║ ║ [6] Le tue News ║ ║ "
  301. echo -e "${PURPLE} ║ ║ [0] Esci ║ ║ "
  302. echo -e "${PURPLE} ║ ║ ╚═══════════════════════════════════╝ ║ "
  303. echo -e "${PURPLE} ║ ╚═══════════════════════════════════════╝ "
  304. echo -e "${PURPLE} ╚═ Scegli la tua operazione ╗"
  305. }
  306. # ---------------------------------- OPZIONI
  307. opzioni(){
  308. local choice
  309. read -p " [0 - 6]╝ " choice
  310. case $choice in
  311. 1) cerca ;;
  312. 2) app ;;
  313. 3) uf ;;
  314. 4) as ;;
  315. 5) ps ;;
  316. 6) news ;;
  317. 0) esci ;;
  318. *) echo -e "${RED}Scelta non valida...${STD}" && sleep 2 ;;
  319. esac
  320. }
  321. ######### script0 ################
  322. while true
  323. do
  324. menu
  325. opzioni
  326. done
  327.