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} 4) Layman _/ _/_/ _/_/_/_/ _/ _/ _/ _/ _/ _/ _/ ";
  61. echo -e "${PURPLE} _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ";
  62. echo -e "${LCYAN} 9) Menu ${PURPLE} _/_/_/ _/_/_/ _/ _/ _/_/ _/_/ _/_/ ";
  63. echo -e "${PURPLE} ";
  64. echo -e "${PURPLE} ";
  65. echo -e "${GREEN}"
  66. read -p " Scegli la tua operazione [1 - 2 - 3 - 4 - 9]: " var
  67. echo -e "${STD}"
  68. case $var in
  69. 1)
  70. echo -n "pacchetto da installare " ; read INSTALLA ;
  71. emerge --ask $INSTALLA
  72. echo -e "${YELLOW} E' richiesto etc-update? : premi [S] per eseguirlo o un'altro tasto per proseguire " ; read -s -n1
  73. read -s -n1
  74. if [ "$REPLY" == "s" -o "$REPLY" == "S" ]
  75. then
  76. etc-update ; emerge $INSTALLA
  77. else
  78. echo
  79. fi
  80. echo -e "${YELLOW} !!! ESEGUITO !!! "
  81. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; app ;;
  82. 2)
  83. echo "devi prima scaricare l'ebuild"
  84. echo "premi un tasto per continuare" ; read -n1
  85. cd /home/trigg/Scaricati/
  86. read -p "Indica categoria/pacchetto :>" dir
  87. mkdir -p /usr/local/portage/$dir
  88. for ebld in *.ebuild
  89. do
  90. cp $ebld /usr/local/portage/$dir
  91. mv $ebld /mnt/DATI/gentoo/'installazione gentoo'/ebuild/
  92. cd /usr/local/portage/$dir
  93. repoman manifest
  94. emerge --ask $dir
  95. echo -e "${YELLOW} E' richiesto etc-update? : premi [S] per eseguirlo o un'altro tasto per proseguire " ; read -s -n1
  96. read -s -n1
  97. if [ "$REPLY" == "s" -o "$REPLY" == "S" ]
  98. then
  99. etc-update ; emerge $dir
  100. else
  101. echo
  102. fi
  103. done
  104. echo
  105. echo -e "${YELLOW} !!! ESEGUITO !!! "
  106. echo
  107. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; app ;;
  108. 3)
  109. echo -n "Indica categoria/pacchetto da rimuovere :> " ; read ctpr
  110. emerge --depclean --ask $ctpr
  111. echo
  112. echo -e "${YELLOW} !!! ESEGUITO !!! "
  113. echo
  114. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; app ;;
  115. 4)
  116. echo -e " Vuoi Aggiungere una voce Overlays?
  117. Premi [S] per confermare , un'altro tasto per proseguire :>"
  118. read -sn 1
  119. if [ "$REPLY" = "s" -o "$REPLY" = "S" ]
  120. then
  121. read -p "aggiungi Overlay >" overlays
  122. a="layman -a $overlays"
  123. for i in "$a"
  124. do
  125. $i
  126. done
  127. echo -e "${LCYAN} Voce correttamente aggiunta"
  128. layman -S
  129. echo -e "${LCYAN} Voce correttamente aggiornata"
  130. echo -e "${STD}"
  131. read -p "Indica Categoria/Pacchetto da Installare >" install
  132. b="emerge --ask $install"
  133. for c in "$b"
  134. do
  135. $c
  136. echo -e "${YELLOW} E' richiesto etc-update? : premi [S] per eseguirlo o un'altro tasto per proseguire " ; read -s -n1
  137. read -s -n1
  138. if [ "$REPLY" == "s" -o "$REPLY" == "S" ]
  139. then
  140. etc-update ; $c
  141. else
  142. echo
  143. fi
  144. done
  145. echo
  146. echo -e "${YELLOW} !!! ESEGUITO !!! "
  147. echo -e "${STD}"
  148. echo -e " Vuoi mantenere la voce Overlays aggiunta prima?
  149. Premi [S] per confermare , un'altro tasto per proseguire :>"
  150. read -sn 1
  151. if [ "$REPLY" = "s" -o "$REPLY" = "S" ]
  152. then
  153. app
  154. else
  155. layman -d $overlays
  156. echo -e "${LCYAN} Overlays rimosso correttamente"
  157. fi
  158. else
  159. read -p "Indica Categoria/Pacchetto da Installare >" instal
  160. bb="emerge --ask $instal"
  161. for d in "$bb"
  162. do
  163. $d
  164. done
  165. fi
  166. echo
  167. echo -e "${YELLOW} !!! ESEGUITO !!! "
  168. echo
  169. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; app ;;
  170. 9) break ;;
  171. *)
  172. echo -e "${RED}Scelta non valida...${STD}" && sleep 2 ; cerca ;;
  173. esac
  174. }
  175. # ---------------------------------- USE-FLAG
  176. uf(){
  177. clear
  178. echo -e "${PURPLE} ";
  179. echo -e "${PURPLE} 1) Abilita Use-Flag _/_/_/ _/ ";
  180. echo -e "${PURPLE} 2) Disabilita Use-Flag _/ _/_/ _/_/_/ _/_/_/_/ _/_/ _/_/ ";
  181. echo -e "${PURPLE} _/ _/_/ _/_/_/_/ _/ _/ _/ _/ _/ _/ _/ ";
  182. echo -e "${LCYAN} 9) Menu ${PURPLE} _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ";
  183. echo -e "${PURPLE} _/_/_/ _/_/_/ _/ _/ _/_/ _/_/ _/_/ ";
  184. echo -e "${PURPLE} ";
  185. echo -e "${GREEN}"
  186. read -p " Scegli la tua operazione [1 - 2 - 9]: " var
  187. echo -e "${STD}"
  188. case $var in
  189. 1)
  190. echo -n "Indica Categoria/Pacchetto da ricompilare" ; read cpt
  191. echo -n "Indica Use-flag da abilitare" ; read use
  192. euse --enable $use --package $cpt ; emerge --ask --changed-use --deep @world
  193. echo -e "${YELLOW} !!! ESEGUITO !!! "
  194. echo
  195. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; uf ;;
  196. 2)
  197. echo -n "Indica Categoria/Pacchetto da ricompliare" ; read dcpt
  198. echo -n "Indica Use-flag da disabilitare" ; read duse
  199. euse --disable $duse --package $dcpt ; emerge --ask --changed-use --deep @world
  200. echo -e "${YELLOW} !!! ESEGUITO !!! "
  201. echo
  202. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; uf ;;
  203. 9) break ;;
  204. *)
  205. echo -e "${RED}Scelta non valida...${STD}" && sleep 2 ; cerca ;;
  206. esac
  207. }
  208. # ---------------------------------- AGGIORNA-SISTEMA
  209. as(){
  210. clear
  211. echo -e "${PURPLE} 1) Aggiorna Portage Tree ";
  212. echo -e "${PURPLE} 2) Aggiorna Pacchetti e Dipendenze _/_/_/ _/ ";
  213. echo -e "${PURPLE} 3) emerge --update --newuse --deep @world _/ _/_/ _/_/_/ _/_/_/_/ _/_/ _/_/ ";
  214. echo -e "${PURPLE} 4) emerge --ask --depclean _/ _/_/ _/_/_/_/ _/ _/ _/ _/ _/ _/ _/ ";
  215. echo -e "${PURPLE} 5) emerge @preserved-rebuild _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ";
  216. echo -e "${PURPLE} _/_/_/ _/_/_/ _/ _/ _/_/ _/_/ _/_/ ";
  217. echo -e "${LCYAN} 9) Menu ${PURPLE} ";
  218. echo -e "${GREEN}"
  219. read -p " Scegli la tua operazione [1 - 2 - 3 - 4 - 5 - 9]: " var
  220. echo -e "${STD}"
  221. case $var in
  222. 1)
  223. emerge --sync
  224. echo -e "${YELLOW} !!! ESEGUITO !!! "
  225. echo
  226. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; as ;;
  227. 2)
  228. echo -e " $ATTENZIONE Stai per lanciare $RED emerge --update --changed-use --deep --with-bdeps=y @world
  229. $ATTENZIONE Premi [s] per Continuare , un'altro tasto per tornare alle scelte"
  230. read -sn 1
  231. if [ "$REPLY" = "s" -o "$REPLY" = "S" ]
  232. then
  233. emerge --update --changed-use --deep --with-bdeps=y @world
  234. echo -e "${YELLOW} !!! ESEGUITO !!! "
  235. echo
  236. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; as
  237. else
  238. as
  239. fi
  240. ;;
  241. 3)
  242. echo -e " $ATTENZIONE Stai per lanciare $RED emerge --update --newuse --deep @world
  243. $ATTENZIONE Premi [s] per Continuare , un'altro tasto per tornare alle scelte"
  244. read -sn 1
  245. if [ "$REPLY" = "s" -o "$REPLY" = "S" ]
  246. then
  247. emerge --update --newuse --deep @world
  248. echo -e "${YELLOW} !!! ESEGUITO !!! "
  249. echo
  250. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; as
  251. else
  252. as
  253. fi
  254. ;;
  255. 4)
  256. echo -e " $ATTENZIONE Stai per lanciare $RED emerge --ask --depclean
  257. $ATTENZIONE Premi [s] per Continuare , un'altro tasto per tornare alle scelte"
  258. read -sn 1
  259. if [ "$REPLY" = "s" -o "$REPLY" = "S" ]
  260. then
  261. emerge --ask --depclean
  262. echo -e "${YELLOW} !!! ESEGUITO !!! "
  263. echo
  264. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; as
  265. else
  266. as
  267. fi
  268. ;;
  269. 5)
  270. echo -e " $ATTENZIONE Stai per lanciare $RED emerge @preserved-rebuild
  271. $ATTENZIONE Premi [s] per Continuare , un'altro tasto per tornare alle scelte"
  272. read -sn 1
  273. if [ "$REPLY" = "s" -o "$REPLY" = "S" ]
  274. then
  275. emerge @preserved-rebuild
  276. echo -e "${YELLOW} !!! ESEGUITO !!! "
  277. echo
  278. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; as
  279. else
  280. as
  281. fi
  282. ;;
  283. 9) break ;;
  284. *)
  285. echo -e "${RED}Scelta non valida...${STD}" && sleep 2 ; as ;;
  286. esac
  287. }
  288. # ---------------------------------- PULIZIA-SISTEMA
  289. ps(){
  290. clear
  291. echo -e "${PURPLE} 1) Pulizia /var/tmp/portage ";
  292. echo -e "${PURPLE} 2) Esegui eclean-dist _/_/_/ _/ ";
  293. echo -e "${PURPLE} _/ _/_/ _/_/_/ _/_/_/_/ _/_/ _/_/ ";
  294. echo -e "${PURPLE} _/ _/_/ _/_/_/_/ _/ _/ _/ _/ _/ _/ _/ ";
  295. echo -e "${LCYAN} 9) Menu ${PURPLE} _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ";
  296. echo -e "${PURPLE} _/_/_/ _/_/_/ _/ _/ _/_/ _/_/ _/_/ ";
  297. echo -e "${PURPLE} ";
  298. echo -e "${PURPLE} ";
  299. echo -e "${GREEN}"
  300. read -p " Scegli la tua operazione [1 - 2 - 9]:" var
  301. echo -e "${STD}"
  302. case $var in
  303. 1)
  304. echo "stai per eliminare le cartelle in /var/tmp/portage/ "
  305. echo " premi un tasto per continuare" ; read -n1
  306. /usr/bin/find /var/tmp/portage/ -mindepth 1 -maxdepth 1 -exec /bin/rm -rf {} +;
  307. echo -e "${YELLOW} !!! ESEGUITO !!! "
  308. echo
  309. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; ps ;;
  310. 2)
  311. echo "stai per eseguire eclean-dist"
  312. echo "premi un tasto per continuare" ; read -n1
  313. eclean-dist
  314. echo -e "${YELLOW} !!! ESEGUITO !!! "
  315. echo
  316. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; ps ;;
  317. 9) break ;;
  318. *)
  319. echo -e "${RED}Scelta non valida...${STD}" && sleep 2 ; ps ;;
  320. esac
  321. }
  322. # ---------------------------------- NEWS
  323. news(){
  324. clear
  325. echo -e "${PURPLE} 1) Leggi Vecchie News ";
  326. echo -e "${PURPLE} 2) Leggi Nuove News _/_/_/ _/ ";
  327. echo -e "${PURPLE} 3) Lista delle News _/ _/_/ _/_/_/ _/_/_/_/ _/_/ _/_/ ";
  328. echo -e "${PURPLE} 4) Cancella News _/ _/_/ _/_/_/_/ _/ _/ _/ _/ _/ _/ _/ ";
  329. echo -e "${PURPLE} _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ ";
  330. echo -e "${PURPLE} _/_/_/ _/_/_/ _/ _/ _/_/ _/_/ _/_/ ";
  331. echo -e "${LCYAN} 9) Menu ${PURPLE} ";
  332. echo -e "${PURPLE} ";
  333. echo -e "${GREEN}"
  334. read -p " Scegli la tua operazione [1 - 2 - 3 - 4 - 9]:" var
  335. echo -e "${STD}"
  336. case $var in
  337. 1)
  338. eselect news read
  339. echo -e "${YELLOW} !!! ESEGUITO !!! "
  340. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; news ;;
  341. 2)
  342. eselect news read new
  343. echo -e "${YELLOW} !!! ESEGUITO !!! "
  344. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; news ;;
  345. 3)
  346. eselect news list
  347. echo -e "${YELLOW} !!! ESEGUITO !!! "
  348. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; news ;;
  349. 4)
  350. eselect news purge
  351. echo -e "${YELLOW} !!! ESEGUITO !!! "
  352. echo -e "${LCYAN} premi un tasto per continuare" ; read -n1 ; news ;;
  353. 9) break ;;
  354. *)
  355. echo -e "${RED}Scelta non valida...${STD}" && sleep 2 ; cerca ;;
  356. esac
  357. }
  358. # ---------------------------------- ESCI
  359. esci(){
  360. clear
  361. echo
  362. echo " Grazie per aver usato il mio script "
  363. echo
  364. exit
  365. }
  366. # ---------------------------------- MENU
  367. menu() {
  368. clear
  369. echo -e "${PURPLE} ╔═════════════════════════════════════════╗ "
  370. echo -e "${PURPLE} ║ ╔══TRIGG.sh GENTOO TERMINAL MANAGER═══╗ ║ "
  371. echo -e "${PURPLE} ║ ║ [1] Cerca App ║ ║ "
  372. echo -e "${PURPLE} ║ ║ [2] Installa Rimuovi App ║ ║ "
  373. echo -e "${PURPLE} ║ ║ [3] Gestione Use-Flag ║ ║ "
  374. echo -e "${PURPLE} ║ ║ [4] Aggiorna Sistema ║ ║ "
  375. echo -e "${PURPLE} ║ ║ [5] Pulizia Sistema ║ ║ "
  376. echo -e "${PURPLE} ║ ║ [6] Le tue News ║ ║ "
  377. echo -e "${PURPLE} ║ ║ [0] Esci ║ ║ "
  378. echo -e "${PURPLE} ║ ║ ╚═══════════════════════════════════╝ ║ "
  379. echo -e "${PURPLE} ║ ╚═══════════════════════════════════════╝ "
  380. echo -e "${PURPLE} ╚═ Scegli la tua operazione ╗"
  381. }
  382. # ---------------------------------- OPZIONI
  383. opzioni(){
  384. local choice
  385. read -p " [0 - 6]╝ " choice
  386. case $choice in
  387. 1) cerca ;;
  388. 2) app ;;
  389. 3) uf ;;
  390. 4) as ;;
  391. 5) ps ;;
  392. 6) news ;;
  393. 0) esci ;;
  394. *) echo -e "${RED}Scelta non valida...${STD}" && sleep 2 ;;
  395. esac
  396. }
  397. ######### script0 ################
  398. while true
  399. do
  400. menu
  401. opzioni
  402. done
  403.