cos2000v2/menu.sh

93 lines
2.4 KiB
Bash
Executable File

#!/bin/bash
PWD=$(pwd)
FILE=${PWD}/README.md
if [ ! -f "$FILE" ]; then
echo "Les sources ne sont pas complets..."
echo "* Récupération des sources"
VERSION=$(git --version|grep version)
if [ "${VERSION}" == "" ]; then
echo "Git n'est pas installé, veuillez l'installer et relancer le script"
fi
git clone https://github.com/dahut87/cos2000v2.git
cd ${PWD}/cos2000v2
git checkout master
git clean -fd
git reset --hard
rm -rf ../menu.sh
fi
while true
do
clear
echo "**********************************************************"
echo "* COS2000 - menu de compilation *"
echo "**********************************************************"
echo
echo "1 Compilation des sources"
echo "2 Emulation de COS2000"
echo "3 Débuguage de COS2000 boot en mode réel (boot)"
echo "4 Débuguage de COS2000 boot en mode réel (loader)"
echo "5 Débuguage de COS2000"
echo "6 Réalisez une sauvegarde"
echo "7 Tuer tout les processus"
echo "8 Nettoyer les sources"
echo "9 Voir le disque en hexadécimal"
echo "c Changer la version de developpement"
echo "o Changer les options de développement"
echo "0 Quitter"
echo "------------------------------------------"
echo "Choisissez l'action à réaliser..."
read answer
clear
case "${answer}" in
0) exit;;
1) ./make.sh all;;
2) ./make.sh test;;
3) ./make.sh debug-boot;;
4) ./make.sh debug-loader;;
5) ./make.sh debug-system;;
6) ./make.sh backup;;
7) ./make.sh killer;;
8) ./make.sh clean;;
9) ./make.sh view|more;;
o*) ./make.sh config
./make.sh tool
;;
c*) echo "Version disponibles:"
SELECT=$(git branch|grep "*"|tr -d "* ")
NUM=1
echo "XX Hash d'une révision particulière"
while read LINE
do
echo "${NUM} ${LINE}"
(( NUM++ ))
done < <(git branch -lr|tr -d "* "|grep -v HEAD|sed s/".*origin\/"//)
read -p"?" ANSWER
COUNT=$(echo -n ${ANSWER}|wc -c)
if [ "${COUNT}" == "1" ]; then
CHOOSE=$(git branch -lr|tr -d "* "|grep -v HEAD|sed s/".*origin\/"//|tr "\n" " "|cut -d " " -f${ANSWER})
echo "vous avez selectionné une branche $CHOOSE..."
else
EXIST=$(git show ${ANSWER})
if [ "${EXIST}" != "" ]; then
CHOOSE=${ANSWER}
echo "vous avez selectionné une révision ${choose}..."
fi
fi
if [ "${CHOOSE}" != "" ]; then
echo "*** Application de la version ${CHOOSE}"
git checkout $CHOOSE
git clean -fd
git reset --hard
git pull -f
./make.sh tool
fi
read
;;
esac
done