## Script réalisé et mis à jour par Bertrand Perrier le 09/02/08
## ajout madison le 05/07/07
## ajout de "apt-cache depends" et "man" le 01/10/07
## ajout de "fichiers installés pas un paquet" le 02/01/08
 
# Ce script gére les paquets
# Il permet d'éditer la liste des dépots
# d'installer, de désinstaller, de mettre a jour les paquets et de faire bien d'autre chose

while [ 1 ]
do
	while [ "$ANSWER" != "1" ] && [ "$ANSWER" != "2" ] && [ "$ANSWER" != "3" ] && [ "$ANSWER" != "4" ] && [ "$ANSWER" != "5" ] && [ "$ANSWER" != "6" ] && [ "$ANSWER" != "7" ] && [ "$ANSWER" != "8" ] && [ "$ANSWER" != "9" ] && [ "$ANSWER" != "10" ] && [ "$ANSWER" != "11" ]
	do

		echo "\n1) editer sources.list"
		echo "2) installer un paquet"
		echo "3) mise à jour des dépots"
		echo "4) désinstaller un paquet"
		echo "5) chercher un paquet"
		echo "6) version d'un paquet"
		echo "7) propriété d'un paquet"
		echo "8) fichiers installés par un paquet"
		echo "9) les dépendances d'un paquet"
		echo "10) manuel d'un paquet"
		echo "11) quitter"
		read -p "Choix ? " ANSWER 
		echo " "
		#######################################################################################
		if [ $ANSWER = 1 ]
		   then
			sudo gedit /etc/apt/sources.list
		fi
		#######################################################################################
		if [ $ANSWER = 2 ]
		   then
			read -p "nom du paquet à installer ? " FILE_NAME 
			echo " "
			echo "installation de "$FILE_NAME
			sudo apt-get install $FILE_NAME
		fi
		#######################################################################################
		if [ $ANSWER = 3 ]
		   then
			sudo apt-get update
			sudo apt-get dist-upgrade
		fi
		#######################################################################################
		if [ $ANSWER = 4 ]
		   then
			read -p "nom du paquet à désinstaller ? " FILE_NAME
			echo "1) désinstaller sans ses dépendances"
			echo "2) désinstaller avec ses dépendances"
			read -p "Choix ? " DEPENDANCES 
			read -p "Suprimer les fichiers de configuration de "$FILE_NAME" (o/n) ? " ERASE_CONFIG
			echo " "
			echo "désinstallation de "$FILE_NAME
			if [ $DEPENDANCES = "2" ]
				then
					echo "ainsi que toute ses dépendances"
			fi
			if [ $ERASE_CONFIG = "o" ]
				then
					echo "ainsi que tous ses fichiers de configuration"
			fi
			read -p "Etes-vous sur (o/n) ? " CONFIRM
			if [ $CONFIRM = "o" ]
				then
					if [ $DEPENDANCES = "1" ]
						then
							if [ $ERASE_CONFIG = "n" ]
								then
									sudo apt-get remove $FILE_NAME
							fi
					fi
					if [ $DEPENDANCES = "1" ]
						then
							if [ $ERASE_CONFIG = "o" ]
								then
									sudo apt-get remove --purge $FILE_NAME
							fi
					fi
					if [ $DEPENDANCES = "2" ]
						then
							if [ $ERASE_CONFIG = "n" ]
								then
									sudo apt-get autoremove $FILE_NAME
							fi
					fi
					if [ $DEPENDANCES = "2" ]
						then
							if [ $ERASE_CONFIG = "o" ]
								then
									sudo apt-get autoremove --purge $FILE_NAME
							fi
					fi
					
				else
					echo " "
					echo "désinstallation annulée"
			fi
		fi
		#######################################################################################
		if [ $ANSWER = 5 ]
		   then
			echo " "
			read -p "mot clef du paquet à rechercher ? " FILE_NAME 
			echo " "
			echo "recherche de : "$FILE_NAME
			apt-cache search $FILE_NAME
			read -p "***   Fin de la recherche   ***" ANSWER
		fi
		#######################################################################################
		if [ $ANSWER = 6 ]
		   then
			echo " "
			read -p "nom du paquet ? " FILE_NAME 
			echo " "
			echo "version de : "$FILE_NAME
			apt-cache madison $FILE_NAME
			read -p "***   Fin des details   ***" ANSWER
		fi

		#######################################################################################
		if [ $ANSWER = 7 ]
		   then
			echo " "
			read -p "nom du paquet ? " FILE_NAME 
			echo " "
			echo "propriété de : "$FILE_NAME
			apt-cache show $FILE_NAME
			read -p "***   Fin des details   ***" ANSWER
		fi
		#######################################################################################
		if [ $ANSWER = 8 ]
		   then
			echo " "
			read -p "nom du paquet ? " FILE_NAME 
			echo " "
			echo "fichiers installés par : "$FILE_NAME
			dpkg -L $FILE_NAME
			read -p "***   Fin de la liste des fichiers installés   ***" ANSWER
		fi
		#######################################################################################
		if [ $ANSWER = 9 ]
		   then
			echo " "
			read -p "nom du paquet ? " FILE_NAME 
			echo " "
			echo "dépendance de : "$FILE_NAME
			apt-cache depends $FILE_NAME
			read -p "***   Fin des dépendances   ***" ANSWER

		fi
		#######################################################################################
		if [ $ANSWER = 10 ]
		   then
			echo " "
			read -p "nom du paquet ? " FILE_NAME 
			echo " "
			echo "manuel de : "$FILE_NAME
			man $FILE_NAME
			read -p "***   Fin des dépendances   ***" ANSWER

		fi
		#######################################################################################
		if [ $ANSWER = 11 ]
		   then

			echo " "
			read -p "***   Appuyer sur un touche pour quitter   ***" ANSWER
			exit 0
		fi
		#######################################################################################
	done
done
